From d033825f034467fa9c9aeff6fcf95a146c802cf1 Mon Sep 17 00:00:00 2001 From: Ye Li Date: Tue, 13 Dec 2016 15:31:05 +0800 Subject: MLK-13602-1 mx6: Add i.MX6ULL fused modules checking support Add the modules disable fuses mapping with FDT nodes and devices name. Signed-off-by: Ye Li Tested-by: Bai Ping --- arch/arm/cpu/armv7/mx6/module_fuse.c | 41 ++++++++++++++++++++++++++++- arch/arm/include/asm/arch-mx6/module_fuse.h | 4 +++ 2 files changed, 44 insertions(+), 1 deletion(-) diff --git a/arch/arm/cpu/armv7/mx6/module_fuse.c b/arch/arm/cpu/armv7/mx6/module_fuse.c index 38ca13d..ac7b0d6 100644 --- a/arch/arm/cpu/armv7/mx6/module_fuse.c +++ b/arch/arm/cpu/armv7/mx6/module_fuse.c @@ -21,7 +21,46 @@ struct fuse_entry_desc { }; static struct fuse_entry_desc mx6_fuse_descs[] = { -#ifdef CONFIG_MX6UL +#if defined(CONFIG_MX6ULL) + {MX6_MODULE_TSC, "/soc/aips-bus@02000000/tsc@02040000", 0x430, 22}, + {MX6_MODULE_ADC2, "/soc/aips-bus@02100000/adc@0219c000", 0x430, 23}, + {MX6_MODULE_EPDC, "/soc/aips-bus@02200000/epdc@0228c000", 0x430, 24}, + {MX6_MODULE_ESAI, "/soc/aips-bus@02000000/spba-bus@02000000/esai@02024000", 0x430, 25}, + {MX6_MODULE_FLEXCAN1, "/soc/aips-bus@02000000/can@02090000", 0x430, 26}, + {MX6_MODULE_FLEXCAN2, "/soc/aips-bus@02000000/can@02094000", 0x430, 27}, + {MX6_MODULE_SPDIF, "/soc/aips-bus@02000000/spba-bus@02000000/spdif@02004000", 0x440, 2}, + {MX6_MODULE_EIM, "/soc/aips-bus@02100000/weim@021b8000", 0x440, 3}, + {MX6_MODULE_SD1, "/soc/aips-bus@02100000/usdhc@02190000", 0x440, 4}, + {MX6_MODULE_SD2, "/soc/aips-bus@02100000/usdhc@02194000", 0x440, 5}, + {MX6_MODULE_QSPI1, "/soc/aips-bus@02100000/qspi@021e0000", 0x440, 6}, + {MX6_MODULE_GPMI, "/soc/gpmi-nand@01806000", 0x440, 7}, + {MX6_MODULE_APBHDMA, "/soc/dma-apbh@01804000", 0x440, 7}, + {MX6_MODULE_LCDIF, "/soc/aips-bus@02100000/lcdif@021c8000", 0x440, 8}, + {MX6_MODULE_PXP, "/soc/aips-bus@02100000/pxp@021cc000", 0x440, 9}, + {MX6_MODULE_CSI, "/soc/aips-bus@02100000/csi@021c4000", 0x440, 10}, + {MX6_MODULE_ADC1, "/soc/aips-bus@02100000/adc@02198000", 0x440, 11}, + {MX6_MODULE_ENET1, "/soc/aips-bus@02100000/ethernet@02188000", 0x440, 12}, + {MX6_MODULE_ENET2, "/soc/aips-bus@02000000/ethernet@020b4000", 0x440, 13}, + {MX6_MODULE_DCP, "/soc/aips-bus@02200000/dcp@02280000", 0x440, 14}, + {MX6_MODULE_USB_OTG2, "/soc/aips-bus@02100000/usb@02184200", 0x440, 15}, + {MX6_MODULE_SAI2, "/soc/aips-bus@02000000/spba-bus@02000000/sai@0202c000", 0x440, 24}, + {MX6_MODULE_SAI3, "/soc/aips-bus@02000000/spba-bus@02000000/sai@02030000", 0x440, 24}, + {MX6_MODULE_DCP_CRYPTO, "/soc/aips-bus@02200000/dcp@02280000", 0x440, 25}, + {MX6_MODULE_UART5, "/soc/aips-bus@02100000/serial@021f4000", 0x440, 26}, + {MX6_MODULE_UART6, "/soc/aips-bus@02100000/serial@021fc000", 0x440, 26}, + {MX6_MODULE_UART7, "/soc/aips-bus@02000000/spba-bus@02000000/serial@02018000", 0x440, 26}, + {MX6_MODULE_UART8, "/soc/aaips-bus@02200000/serial@02288000", 0x440, 26}, + {MX6_MODULE_PWM5, "/soc/aips-bus@02000000/pwm@020f0000", 0x440, 27}, + {MX6_MODULE_PWM6, "/soc/aips-bus@02000000/pwm@020f4000", 0x440, 27}, + {MX6_MODULE_PWM7, "/soc/aips-bus@02000000/pwm@020f8000", 0x440, 27}, + {MX6_MODULE_PWM8, "/soc/aips-bus@02000000/pwm@020fc000", 0x440, 27}, + {MX6_MODULE_ECSPI3, "/soc/aips-bus@02000000/spba-bus@02000000/ecspi@02010000", 0x440, 28}, + {MX6_MODULE_ECSPI4, "/soc/aips-bus@02000000/spba-bus@02000000/ecspi@02014000", 0x440, 28}, + {MX6_MODULE_I2C3, "/soc/aips-bus@02100000/i2c@021a8000", 0x440, 29}, + {MX6_MODULE_I2C4, "/soc/aips-bus@02100000/i2c@021f8000", 0x440, 29}, + {MX6_MODULE_GPT2, "/soc/aips-bus@02000000/gpt@020e8000", 0x440, 30}, + {MX6_MODULE_EPIT2, "/soc/aips-bus@02000000/epit@020d4000", 0x440, 31}, +#elif defined(CONFIG_MX6UL) {MX6_MODULE_TSC, "/soc/aips-bus@02000000/tsc@02040000", 0x430, 22}, {MX6_MODULE_ADC2, "/soc/aips-bus@02100000/adc@0219c000", 0x430, 23}, {MX6_MODULE_SIM1, "/soc/aips-bus@02100000/sim@0218c000", 0x430, 24}, diff --git a/arch/arm/include/asm/arch-mx6/module_fuse.h b/arch/arm/include/asm/arch-mx6/module_fuse.h index 7208243..4745091 100644 --- a/arch/arm/include/asm/arch-mx6/module_fuse.h +++ b/arch/arm/include/asm/arch-mx6/module_fuse.h @@ -63,6 +63,10 @@ enum fuse_module_type{ MX6_MODULE_GPT2, MX6_MODULE_EPIT1, MX6_MODULE_EPIT2, + MX6_MODULE_EPDC, + MX6_MODULE_ESAI, + MX6_MODULE_DCP, + MX6_MODULE_DCP_CRYPTO, }; #if !defined(CONFIG_MODULE_FUSE) -- cgit v1.1