123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268 |
- # SPDX-License-Identifier: GPL-2.0-only
- menuconfig ARCH_MXC
- bool "Freescale i.MX family"
- depends on ((ARCH_MULTI_V4T || ARCH_MULTI_V5) && CPU_LITTLE_ENDIAN) || \
- ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M
- select CLKSRC_IMX_GPT
- select GENERIC_IRQ_CHIP
- select GPIOLIB
- select PINCTRL
- select PM_OPP if PM
- select SOC_BUS
- select SRAM
- help
- Support for Freescale MXC/iMX-based family of processors
- if ARCH_MXC
- config MXC_TZIC
- bool
- config MXC_AVIC
- bool
- config HAVE_IMX_ANATOP
- bool
- config HAVE_IMX_GPC
- bool
- select PM_GENERIC_DOMAINS if PM
- config HAVE_IMX_MMDC
- bool
- config HAVE_IMX_SRC
- def_bool y if SMP
- select ARCH_HAS_RESET_CONTROLLER
- if ARCH_MULTI_V6
- comment "ARM1136 platforms"
- config SOC_IMX31
- bool "i.MX31 support"
- select CPU_V6
- select MXC_AVIC
- help
- This enables support for Freescale i.MX31 processor
- config SOC_IMX35
- bool "i.MX35 support"
- select MXC_AVIC
- select PINCTRL_IMX35
- help
- This enables support for Freescale i.MX35 processor
- endif
- if ARCH_MULTI_V4T
- config SOC_IMX1
- bool "i.MX1 support"
- select CPU_ARM920T
- select MXC_AVIC
- select PINCTRL_IMX1
- help
- This enables support for Freescale i.MX1 processor
- endif
- if ARCH_MULTI_V5
- config SOC_IMX25
- bool "i.MX25 support"
- select CPU_ARM926T
- select MXC_AVIC
- select PINCTRL_IMX25
- help
- This enables support for Freescale i.MX25 processor
- config SOC_IMX27
- bool "i.MX27 support"
- select CPU_ARM926T
- select MXC_AVIC
- select PINCTRL_IMX27
- help
- This enables support for Freescale i.MX27 processor
- endif
- if ARCH_MULTI_V7
- comment "Cortex-A platforms"
- config SOC_IMX5
- bool
- select HAVE_IMX_SRC
- select MXC_TZIC
- config SOC_IMX50
- bool "i.MX50 support"
- select PINCTRL_IMX50
- select SOC_IMX5
- help
- This enables support for Freescale i.MX50 processor.
- config SOC_IMX51
- bool "i.MX51 support"
- select PINCTRL_IMX51
- select SOC_IMX5
- help
- This enables support for Freescale i.MX51 processor
- config SOC_IMX53
- bool "i.MX53 support"
- select PINCTRL_IMX53
- select SOC_IMX5
- help
- This enables support for Freescale i.MX53 processor.
- config SOC_IMX6
- bool
- select ARM_CPU_SUSPEND if (PM || CPU_IDLE)
- select ARM_GIC
- select HAVE_IMX_ANATOP
- select HAVE_IMX_GPC
- select HAVE_IMX_MMDC
- select HAVE_IMX_SRC
- select MFD_SYSCON
- select PL310_ERRATA_769419 if CACHE_L2X0
- config SOC_IMX6Q
- bool "i.MX6 Quad/DualLite support"
- select ARM_ERRATA_764369 if SMP
- select ARM_ERRATA_754322
- select ARM_ERRATA_775420
- select HAVE_ARM_SCU if SMP
- select HAVE_ARM_TWD
- select PINCTRL_IMX6Q
- select SOC_IMX6
- help
- This enables support for Freescale i.MX6 Quad processor.
- config SOC_IMX6SL
- bool "i.MX6 SoloLite support"
- select ARM_ERRATA_754322
- select ARM_ERRATA_775420
- select PINCTRL_IMX6SL
- select SOC_IMX6
- help
- This enables support for Freescale i.MX6 SoloLite processor.
- config SOC_IMX6SLL
- bool "i.MX6 SoloLiteLite support"
- select ARM_ERRATA_754322
- select ARM_ERRATA_775420
- select PINCTRL_IMX6SLL
- select SOC_IMX6
- help
- This enables support for Freescale i.MX6 SoloLiteLite processor.
- config SOC_IMX6SX
- bool "i.MX6 SoloX support"
- select ARM_ERRATA_754322
- select ARM_ERRATA_775420
- select PINCTRL_IMX6SX
- select SOC_IMX6
- help
- This enables support for Freescale i.MX6 SoloX processor.
- config SOC_IMX6UL
- bool "i.MX6 UltraLite support"
- select PINCTRL_IMX6UL
- select SOC_IMX6
- select ARM_ERRATA_814220
- help
- This enables support for Freescale i.MX6 UltraLite processor.
- config SOC_LS1021A
- bool "Freescale LS1021A support"
- select ARM_GIC
- select HAVE_ARM_ARCH_TIMER
- select ZONE_DMA if ARM_LPAE
- help
- This enables support for Freescale LS1021A processor.
- endif
- if ARCH_MULTI_V7 || ARM_SINGLE_ARMV7M
- comment "Cortex-A/Cortex-M asymmetric multiprocessing platforms"
- config SOC_IMX7D_CA7
- bool
- select ARM_GIC
- select HAVE_ARM_ARCH_TIMER
- select HAVE_IMX_ANATOP
- select HAVE_IMX_MMDC
- select HAVE_IMX_SRC
- select IMX_GPCV2
- config SOC_IMX7D_CM4
- bool
- select ARMV7M_SYSTICK
- config SOC_IMX7D
- bool "i.MX7 Dual support"
- select PINCTRL_IMX7D
- select SOC_IMX7D_CA7 if ARCH_MULTI_V7
- select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
- select ARM_ERRATA_814220 if ARCH_MULTI_V7
- help
- This enables support for Freescale i.MX7 Dual processor.
- config SOC_IMX7ULP
- bool "i.MX7ULP support"
- select CLKSRC_IMX_TPM
- select PINCTRL_IMX7ULP
- select SOC_IMX7D_CA7 if ARCH_MULTI_V7
- select SOC_IMX7D_CM4 if ARM_SINGLE_ARMV7M
- help
- This enables support for Freescale i.MX7 Ultra Low Power processor.
- config SOC_IMXRT
- bool "i.MXRT support"
- depends on ARM_SINGLE_ARMV7M
- select ARMV7M_SYSTICK if ARM_SINGLE_ARMV7M
- help
- This enables support for Freescale i.MXRT Crossover processor.
- config SOC_VF610
- bool "Vybrid Family VF610 support"
- select ARM_GIC if ARCH_MULTI_V7
- select PINCTRL_VF610
- help
- This enables support for Freescale Vybrid VF610 processor.
- choice
- prompt "Clocksource for scheduler clock"
- depends on SOC_VF610
- default VF_USE_ARM_GLOBAL_TIMER
- config VF_USE_ARM_GLOBAL_TIMER
- bool "Use ARM Global Timer"
- depends on ARCH_MULTI_V7
- select ARM_GLOBAL_TIMER
- select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
- help
- Use the ARM Global Timer as clocksource
- config VF_USE_PIT_TIMER
- bool "Use PIT timer"
- select VF_PIT_TIMER
- help
- Use SoC Periodic Interrupt Timer (PIT) as clocksource
- endchoice
- endif
- endif
|