Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

reset: eyeq: Add Mobileye EyeQ6Lplus OLB

Declare the two reset domains found in the EyeQ6Lplus OLB and add
them to the data matched by 'mobileye,eyeq6lplus-olb' compatible.

Those reset domains are identical to those present in the EyeQ5
OLB, so no changes are needed to support them.

Also select reset-eyeq for all EYEQ SoCs instead of listing each one
individually, as it is needed by all Mobileye EyeQ SoC.

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Benoît Monin <benoit.monin@bootlin.com>
Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>

authored by

Benoît Monin and committed by
Thomas Bogendoerfer
36cab4bd 2aca86de

+33 -2
+2 -2
drivers/reset/Kconfig
··· 85 85 86 86 config RESET_EYEQ 87 87 bool "Mobileye EyeQ reset controller" 88 - depends on MACH_EYEQ5 || MACH_EYEQ6H || COMPILE_TEST 88 + depends on EYEQ || COMPILE_TEST 89 89 select AUXILIARY_BUS 90 - default MACH_EYEQ5 || MACH_EYEQ6H 90 + default EYEQ 91 91 help 92 92 This enables the Mobileye EyeQ reset controller, used in EyeQ5, EyeQ6L 93 93 and EyeQ6H SoCs.
+31
drivers/reset/reset-eyeq.c
··· 49 49 * 8. MPC0 9. MPC1 10. MPC2 11. MPC3 50 50 * 12. MPC4 51 51 * 52 + * Known resets in EyeQ6Lplus domain 0 (type EQR_EYEQ5_PCIE): 53 + * 0. SPI0 1. SPI1 2. UART0 3. I2C0 54 + * 4. I2C1 5. TIMER0 6. TIMER1 7. TIMER2 55 + * 8. TIMER3 9. WD0 10. WD1 11. EXT0 56 + * 12. EXT1 13. GPIO 57 + * 58 + * Known resets in EyeQ6Lplus domain 1 (type EQR_EYEQ5_ACRP): 59 + * 0. VMP0 1. VMP1 2. VMP2 3. VMP3 60 + * 4. PMA0 5. PMA1 6. PMAC0 7. PMAC1 61 + * 8. MPC0 9. MPC1 10. MPC2 11. MPC3 62 + * 12. MPC4 63 + * 52 64 * Known resets in EyeQ6H west/east (type EQR_EYEQ6H_SARCR): 53 65 * 0. CAN 1. SPI0 2. SPI1 3. UART0 54 66 * 4. UART1 5. I2C0 6. I2C1 7. -hole- ··· 533 521 .domains = eqr_eyeq6l_domains, 534 522 }; 535 523 524 + static const struct eqr_domain_descriptor eqr_eyeq6lplus_domains[] = { 525 + { 526 + .type = EQR_EYEQ5_PCIE, 527 + .valid_mask = 0x3FFF, 528 + .offset = 0x004, 529 + }, 530 + { 531 + .type = EQR_EYEQ5_ACRP, 532 + .valid_mask = 0x00FF, 533 + .offset = 0x200, 534 + }, 535 + }; 536 + 537 + static const struct eqr_match_data eqr_eyeq6lplus_data = { 538 + .domain_count = ARRAY_SIZE(eqr_eyeq6lplus_domains), 539 + .domains = eqr_eyeq6lplus_domains, 540 + }; 541 + 536 542 /* West and east OLBs each have an instance. */ 537 543 static const struct eqr_domain_descriptor eqr_eyeq6h_we_domains[] = { 538 544 { ··· 585 555 static const struct of_device_id eqr_match_table[] = { 586 556 { .compatible = "mobileye,eyeq5-olb", .data = &eqr_eyeq5_data }, 587 557 { .compatible = "mobileye,eyeq6l-olb", .data = &eqr_eyeq6l_data }, 558 + { .compatible = "mobileye,eyeq6lplus-olb", .data = &eqr_eyeq6lplus_data }, 588 559 { .compatible = "mobileye,eyeq6h-west-olb", .data = &eqr_eyeq6h_we_data }, 589 560 { .compatible = "mobileye,eyeq6h-east-olb", .data = &eqr_eyeq6h_we_data }, 590 561 { .compatible = "mobileye,eyeq6h-acc-olb", .data = &eqr_eyeq6h_acc_data },