mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 07:51:31 -04:00
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>
This commit is contained in:
committed by
Thomas Bogendoerfer
parent
2aca86de97
commit
36cab4bd8b
@@ -85,9 +85,9 @@ config RESET_EIC7700
|
||||
|
||||
config RESET_EYEQ
|
||||
bool "Mobileye EyeQ reset controller"
|
||||
depends on MACH_EYEQ5 || MACH_EYEQ6H || COMPILE_TEST
|
||||
depends on EYEQ || COMPILE_TEST
|
||||
select AUXILIARY_BUS
|
||||
default MACH_EYEQ5 || MACH_EYEQ6H
|
||||
default EYEQ
|
||||
help
|
||||
This enables the Mobileye EyeQ reset controller, used in EyeQ5, EyeQ6L
|
||||
and EyeQ6H SoCs.
|
||||
|
||||
@@ -49,6 +49,18 @@
|
||||
* 8. MPC0 9. MPC1 10. MPC2 11. MPC3
|
||||
* 12. MPC4
|
||||
*
|
||||
* Known resets in EyeQ6Lplus domain 0 (type EQR_EYEQ5_PCIE):
|
||||
* 0. SPI0 1. SPI1 2. UART0 3. I2C0
|
||||
* 4. I2C1 5. TIMER0 6. TIMER1 7. TIMER2
|
||||
* 8. TIMER3 9. WD0 10. WD1 11. EXT0
|
||||
* 12. EXT1 13. GPIO
|
||||
*
|
||||
* Known resets in EyeQ6Lplus domain 1 (type EQR_EYEQ5_ACRP):
|
||||
* 0. VMP0 1. VMP1 2. VMP2 3. VMP3
|
||||
* 4. PMA0 5. PMA1 6. PMAC0 7. PMAC1
|
||||
* 8. MPC0 9. MPC1 10. MPC2 11. MPC3
|
||||
* 12. MPC4
|
||||
*
|
||||
* Known resets in EyeQ6H west/east (type EQR_EYEQ6H_SARCR):
|
||||
* 0. CAN 1. SPI0 2. SPI1 3. UART0
|
||||
* 4. UART1 5. I2C0 6. I2C1 7. -hole-
|
||||
@@ -521,6 +533,24 @@ static const struct eqr_match_data eqr_eyeq6l_data = {
|
||||
.domains = eqr_eyeq6l_domains,
|
||||
};
|
||||
|
||||
static const struct eqr_domain_descriptor eqr_eyeq6lplus_domains[] = {
|
||||
{
|
||||
.type = EQR_EYEQ5_PCIE,
|
||||
.valid_mask = 0x3FFF,
|
||||
.offset = 0x004,
|
||||
},
|
||||
{
|
||||
.type = EQR_EYEQ5_ACRP,
|
||||
.valid_mask = 0x00FF,
|
||||
.offset = 0x200,
|
||||
},
|
||||
};
|
||||
|
||||
static const struct eqr_match_data eqr_eyeq6lplus_data = {
|
||||
.domain_count = ARRAY_SIZE(eqr_eyeq6lplus_domains),
|
||||
.domains = eqr_eyeq6lplus_domains,
|
||||
};
|
||||
|
||||
/* West and east OLBs each have an instance. */
|
||||
static const struct eqr_domain_descriptor eqr_eyeq6h_we_domains[] = {
|
||||
{
|
||||
@@ -555,6 +585,7 @@ static const struct eqr_match_data eqr_eyeq6h_acc_data = {
|
||||
static const struct of_device_id eqr_match_table[] = {
|
||||
{ .compatible = "mobileye,eyeq5-olb", .data = &eqr_eyeq5_data },
|
||||
{ .compatible = "mobileye,eyeq6l-olb", .data = &eqr_eyeq6l_data },
|
||||
{ .compatible = "mobileye,eyeq6lplus-olb", .data = &eqr_eyeq6lplus_data },
|
||||
{ .compatible = "mobileye,eyeq6h-west-olb", .data = &eqr_eyeq6h_we_data },
|
||||
{ .compatible = "mobileye,eyeq6h-east-olb", .data = &eqr_eyeq6h_we_data },
|
||||
{ .compatible = "mobileye,eyeq6h-acc-olb", .data = &eqr_eyeq6h_acc_data },
|
||||
|
||||
Reference in New Issue
Block a user