forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
273 lines
5.5 KiB
273 lines
5.5 KiB
# SPDX-License-Identifier: GPL-2.0-only |
|
menuconfig ARCH_MXC |
|
bool "Freescale i.MX family" |
|
depends on ARCH_MULTI_V4_V5 || ARCH_MULTI_V6_V7 || ARM_SINGLE_ARMV7M |
|
select ARCH_SUPPORTS_BIG_ENDIAN |
|
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 MXC_DEBUG_BOARD |
|
bool "Enable MXC debug board(for 3-stack)" |
|
depends on MACH_MX27_3DS || MACH_MX31_3DS || MACH_MX35_3DS |
|
help |
|
The debug board is an integral part of the MXC 3-stack(PDK) |
|
platforms, it can be attached or removed from the peripheral |
|
board. On debug board, several debug devices(ethernet, UART, |
|
buttons, LEDs and JTAG) are implemented. Between the MCU and |
|
these devices, a CPLD is added as a bridge which performs |
|
data/address de-multiplexing and decode, signal level shift, |
|
interrupt control and various board functions. |
|
|
|
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.MX31 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_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
|
|
|