menu "ARM architecture"
	depends on ARM

config SYS_ARCH
	default "arm"

config ARM64
	bool

config DMA_ADDR_T_64BIT
	bool
	default y if ARM64

config HAS_VBAR
        bool

config HAS_THUMB2
        bool

config CPU_ARM720T
        bool

config CPU_ARM920T
        bool

config CPU_ARM926EJS
        bool

config CPU_ARM946ES
        bool

config CPU_ARM1136
        bool

config CPU_ARM1176
        bool
        select HAS_VBAR

config CPU_V7
        bool
        select HAS_VBAR
        select HAS_THUMB2

config CPU_V7M
	bool
        select HAS_THUMB2

config CPU_PXA
        bool

config CPU_SA1100
        bool

config SYS_CPU
        default "arm720t" if CPU_ARM720T
        default "arm920t" if CPU_ARM920T
        default "arm926ejs" if CPU_ARM926EJS
        default "arm946es" if CPU_ARM946ES
        default "arm1136" if CPU_ARM1136
        default "arm1176" if CPU_ARM1176
        default "armv7" if CPU_V7
        default "armv7m" if CPU_V7M
        default "pxa" if CPU_PXA
        default "sa1100" if CPU_SA1100
	default "armv8" if ARM64

config SYS_ARM_ARCH
	int
	default 4 if CPU_ARM720T
	default 4 if CPU_ARM920T
	default 5 if CPU_ARM926EJS
	default 5 if CPU_ARM946ES
	default 6 if CPU_ARM1136
	default 6 if CPU_ARM1176
	default 7 if CPU_V7
	default 7 if CPU_V7M
	default 5 if CPU_PXA
	default 4 if CPU_SA1100
	default 8 if ARM64

config SEMIHOSTING
	bool "support boot from semihosting"
	help
	  In emulated environments, semihosting is a way for
	  the hosted environment to call out to the emulator to
	  retrieve files from the host machine.

config SYS_L2CACHE_OFF
	bool "L2cache off"
	help
	  If SoC does not support L2CACHE or one do not want to enable
	  L2CACHE, choose this option.

config ENABLE_ARM_SOC_BOOT0_HOOK
	bool "prepare BOOT0 header"
	help
	  If the SoC's BOOT0 requires a header area filled with (magic)
	  values, then choose this option, and create a define called
	  ARM_SOC_BOOT0_HOOK which contains the required assembler
	  preprocessor code.

choice
	prompt "Target select"
	default TARGET_HIKEY

config ARCH_AT91
	bool "Atmel AT91"

config TARGET_EDB93XX
	bool "Support edb93xx"
	select CPU_ARM920T

config TARGET_VCMA9
	bool "Support VCMA9"
	select CPU_ARM920T

config TARGET_SMDK2410
	bool "Support smdk2410"
	select CPU_ARM920T

config TARGET_ASPENITE
	bool "Support aspenite"
	select CPU_ARM926EJS

config TARGET_GPLUGD
	bool "Support gplugd"
	select CPU_ARM926EJS

config ARCH_DAVINCI
	bool "TI DaVinci"
	select CPU_ARM926EJS
	help
	  Support for TI's DaVinci platform.

config KIRKWOOD
	bool "Marvell Kirkwood"
	select CPU_ARM926EJS

config ARCH_MVEBU
	bool "Marvell MVEBU family (Armada XP/375/38x)"
	select CPU_V7
	select SUPPORT_SPL
	select OF_CONTROL
	select OF_SEPARATE
	select DM
	select DM_ETH
	select DM_SERIAL
	select DM_SPI
	select DM_SPI_FLASH
	select SPL_DM
	select SPL_DM_SEQ_ALIAS
	select SPL_OF_CONTROL
	select SPL_SIMPLE_BUS

config TARGET_DEVKIT3250
	bool "Support devkit3250"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_WORK_92105
	bool "Support work_92105"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_MX25PDK
	bool "Support mx25pdk"
	select CPU_ARM926EJS

config TARGET_ZMX25
	bool "Support zmx25"
	select CPU_ARM926EJS

config TARGET_APF27
	bool "Support apf27"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_APX4DEVKIT
	bool "Support apx4devkit"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_XFI3
	bool "Support xfi3"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_M28EVK
	bool "Support m28evk"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_MX23EVK
	bool "Support mx23evk"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_MX28EVK
	bool "Support mx28evk"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_MX23_OLINUXINO
	bool "Support mx23_olinuxino"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_BG0900
	bool "Support bg0900"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_SANSA_FUZE_PLUS
	bool "Support sansa_fuze_plus"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_SC_SPS_1
	bool "Support sc_sps_1"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config ORION5X
	bool "Marvell Orion"
	select CPU_ARM926EJS

config TARGET_SPEAR300
	bool "Support spear300"
	select CPU_ARM926EJS

config TARGET_SPEAR310
	bool "Support spear310"
	select CPU_ARM926EJS

config TARGET_SPEAR320
	bool "Support spear320"
	select CPU_ARM926EJS

config TARGET_SPEAR600
	bool "Support spear600"
	select CPU_ARM926EJS

config TARGET_STV0991
	bool "Support stv0991"
	select CPU_V7
	select DM
	select DM_SERIAL
	select DM_SPI
	select DM_SPI_FLASH
	select SPI_FLASH

config TARGET_X600
	bool "Support x600"
	select CPU_ARM926EJS
	select SUPPORT_SPL

config TARGET_IMX31_PHYCORE
	bool "Support imx31_phycore"
	select CPU_ARM1136

config TARGET_MX31ADS
	bool "Support mx31ads"
	select CPU_ARM1136

config TARGET_MX31PDK
	bool "Support mx31pdk"
	select CPU_ARM1136
	select SUPPORT_SPL

config TARGET_WOODBURN
	bool "Support woodburn"
	select CPU_ARM1136

config TARGET_WOODBURN_SD
	bool "Support woodburn_sd"
	select CPU_ARM1136
	select SUPPORT_SPL

config TARGET_FLEA3
	bool "Support flea3"
	select CPU_ARM1136

config TARGET_MX35PDK
	bool "Support mx35pdk"
	select CPU_ARM1136

config ARCH_BCM283X
	bool "Broadcom BCM283X family"
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_VEXPRESS_CA15_TC2
	bool "Support vexpress_ca15_tc2"
	select CPU_V7
	select CPU_V7_HAS_NONSEC
	select CPU_V7_HAS_VIRT

config TARGET_VEXPRESS_CA5X2
	bool "Support vexpress_ca5x2"
	select CPU_V7

config TARGET_VEXPRESS_CA9X4
	bool "Support vexpress_ca9x4"
	select CPU_V7

config TARGET_BRXRE1
	bool "Support BRXRE1"
	select CPU_V7
	select SUPPORT_SPL

config TARGET_BRPPT1
	bool "Support BRPPT1"
	select CPU_V7
	select SUPPORT_SPL

config TARGET_CM_T335
	bool "Support cm_t335"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_PEPPER
	bool "Support pepper"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_AM335X_IGEP0033
	bool "Support am335x_igep0033"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_PCM051
	bool "Support pcm051"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_DRACO
	bool "Support draco"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_THUBAN
	bool "Support thuban"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_RASTABAN
	bool "Support rastaban"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_ETAMIN
        bool "Support etamin"
        select CPU_V7
        select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_PXM2
	bool "Support pxm2"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_RUT
	bool "Support rut"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_PENGWYN
	bool "Support pengwyn"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_AM335X_BALTOS
	bool "Support am335x_baltos"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_AM335X_EVM
	bool "Support am335x_evm"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO
	select TI_I2C_BOARD_DETECT

config TARGET_AM335X_SHC
	bool "Support am335x based shc board from bosch"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	select DM_GPIO

config TARGET_AM335X_SL50
	bool "Support am335x_sl50"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL

config TARGET_BAV335X
	bool "Support bav335x"
	select CPU_V7
	select SUPPORT_SPL
	select DM
	select DM_SERIAL
	help
	  The BAV335x OEM Network Processor integrates all the functions of an
	  embedded network computer in a small, easy to use SODIMM module which
	  incorporates the popular Texas Instruments Sitara 32bit ARM Coretex-A8
	  processor, with fast DDR3 512MB SDRAM, 4GB of embedded MMC and a Gigabit
	  ethernet with simple connection to external connectors.

	  For more information, visit: http://birdland.com/oem

config TARGET_TI814X_EVM
	bool "Support ti814x_evm"
	select CPU_V7
	select SUPPORT_SPL

config TARGET_TI816X_EVM
	bool "Support ti816x_evm"
	select CPU_V7
	select SUPPORT_SPL

config TARGET_BCM23550_W1D
	bool "Support bcm23550_w1d"
	select CPU_V7

config TARGET_BCM28155_AP
	bool "Support bcm28155_ap"
	select CPU_V7

config TARGET_BCMCYGNUS
	bool "Support bcmcygnus"
	select CPU_V7

config TARGET_BCMNSP
	bool "Support bcmnsp"
	select CPU_V7

config ARCH_EXYNOS
	bool "Samsung EXYNOS"
	select DM
	select DM_SPI_FLASH
	select DM_SERIAL
	select DM_SPI
	select DM_GPIO
	select DM_KEYBOARD

config ARCH_S5PC1XX
	bool "Samsung S5PC1XX"
	select CPU_V7
	select DM
	select DM_SERIAL
	select DM_GPIO

config ARCH_HIGHBANK
	bool "Calxeda Highbank"
	select CPU_V7

config ARCH_INTEGRATOR
	bool "ARM Ltd. Integrator family"
	select DM
	select DM_SERIAL

config ARCH_KEYSTONE
	bool "TI Keystone"
	select CPU_V7
	select SUPPORT_SPL
	select CMD_POWEROFF

config ARCH_MESON
	bool "Amlogic Meson"
	help
	  Support for the Meson SoC family developed by Amlogic Inc.,
	  targeted at media players and tablet computers. We currently
	  support the S905 (GXBaby) 64-bit SoC.

config ARCH_MX7
	bool "Freescale MX7"
	select CPU_V7

config ARCH_MX6
	bool "Freescale MX6"
	select CPU_V7

config ARCH_MX5
	bool "Freescale MX5"
	select CPU_V7

config TARGET_M53EVK
	bool "Support m53evk"
	select CPU_V7
	select SUPPORT_SPL

config TARGET_MX51EVK
	bool "Support mx51evk"
	select CPU_V7

config TARGET_MX53ARD
	bool "Support mx53ard"
	select CPU_V7

config TARGET_MX53EVK
	bool "Support mx53evk"
	select CPU_V7

config TARGET_MX53LOCO
	bool "Support mx53loco"
	select CPU_V7

config TARGET_MX53SMD
	bool "Support mx53smd"
	select CPU_V7

config OMAP34XX
	bool "OMAP34XX SoC"
	select CPU_V7

config OMAP44XX
	bool "OMAP44XX SoC"
	select CPU_V7
	select SUPPORT_SPL

config OMAP54XX
	bool "OMAP54XX SoC"
	select CPU_V7
	select SUPPORT_SPL

config AM43XX
	bool "AM43XX SoC"
	select CPU_V7
	select SUPPORT_SPL
	help
	  Support for AM43xx SOC from Texas Instruments.
	  The AM43xx high performance SOC features a Cortex-A9
	  ARM core, a quad core PRU-ICSS for industrial Ethernet
	  protocols, dual camera support, optional 3D graphics
	  and an optional customer programmable secure boot.

config RMOBILE
	bool "Renesas ARM SoCs"
	select CPU_V7

config TARGET_S32V234EVB
	bool "Support s32v234evb"
	select ARM64

config ARCH_SNAPDRAGON
	bool "Qualcomm Snapdragon SoCs"
	select ARM64
	select DM
	select DM_GPIO
	select DM_SERIAL
	select SPMI
	select OF_CONTROL
	select OF_SEPARATE

config ARCH_SOCFPGA
	bool "Altera SOCFPGA family"
	select CPU_V7
	select SUPPORT_SPL
	select OF_CONTROL
	select SPL_OF_CONTROL
	select DM
	select DM_SPI_FLASH
	select DM_SPI

config TARGET_CM_T43
	bool "Support cm_t43"
	select CPU_V7
	select SUPPORT_SPL

config ARCH_SUNXI
	bool "Support sunxi (Allwinner) SoCs"
	select CMD_GPIO
	select CMD_MMC if MMC
	select CMD_USB
	select DM
	select DM_ETH
	select DM_GPIO
	select DM_KEYBOARD
	select DM_SERIAL
	select DM_USB
	select OF_BOARD_SETUP
	select OF_CONTROL
	select OF_SEPARATE
	select SPL_STACK_R if SUPPORT_SPL
	select SPL_SYS_MALLOC_SIMPLE if SUPPORT_SPL
	select SYS_NS16550
	select USB
	select USB_STORAGE
	select USB_KEYBOARD
	select USE_TINY_PRINTF

config TARGET_TS4800
	bool "Support TS4800"
	select CPU_V7

config TARGET_VF610TWR
	bool "Support vf610twr"
	select CPU_V7

config TARGET_COLIBRI_VF
	bool "Support Colibri VF50/61"
	select CPU_V7

config TARGET_PCM052
	bool "Support pcm-052"
	select CPU_V7

config ARCH_ZYNQ
	bool "Xilinx Zynq Platform"
	select CPU_V7
	select SUPPORT_SPL
	select OF_CONTROL
	select SPL_OF_CONTROL if SPL
	select DM
	select DM_ETH
	select DM_GPIO
	select SPL_DM if SPL
	select DM_MMC
	select DM_MMC_OPS
	select DM_SPI
	select DM_SERIAL
	select DM_SPI_FLASH
	select SPL_SEPARATE_BSS if SPL
	select DM_USB if USB
	select BLK

config ARCH_ZYNQMP
	bool "Support Xilinx ZynqMP Platform"
	select ARM64
	select DM
	select OF_CONTROL
	select DM_SERIAL
	select SUPPORT_SPL
	select CLK
	select SPL_CLK
	select DM_USB if USB
	select DM_MMC
	select DM_MMC_OPS
	select BLK

config TEGRA
	bool "NVIDIA Tegra"

config TARGET_VEXPRESS64_AEMV8A
	bool "Support vexpress_aemv8a"
	select ARM64

config TARGET_VEXPRESS64_BASE_FVP
	bool "Support Versatile Express ARMv8a FVP BASE model"
	select ARM64
	select SEMIHOSTING

config TARGET_VEXPRESS64_BASE_FVP_DRAM
	bool "Support Versatile Express ARMv8a FVP BASE model booting from DRAM"
	select ARM64
	help
	  This target is derived from TARGET_VEXPRESS64_BASE_FVP and over-rides
	  the default config to allow the user to load the images directly into
	  DRAM using model parameters rather than by using semi-hosting to load
	  the files from the host filesystem.

config TARGET_VEXPRESS64_JUNO
	bool "Support Versatile Express Juno Development Platform"
	select ARM64

config TARGET_LS2080A_EMU
	bool "Support ls2080a_emu"
	select ARM64
	select ARMV8_MULTIENTRY
	help
	  Support for Freescale LS2080A_EMU platform
	  The LS2080A Development System (EMULATOR) is a pre silicon
	  development platform that supports the QorIQ LS2080A
	  Layerscape Architecture processor.

config TARGET_LS2080A_SIMU
	bool "Support ls2080a_simu"
	select ARM64
	select ARMV8_MULTIENTRY
	help
	  Support for Freescale LS2080A_SIMU platform
	  The LS2080A Development System (QDS) is a pre silicon
	  development platform that supports the QorIQ LS2080A
	  Layerscape Architecture processor.

config TARGET_LS2080AQDS
	bool "Support ls2080aqds"
	select ARM64
	select ARMV8_MULTIENTRY
	select SUPPORT_SPL
	help
	  Support for Freescale LS2080AQDS platform
	  The LS2080A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS2080A
	  Layerscape Architecture processor.

config TARGET_LS2080ARDB
	bool "Support ls2080ardb"
	select ARM64
	select ARMV8_MULTIENTRY
	select SUPPORT_SPL
	help
	  Support for Freescale LS2080ARDB platform.
	  The LS2080A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS2080A
	  Layerscape Architecture processor.

config TARGET_HIKEY
	bool "Support HiKey 96boards Consumer Edition Platform"
	select ARM64
	select DM
	select DM_GPIO
	select DM_SERIAL
	select OF_CONTROL
	  help
	  Support for HiKey 96boards platform. It features a HI6220
	  SoC, with 8xA53 CPU, mali450 gpu, and 1GB RAM.

config TARGET_LS1012AQDS
	bool "Support ls1012aqds"
	select ARM64
	help
	  Support for Freescale LS1012AQDS platform.
	  The LS1012A Development System (QDS) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

config TARGET_LS1012ARDB
	bool "Support ls1012ardb"
	select ARM64
	help
	  Support for Freescale LS1012ARDB platform.
	  The LS1012A Reference design board (RDB) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

config TARGET_LS1012AFRDM
	bool "Support ls1012afrdm"
	select ARM64
	help
	  Support for Freescale LS1012AFRDM platform.
	  The LS1012A Freedom  board (FRDM) is a high-performance
	  development platform that supports the QorIQ LS1012A
	  Layerscape Architecture processor.

config TARGET_LS1021AQDS
	bool "Support ls1021aqds"
	select CPU_V7
	select SUPPORT_SPL
config TARGET_LS1021ATWR
	bool "Support ls1021atwr"
	select CPU_V7
	select SUPPORT_SPL

config TARGET_LS1043AQDS
	bool "Support ls1043aqds"
	select ARM64
	select ARMV8_MULTIENTRY
	select SUPPORT_SPL
	help
	  Support for Freescale LS1043AQDS platform.

config TARGET_LS1043ARDB
	bool "Support ls1043ardb"
	select ARM64
	select ARMV8_MULTIENTRY
	select SUPPORT_SPL
	help
	  Support for Freescale LS1043ARDB platform.

config TARGET_H2200
	bool "Support h2200"
	select CPU_PXA

config TARGET_ZIPITZ2
	bool "Support zipitz2"
	select CPU_PXA

config TARGET_COLIBRI_PXA270
	bool "Support colibri_pxa270"
	select CPU_PXA

config ARCH_UNIPHIER
	bool "Socionext UniPhier SoCs"
	select CLK_UNIPHIER
	select SUPPORT_SPL
	select SPL
	select OF_CONTROL
	select SPL_OF_CONTROL
	select OF_LIBFDT
	select DM
	select SPL_DM
	select DM_GPIO
	select DM_SERIAL
	select DM_I2C
	select DM_MMC
	help
	  Support for UniPhier SoC family developed by Socionext Inc.
	  (formerly, System LSI Business Division of Panasonic Corporation)

config STM32
	bool "Support STM32"
	select CPU_V7M
	select DM
	select DM_SERIAL

config ARCH_ROCKCHIP
	bool "Support Rockchip SoCs"
	select OF_CONTROL
	select BLK
	select DM
	select SPL_DM if SPL
	select SYS_MALLOC_F
	select SPL_SYS_MALLOC_SIMPLE if SPL
	select DM_GPIO
	select DM_I2C
	select DM_MMC
	select DM_MMC_OPS
	select DM_SERIAL
	select DM_SPI
	select DM_SPI_FLASH

config TARGET_THUNDERX_88XX
	bool "Support ThunderX 88xx"
	select ARM64
	select OF_CONTROL

endchoice

source "arch/arm/mach-at91/Kconfig"

source "arch/arm/mach-bcm283x/Kconfig"

source "arch/arm/mach-davinci/Kconfig"

source "arch/arm/mach-exynos/Kconfig"

source "arch/arm/mach-highbank/Kconfig"

source "arch/arm/mach-integrator/Kconfig"

source "arch/arm/mach-keystone/Kconfig"

source "arch/arm/mach-kirkwood/Kconfig"

source "arch/arm/mach-mvebu/Kconfig"

source "arch/arm/cpu/armv7/mx7/Kconfig"

source "arch/arm/cpu/armv7/mx6/Kconfig"

source "arch/arm/cpu/armv7/mx5/Kconfig"

source "arch/arm/cpu/armv7/omap-common/Kconfig"

source "arch/arm/mach-orion5x/Kconfig"

source "arch/arm/cpu/armv7/rmobile/Kconfig"

source "arch/arm/mach-meson/Kconfig"

source "arch/arm/mach-rockchip/Kconfig"

source "arch/arm/mach-s5pc1xx/Kconfig"

source "arch/arm/mach-snapdragon/Kconfig"

source "arch/arm/mach-socfpga/Kconfig"

source "arch/arm/mach-stm32/Kconfig"

source "arch/arm/mach-tegra/Kconfig"

source "arch/arm/mach-uniphier/Kconfig"

source "arch/arm/mach-zynq/Kconfig"

source "arch/arm/cpu/armv7/Kconfig"

source "arch/arm/cpu/armv8/zynqmp/Kconfig"

source "arch/arm/cpu/armv8/Kconfig"

source "arch/arm/imx-common/Kconfig"

source "board/bosch/shc/Kconfig"
source "board/BuR/brxre1/Kconfig"
source "board/BuR/brppt1/Kconfig"
source "board/CarMediaLab/flea3/Kconfig"
source "board/Marvell/aspenite/Kconfig"
source "board/Marvell/gplugd/Kconfig"
source "board/armadeus/apf27/Kconfig"
source "board/armltd/vexpress/Kconfig"
source "board/armltd/vexpress64/Kconfig"
source "board/bluegiga/apx4devkit/Kconfig"
source "board/broadcom/bcm23550_w1d/Kconfig"
source "board/broadcom/bcm28155_ap/Kconfig"
source "board/broadcom/bcmcygnus/Kconfig"
source "board/broadcom/bcmnsp/Kconfig"
source "board/cavium/thunderx/Kconfig"
source "board/cirrus/edb93xx/Kconfig"
source "board/compulab/cm_t335/Kconfig"
source "board/compulab/cm_t43/Kconfig"
source "board/creative/xfi3/Kconfig"
source "board/denx/m28evk/Kconfig"
source "board/denx/m53evk/Kconfig"
source "board/freescale/ls2080a/Kconfig"
source "board/freescale/ls2080aqds/Kconfig"
source "board/freescale/ls2080ardb/Kconfig"
source "board/freescale/ls1021aqds/Kconfig"
source "board/freescale/ls1043aqds/Kconfig"
source "board/freescale/ls1021atwr/Kconfig"
source "board/freescale/ls1043ardb/Kconfig"
source "board/freescale/ls1012aqds/Kconfig"
source "board/freescale/ls1012ardb/Kconfig"
source "board/freescale/ls1012afrdm/Kconfig"
source "board/freescale/mx23evk/Kconfig"
source "board/freescale/mx25pdk/Kconfig"
source "board/freescale/mx28evk/Kconfig"
source "board/freescale/mx31ads/Kconfig"
source "board/freescale/mx31pdk/Kconfig"
source "board/freescale/mx35pdk/Kconfig"
source "board/freescale/mx51evk/Kconfig"
source "board/freescale/mx53ard/Kconfig"
source "board/freescale/mx53evk/Kconfig"
source "board/freescale/mx53loco/Kconfig"
source "board/freescale/mx53smd/Kconfig"
source "board/freescale/s32v234evb/Kconfig"
source "board/freescale/vf610twr/Kconfig"
source "board/gumstix/pepper/Kconfig"
source "board/h2200/Kconfig"
source "board/hisilicon/hikey/Kconfig"
source "board/imx31_phycore/Kconfig"
source "board/isee/igep0033/Kconfig"
source "board/mpl/vcma9/Kconfig"
source "board/olimex/mx23_olinuxino/Kconfig"
source "board/phytec/pcm051/Kconfig"
source "board/phytec/pcm052/Kconfig"
source "board/ppcag/bg0900/Kconfig"
source "board/samsung/smdk2410/Kconfig"
source "board/sandisk/sansa_fuze_plus/Kconfig"
source "board/schulercontrol/sc_sps_1/Kconfig"
source "board/siemens/draco/Kconfig"
source "board/siemens/pxm2/Kconfig"
source "board/siemens/rut/Kconfig"
source "board/silica/pengwyn/Kconfig"
source "board/spear/spear300/Kconfig"
source "board/spear/spear310/Kconfig"
source "board/spear/spear320/Kconfig"
source "board/spear/spear600/Kconfig"
source "board/spear/x600/Kconfig"
source "board/st/stv0991/Kconfig"
source "board/sunxi/Kconfig"
source "board/syteco/zmx25/Kconfig"
source "board/tcl/sl50/Kconfig"
source "board/ti/am335x/Kconfig"
source "board/ti/am43xx/Kconfig"
source "board/birdland/bav335x/Kconfig"
source "board/ti/ti814x/Kconfig"
source "board/ti/ti816x/Kconfig"
source "board/timll/devkit3250/Kconfig"
source "board/toradex/colibri_pxa270/Kconfig"
source "board/toradex/colibri_vf/Kconfig"
source "board/technologic/ts4800/Kconfig"
source "board/vscom/baltos/Kconfig"
source "board/woodburn/Kconfig"
source "board/work-microwave/work_92105/Kconfig"
source "board/zipitz2/Kconfig"

source "arch/arm/Kconfig.debug"

endmenu
