1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 221278aeaSRob Herringmenuconfig ARCH_MXC 3e3246542SMasahiro Yamada bool "Freescale i.MX family" 46fd09c9aSArnd Bergmann depends on ((ARCH_MULTI_V4T || ARCH_MULTI_V5) && CPU_LITTLE_ENDIAN) || \ 55d6f5267SArnd Bergmann ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M 6bea5af41SShawn Guo select CLKSRC_IMX_GPT 7c5a0d497SShawn Guo select GENERIC_IRQ_CHIP 85c34a4e8SLinus Walleij select GPIOLIB 9*b77bd3baSFabio Estevam select PINCTRL 105a1513f6SJohn Tobias select PM_OPP if PM 11a2887546SShawn Guo select SOC_BUS 1267f5b308SFabio Estevam select SRAM 13c5a0d497SShawn Guo help 14c5a0d497SShawn Guo Support for Freescale MXC/iMX-based family of processors 15c5a0d497SShawn Guo 1621278aeaSRob Herringif ARCH_MXC 173995eb82SShawn Guo 183995eb82SShawn Guoconfig MXC_TZIC 193995eb82SShawn Guo bool 203995eb82SShawn Guo 213995eb82SShawn Guoconfig MXC_AVIC 223995eb82SShawn Guo bool 233995eb82SShawn Guo 24e95dddb3SAnson Huangconfig HAVE_IMX_ANATOP 25e95dddb3SAnson Huang bool 26e95dddb3SAnson Huang 279fbbe689SShawn Guoconfig HAVE_IMX_GPC 289fbbe689SShawn Guo bool 2900eb60a8SPhilipp Zabel select PM_GENERIC_DOMAINS if PM 309fbbe689SShawn Guo 319fbbe689SShawn Guoconfig HAVE_IMX_MMDC 329fbbe689SShawn Guo bool 339fbbe689SShawn Guo 349fbbe689SShawn Guoconfig HAVE_IMX_SRC 3568b25325SShawn Guo def_bool y if SMP 3602985b94SPhilipp Zabel select ARCH_HAS_RESET_CONTROLLER 379fbbe689SShawn Guo 38c5a0d497SShawn Guoif ARCH_MULTI_V6 3927ad4bf7SUwe Kleine-König 40e1324eceSFabio Estevamcomment "ARM1136 platforms" 41e1324eceSFabio Estevam 42c93197b0SFabio Estevamconfig SOC_IMX31 43c93197b0SFabio Estevam bool "i.MX31 support" 44c93197b0SFabio Estevam select CPU_V6 45c93197b0SFabio Estevam select MXC_AVIC 4627ad4bf7SUwe Kleine-König help 47c93197b0SFabio Estevam This enables support for Freescale i.MX31 processor 48d2a37b3dSDenis 'GNUtoo' Carikli 49e1324eceSFabio Estevamconfig SOC_IMX35 50e1324eceSFabio Estevam bool "i.MX35 support" 51e1324eceSFabio Estevam select MXC_AVIC 52a55a3d72SSteffen Trumtrar help 53f21a4688SNobuhiro Iwamatsu This enables support for Freescale i.MX35 processor 5427ad4bf7SUwe Kleine-König 55c5a0d497SShawn Guoendif 56c5a0d497SShawn Guo 579a008da2SAlexander Shiyanif ARCH_MULTI_V4T 589a008da2SAlexander Shiyan 599a008da2SAlexander Shiyanconfig SOC_IMX1 609a008da2SAlexander Shiyan bool "i.MX1 support" 619a008da2SAlexander Shiyan select CPU_ARM920T 629a008da2SAlexander Shiyan select MXC_AVIC 639a008da2SAlexander Shiyan help 649a008da2SAlexander Shiyan This enables support for Freescale i.MX1 processor 659a008da2SAlexander Shiyan 669a008da2SAlexander Shiyanendif 679a008da2SAlexander Shiyan 688064887eSStefan Agnerif ARCH_MULTI_V5 698064887eSStefan Agner 7011b05d60SFabio Estevamconfig SOC_IMX25 7111b05d60SFabio Estevam bool "i.MX25 support" 7211b05d60SFabio Estevam select CPU_ARM926T 7311b05d60SFabio Estevam select MXC_AVIC 7411b05d60SFabio Estevam help 7511b05d60SFabio Estevam This enables support for Freescale i.MX25 processor 76879c0e5eSFabio Estevam 77879c0e5eSFabio Estevamconfig SOC_IMX27 78879c0e5eSFabio Estevam bool "i.MX27 support" 79879c0e5eSFabio Estevam select CPU_ARM926T 80879c0e5eSFabio Estevam select MXC_AVIC 81879c0e5eSFabio Estevam help 82879c0e5eSFabio Estevam This enables support for Freescale i.MX27 processor 83879c0e5eSFabio Estevam 8411b05d60SFabio Estevamendif 8511b05d60SFabio Estevam 86c5a0d497SShawn Guoif ARCH_MULTI_V7 87c5a0d497SShawn Guo 888064887eSStefan Agnercomment "Cortex-A platforms" 89784a90c0SSascha Hauer 9050e177caSShawn Guoconfig SOC_IMX5 9150e177caSShawn Guo bool 9250e177caSShawn Guo select HAVE_IMX_SRC 9350e177caSShawn Guo select MXC_TZIC 9450e177caSShawn Guo 95361b0a41SGreg Ungererconfig SOC_IMX50 96361b0a41SGreg Ungerer bool "i.MX50 support" 97361b0a41SGreg Ungerer select SOC_IMX5 98361b0a41SGreg Ungerer 99361b0a41SGreg Ungerer help 100361b0a41SGreg Ungerer This enables support for Freescale i.MX50 processor. 101361b0a41SGreg Ungerer 1021ecdde9dSShawn Guoconfig SOC_IMX51 1038da4d6b2SFabio Estevam bool "i.MX51 support" 1041ecdde9dSShawn Guo select SOC_IMX5 1058da4d6b2SFabio Estevam help 1068da4d6b2SFabio Estevam This enables support for Freescale i.MX51 processor 1078da4d6b2SFabio Estevam 108442279daSShawn Guoconfig SOC_IMX53 109442279daSShawn Guo bool "i.MX53 support" 110b1b3f49cSRussell King select SOC_IMX5 111442279daSShawn Guo 112784a90c0SSascha Hauer help 113442279daSShawn Guo This enables support for Freescale i.MX53 processor. 114bac89d75SShawn Guo 11594f890ecSShawn Guoconfig SOC_IMX6 11694f890ecSShawn Guo bool 117da395584SArnd Bergmann select ARM_CPU_SUSPEND if (PM || CPU_IDLE) 118bac89d75SShawn Guo select ARM_GIC 119e95dddb3SAnson Huang select HAVE_IMX_ANATOP 1209fbbe689SShawn Guo select HAVE_IMX_GPC 1219fbbe689SShawn Guo select HAVE_IMX_MMDC 122aec99b7bSShawn Guo select HAVE_IMX_SRC 123baa64151SDong Aisheng select MFD_SYSCON 124a641f3a6SRussell King select PL310_ERRATA_769419 if CACHE_L2X0 125bac89d75SShawn Guo 12694f890ecSShawn Guoconfig SOC_IMX6Q 12794f890ecSShawn Guo bool "i.MX6 Quad/DualLite support" 12894f890ecSShawn Guo select ARM_ERRATA_764369 if SMP 129edc2569bSStefan Agner select ARM_ERRATA_754322 130edc2569bSStefan Agner select ARM_ERRATA_775420 13194f890ecSShawn Guo select HAVE_ARM_SCU if SMP 132acc98009SSebastian Andrzej Siewior select HAVE_ARM_TWD 13394f890ecSShawn Guo select SOC_IMX6 13494f890ecSShawn Guo 135bac89d75SShawn Guo help 136bac89d75SShawn Guo This enables support for Freescale i.MX6 Quad processor. 137bac89d75SShawn Guo 13831a2fbf7SShawn Guoconfig SOC_IMX6SL 13931a2fbf7SShawn Guo bool "i.MX6 SoloLite support" 140edc2569bSStefan Agner select ARM_ERRATA_754322 141edc2569bSStefan Agner select ARM_ERRATA_775420 14294f890ecSShawn Guo select SOC_IMX6 14331a2fbf7SShawn Guo 14431a2fbf7SShawn Guo help 14531a2fbf7SShawn Guo This enables support for Freescale i.MX6 SoloLite processor. 14631a2fbf7SShawn Guo 147dee5dee2SBai Pingconfig SOC_IMX6SLL 148dee5dee2SBai Ping bool "i.MX6 SoloLiteLite support" 149edc2569bSStefan Agner select ARM_ERRATA_754322 150edc2569bSStefan Agner select ARM_ERRATA_775420 151dee5dee2SBai Ping select SOC_IMX6 152dee5dee2SBai Ping 153dee5dee2SBai Ping help 154dee5dee2SBai Ping This enables support for Freescale i.MX6 SoloLiteLite processor. 155dee5dee2SBai Ping 156d9654dceSShawn Guoconfig SOC_IMX6SX 157d9654dceSShawn Guo bool "i.MX6 SoloX support" 158edc2569bSStefan Agner select ARM_ERRATA_754322 159edc2569bSStefan Agner select ARM_ERRATA_775420 160d9654dceSShawn Guo select SOC_IMX6 161d9654dceSShawn Guo 162d9654dceSShawn Guo help 163d9654dceSShawn Guo This enables support for Freescale i.MX6 SoloX processor. 164d9654dceSShawn Guo 165022d0716SFrank Liconfig SOC_IMX6UL 166022d0716SFrank Li bool "i.MX6 UltraLite support" 167022d0716SFrank Li select SOC_IMX6 1684562fa4cSAnson Huang select ARM_ERRATA_814220 169022d0716SFrank Li 170022d0716SFrank Li help 171022d0716SFrank Li This enables support for Freescale i.MX6 UltraLite processor. 172022d0716SFrank Li 1738064887eSStefan Agnerconfig SOC_LS1021A 1748064887eSStefan Agner bool "Freescale LS1021A support" 1758064887eSStefan Agner select ARM_GIC 1768064887eSStefan Agner select HAVE_ARM_ARCH_TIMER 1778064887eSStefan Agner select ZONE_DMA if ARM_LPAE 1788064887eSStefan Agner help 1798064887eSStefan Agner This enables support for Freescale LS1021A processor. 1808064887eSStefan Agner 1818064887eSStefan Agnerendif 1828064887eSStefan Agner 1838064887eSStefan Agnerif ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M 1848064887eSStefan Agner 1850c11bbcfSFabio Estevamcomment "Cortex-A/Cortex-M asymmetric multiprocessing platforms" 1860c11bbcfSFabio Estevam 1871a1f919eSOleksij Rempelconfig SOC_IMX7D_CA7 1881a1f919eSOleksij Rempel bool 1891a1f919eSOleksij Rempel select ARM_GIC 1901a1f919eSOleksij Rempel select HAVE_ARM_ARCH_TIMER 1911a1f919eSOleksij Rempel select HAVE_IMX_ANATOP 1921a1f919eSOleksij Rempel select HAVE_IMX_MMDC 1931a1f919eSOleksij Rempel select HAVE_IMX_SRC 1941a1f919eSOleksij Rempel select IMX_GPCV2 1951a1f919eSOleksij Rempel 1961a1f919eSOleksij Rempelconfig SOC_IMX7D_CM4 1971a1f919eSOleksij Rempel bool 1981a1f919eSOleksij Rempel select ARMV7M_SYSTICK 1991a1f919eSOleksij Rempel 2001a1f919eSOleksij Rempelconfig SOC_IMX7D 2011a1f919eSOleksij Rempel bool "i.MX7 Dual support" 2021a1f919eSOleksij Rempel select SOC_IMX7D_CA7 if ARCH_MULTI_V7 2031a1f919eSOleksij Rempel select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M 204c74067a0SArnd Bergmann select ARM_ERRATA_814220 if ARCH_MULTI_V7 2051a1f919eSOleksij Rempel help 2061a1f919eSOleksij Rempel This enables support for Freescale i.MX7 Dual processor. 2071a1f919eSOleksij Rempel 208de70d0e9SA.s. Dongconfig SOC_IMX7ULP 209de70d0e9SA.s. Dong bool "i.MX7ULP support" 210de70d0e9SA.s. Dong select CLKSRC_IMX_TPM 211167e6370SArnd Bergmann select SOC_IMX7D_CA7 if ARCH_MULTI_V7 212167e6370SArnd Bergmann select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M 213de70d0e9SA.s. Dong help 214de70d0e9SA.s. Dong This enables support for Freescale i.MX7 Ultra Low Power processor. 215de70d0e9SA.s. Dong 216ed2e8e0aSGiulio Benetticonfig SOC_IMXRT 217ed2e8e0aSGiulio Benetti bool "i.MXRT support" 218ed2e8e0aSGiulio Benetti depends on ARM_SINGLE_ARMV7M 219ed2e8e0aSGiulio Benetti select ARMV7M_SYSTICK if ARM_SINGLE_ARMV7M 220ed2e8e0aSGiulio Benetti help 221ed2e8e0aSGiulio Benetti This enables support for Freescale i.MXRT Crossover processor. 222ed2e8e0aSGiulio Benetti 2235be913c6SJingchang Luconfig SOC_VF610 2245be913c6SJingchang Lu bool "Vybrid Family VF610 support" 2258064887eSStefan Agner select ARM_GIC if ARCH_MULTI_V7 2265be913c6SJingchang Lu 2275be913c6SJingchang Lu help 228c6891ef8SFabio Estevam This enables support for Freescale Vybrid VF610 processor. 2295be913c6SJingchang Lu 2302a61cba7SStefan Agnerchoice 2312a61cba7SStefan Agner prompt "Clocksource for scheduler clock" 2322a61cba7SStefan Agner depends on SOC_VF610 2332a61cba7SStefan Agner default VF_USE_ARM_GLOBAL_TIMER 2342a61cba7SStefan Agner 2352a61cba7SStefan Agner config VF_USE_ARM_GLOBAL_TIMER 236e3246542SMasahiro Yamada bool "Use ARM Global Timer" 237e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 2382a61cba7SStefan Agner select ARM_GLOBAL_TIMER 2392a61cba7SStefan Agner select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK 2402a61cba7SStefan Agner help 2412a61cba7SStefan Agner Use the ARM Global Timer as clocksource 2422a61cba7SStefan Agner 2432a61cba7SStefan Agner config VF_USE_PIT_TIMER 2442a61cba7SStefan Agner bool "Use PIT timer" 2452a61cba7SStefan Agner select VF_PIT_TIMER 2462a61cba7SStefan Agner help 2472a61cba7SStefan Agner Use SoC Periodic Interrupt Timer (PIT) as clocksource 2482a61cba7SStefan Agner 2492a61cba7SStefan Agnerendchoice 2502a61cba7SStefan Agner 25127ad4bf7SUwe Kleine-Königendif 252e0557c0dSShawn Guo 25321278aeaSRob Herringendif 254