1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 221278aeaSRob Herringmenuconfig ARCH_MXC 3e3246542SMasahiro Yamada bool "Freescale i.MX family" 4*6fd09c9aSArnd 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 95a1513f6SJohn Tobias select PM_OPP if PM 10a2887546SShawn Guo select SOC_BUS 1167f5b308SFabio Estevam select SRAM 12c5a0d497SShawn Guo help 13c5a0d497SShawn Guo Support for Freescale MXC/iMX-based family of processors 14c5a0d497SShawn Guo 1521278aeaSRob Herringif ARCH_MXC 163995eb82SShawn Guo 173995eb82SShawn Guoconfig MXC_TZIC 183995eb82SShawn Guo bool 193995eb82SShawn Guo 203995eb82SShawn Guoconfig MXC_AVIC 213995eb82SShawn Guo bool 223995eb82SShawn Guo 23e95dddb3SAnson Huangconfig HAVE_IMX_ANATOP 24e95dddb3SAnson Huang bool 25e95dddb3SAnson Huang 269fbbe689SShawn Guoconfig HAVE_IMX_GPC 279fbbe689SShawn Guo bool 2800eb60a8SPhilipp Zabel select PM_GENERIC_DOMAINS if PM 299fbbe689SShawn Guo 309fbbe689SShawn Guoconfig HAVE_IMX_MMDC 319fbbe689SShawn Guo bool 329fbbe689SShawn Guo 339fbbe689SShawn Guoconfig HAVE_IMX_SRC 3468b25325SShawn Guo def_bool y if SMP 3502985b94SPhilipp Zabel select ARCH_HAS_RESET_CONTROLLER 369fbbe689SShawn Guo 37c5a0d497SShawn Guoif ARCH_MULTI_V6 3827ad4bf7SUwe Kleine-König 39e1324eceSFabio Estevamcomment "ARM1136 platforms" 40e1324eceSFabio Estevam 41c93197b0SFabio Estevamconfig SOC_IMX31 42c93197b0SFabio Estevam bool "i.MX31 support" 43c93197b0SFabio Estevam select CPU_V6 44c93197b0SFabio Estevam select MXC_AVIC 4527ad4bf7SUwe Kleine-König help 46c93197b0SFabio Estevam This enables support for Freescale i.MX31 processor 47d2a37b3dSDenis 'GNUtoo' Carikli 48e1324eceSFabio Estevamconfig SOC_IMX35 49e1324eceSFabio Estevam bool "i.MX35 support" 50e1324eceSFabio Estevam select MXC_AVIC 51a55a3d72SSteffen Trumtrar help 52f21a4688SNobuhiro Iwamatsu This enables support for Freescale i.MX35 processor 5327ad4bf7SUwe Kleine-König 54c5a0d497SShawn Guoendif 55c5a0d497SShawn Guo 569a008da2SAlexander Shiyanif ARCH_MULTI_V4T 579a008da2SAlexander Shiyan 589a008da2SAlexander Shiyanconfig SOC_IMX1 599a008da2SAlexander Shiyan bool "i.MX1 support" 609a008da2SAlexander Shiyan select CPU_ARM920T 619a008da2SAlexander Shiyan select MXC_AVIC 629a008da2SAlexander Shiyan help 639a008da2SAlexander Shiyan This enables support for Freescale i.MX1 processor 649a008da2SAlexander Shiyan 659a008da2SAlexander Shiyanendif 669a008da2SAlexander Shiyan 678064887eSStefan Agnerif ARCH_MULTI_V5 688064887eSStefan Agner 6911b05d60SFabio Estevamconfig SOC_IMX25 7011b05d60SFabio Estevam bool "i.MX25 support" 7111b05d60SFabio Estevam select CPU_ARM926T 7211b05d60SFabio Estevam select MXC_AVIC 7311b05d60SFabio Estevam help 7411b05d60SFabio Estevam This enables support for Freescale i.MX25 processor 75879c0e5eSFabio Estevam 76879c0e5eSFabio Estevamconfig SOC_IMX27 77879c0e5eSFabio Estevam bool "i.MX27 support" 78879c0e5eSFabio Estevam select CPU_ARM926T 79879c0e5eSFabio Estevam select MXC_AVIC 80879c0e5eSFabio Estevam help 81879c0e5eSFabio Estevam This enables support for Freescale i.MX27 processor 82879c0e5eSFabio Estevam 8311b05d60SFabio Estevamendif 8411b05d60SFabio Estevam 85c5a0d497SShawn Guoif ARCH_MULTI_V7 86c5a0d497SShawn Guo 878064887eSStefan Agnercomment "Cortex-A platforms" 88784a90c0SSascha Hauer 8950e177caSShawn Guoconfig SOC_IMX5 9050e177caSShawn Guo bool 9150e177caSShawn Guo select HAVE_IMX_SRC 9250e177caSShawn Guo select MXC_TZIC 9350e177caSShawn Guo 94361b0a41SGreg Ungererconfig SOC_IMX50 95361b0a41SGreg Ungerer bool "i.MX50 support" 96361b0a41SGreg Ungerer select SOC_IMX5 97361b0a41SGreg Ungerer 98361b0a41SGreg Ungerer help 99361b0a41SGreg Ungerer This enables support for Freescale i.MX50 processor. 100361b0a41SGreg Ungerer 1011ecdde9dSShawn Guoconfig SOC_IMX51 1028da4d6b2SFabio Estevam bool "i.MX51 support" 1031ecdde9dSShawn Guo select SOC_IMX5 1048da4d6b2SFabio Estevam help 1058da4d6b2SFabio Estevam This enables support for Freescale i.MX51 processor 1068da4d6b2SFabio Estevam 107442279daSShawn Guoconfig SOC_IMX53 108442279daSShawn Guo bool "i.MX53 support" 109b1b3f49cSRussell King select SOC_IMX5 110442279daSShawn Guo 111784a90c0SSascha Hauer help 112442279daSShawn Guo This enables support for Freescale i.MX53 processor. 113bac89d75SShawn Guo 11494f890ecSShawn Guoconfig SOC_IMX6 11594f890ecSShawn Guo bool 116da395584SArnd Bergmann select ARM_CPU_SUSPEND if (PM || CPU_IDLE) 117bac89d75SShawn Guo select ARM_GIC 118e95dddb3SAnson Huang select HAVE_IMX_ANATOP 1199fbbe689SShawn Guo select HAVE_IMX_GPC 1209fbbe689SShawn Guo select HAVE_IMX_MMDC 121aec99b7bSShawn Guo select HAVE_IMX_SRC 122baa64151SDong Aisheng select MFD_SYSCON 123a641f3a6SRussell King select PL310_ERRATA_769419 if CACHE_L2X0 124bac89d75SShawn Guo 12594f890ecSShawn Guoconfig SOC_IMX6Q 12694f890ecSShawn Guo bool "i.MX6 Quad/DualLite support" 12794f890ecSShawn Guo select ARM_ERRATA_764369 if SMP 128edc2569bSStefan Agner select ARM_ERRATA_754322 129edc2569bSStefan Agner select ARM_ERRATA_775420 13094f890ecSShawn Guo select HAVE_ARM_SCU if SMP 131acc98009SSebastian Andrzej Siewior select HAVE_ARM_TWD 13294f890ecSShawn Guo select SOC_IMX6 13394f890ecSShawn Guo 134bac89d75SShawn Guo help 135bac89d75SShawn Guo This enables support for Freescale i.MX6 Quad processor. 136bac89d75SShawn Guo 13731a2fbf7SShawn Guoconfig SOC_IMX6SL 13831a2fbf7SShawn Guo bool "i.MX6 SoloLite support" 139edc2569bSStefan Agner select ARM_ERRATA_754322 140edc2569bSStefan Agner select ARM_ERRATA_775420 14194f890ecSShawn Guo select SOC_IMX6 14231a2fbf7SShawn Guo 14331a2fbf7SShawn Guo help 14431a2fbf7SShawn Guo This enables support for Freescale i.MX6 SoloLite processor. 14531a2fbf7SShawn Guo 146dee5dee2SBai Pingconfig SOC_IMX6SLL 147dee5dee2SBai Ping bool "i.MX6 SoloLiteLite support" 148edc2569bSStefan Agner select ARM_ERRATA_754322 149edc2569bSStefan Agner select ARM_ERRATA_775420 150dee5dee2SBai Ping select SOC_IMX6 151dee5dee2SBai Ping 152dee5dee2SBai Ping help 153dee5dee2SBai Ping This enables support for Freescale i.MX6 SoloLiteLite processor. 154dee5dee2SBai Ping 155d9654dceSShawn Guoconfig SOC_IMX6SX 156d9654dceSShawn Guo bool "i.MX6 SoloX support" 157edc2569bSStefan Agner select ARM_ERRATA_754322 158edc2569bSStefan Agner select ARM_ERRATA_775420 159d9654dceSShawn Guo select SOC_IMX6 160d9654dceSShawn Guo 161d9654dceSShawn Guo help 162d9654dceSShawn Guo This enables support for Freescale i.MX6 SoloX processor. 163d9654dceSShawn Guo 164022d0716SFrank Liconfig SOC_IMX6UL 165022d0716SFrank Li bool "i.MX6 UltraLite support" 166022d0716SFrank Li select SOC_IMX6 1674562fa4cSAnson Huang select ARM_ERRATA_814220 168022d0716SFrank Li 169022d0716SFrank Li help 170022d0716SFrank Li This enables support for Freescale i.MX6 UltraLite processor. 171022d0716SFrank Li 1728064887eSStefan Agnerconfig SOC_LS1021A 1738064887eSStefan Agner bool "Freescale LS1021A support" 1748064887eSStefan Agner select ARM_GIC 1758064887eSStefan Agner select HAVE_ARM_ARCH_TIMER 1768064887eSStefan Agner select ZONE_DMA if ARM_LPAE 1778064887eSStefan Agner help 1788064887eSStefan Agner This enables support for Freescale LS1021A processor. 1798064887eSStefan Agner 1808064887eSStefan Agnerendif 1818064887eSStefan Agner 1828064887eSStefan Agnerif ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M 1838064887eSStefan Agner 1840c11bbcfSFabio Estevamcomment "Cortex-A/Cortex-M asymmetric multiprocessing platforms" 1850c11bbcfSFabio Estevam 1861a1f919eSOleksij Rempelconfig SOC_IMX7D_CA7 1871a1f919eSOleksij Rempel bool 1881a1f919eSOleksij Rempel select ARM_GIC 1891a1f919eSOleksij Rempel select HAVE_ARM_ARCH_TIMER 1901a1f919eSOleksij Rempel select HAVE_IMX_ANATOP 1911a1f919eSOleksij Rempel select HAVE_IMX_MMDC 1921a1f919eSOleksij Rempel select HAVE_IMX_SRC 1931a1f919eSOleksij Rempel select IMX_GPCV2 1941a1f919eSOleksij Rempel 1951a1f919eSOleksij Rempelconfig SOC_IMX7D_CM4 1961a1f919eSOleksij Rempel bool 1971a1f919eSOleksij Rempel select ARMV7M_SYSTICK 1981a1f919eSOleksij Rempel 1991a1f919eSOleksij Rempelconfig SOC_IMX7D 2001a1f919eSOleksij Rempel bool "i.MX7 Dual support" 2011a1f919eSOleksij Rempel select SOC_IMX7D_CA7 if ARCH_MULTI_V7 2021a1f919eSOleksij Rempel select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M 203c74067a0SArnd Bergmann select ARM_ERRATA_814220 if ARCH_MULTI_V7 2041a1f919eSOleksij Rempel help 2051a1f919eSOleksij Rempel This enables support for Freescale i.MX7 Dual processor. 2061a1f919eSOleksij Rempel 207de70d0e9SA.s. Dongconfig SOC_IMX7ULP 208de70d0e9SA.s. Dong bool "i.MX7ULP support" 209de70d0e9SA.s. Dong select CLKSRC_IMX_TPM 210167e6370SArnd Bergmann select SOC_IMX7D_CA7 if ARCH_MULTI_V7 211167e6370SArnd Bergmann select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M 212de70d0e9SA.s. Dong help 213de70d0e9SA.s. Dong This enables support for Freescale i.MX7 Ultra Low Power processor. 214de70d0e9SA.s. Dong 215ed2e8e0aSGiulio Benetticonfig SOC_IMXRT 216ed2e8e0aSGiulio Benetti bool "i.MXRT support" 217ed2e8e0aSGiulio Benetti depends on ARM_SINGLE_ARMV7M 218ed2e8e0aSGiulio Benetti select ARMV7M_SYSTICK if ARM_SINGLE_ARMV7M 219ed2e8e0aSGiulio Benetti help 220ed2e8e0aSGiulio Benetti This enables support for Freescale i.MXRT Crossover processor. 221ed2e8e0aSGiulio Benetti 2225be913c6SJingchang Luconfig SOC_VF610 2235be913c6SJingchang Lu bool "Vybrid Family VF610 support" 2248064887eSStefan Agner select ARM_GIC if ARCH_MULTI_V7 2255be913c6SJingchang Lu 2265be913c6SJingchang Lu help 227c6891ef8SFabio Estevam This enables support for Freescale Vybrid VF610 processor. 2285be913c6SJingchang Lu 2292a61cba7SStefan Agnerchoice 2302a61cba7SStefan Agner prompt "Clocksource for scheduler clock" 2312a61cba7SStefan Agner depends on SOC_VF610 2322a61cba7SStefan Agner default VF_USE_ARM_GLOBAL_TIMER 2332a61cba7SStefan Agner 2342a61cba7SStefan Agner config VF_USE_ARM_GLOBAL_TIMER 235e3246542SMasahiro Yamada bool "Use ARM Global Timer" 236e3246542SMasahiro Yamada depends on ARCH_MULTI_V7 2372a61cba7SStefan Agner select ARM_GLOBAL_TIMER 2382a61cba7SStefan Agner select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK 2392a61cba7SStefan Agner help 2402a61cba7SStefan Agner Use the ARM Global Timer as clocksource 2412a61cba7SStefan Agner 2422a61cba7SStefan Agner config VF_USE_PIT_TIMER 2432a61cba7SStefan Agner bool "Use PIT timer" 2442a61cba7SStefan Agner select VF_PIT_TIMER 2452a61cba7SStefan Agner help 2462a61cba7SStefan Agner Use SoC Periodic Interrupt Timer (PIT) as clocksource 2472a61cba7SStefan Agner 2482a61cba7SStefan Agnerendchoice 2492a61cba7SStefan Agner 25027ad4bf7SUwe Kleine-Königendif 251e0557c0dSShawn Guo 25221278aeaSRob Herringendif 253