Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
torvalds
GitHub Repository: torvalds/linux
Path: blob/master/arch/arm/Kconfig.platforms
29266 views
# SPDX-License-Identifier: GPL-2.0-only

menu "Platform selection"
	depends on MMU

comment "CPU Core family selection"

config ARCH_MULTI_V4
	bool "ARMv4 based platforms (FA526, StrongARM)"
	depends on !ARCH_MULTI_V6_V7
	# https://github.com/llvm/llvm-project/issues/50764
	depends on !LD_IS_LLD || LLD_VERSION >= 160000
	select ARCH_MULTI_V4_V5
	select CPU_FA526 if !(CPU_SA110 || CPU_SA1100)

config ARCH_MULTI_V4T
	bool "ARMv4T based platforms (ARM720T, ARM920T, ...)"
	depends on !ARCH_MULTI_V6_V7
	# https://github.com/llvm/llvm-project/issues/50764
	depends on !LD_IS_LLD || LLD_VERSION >= 160000
	select ARCH_MULTI_V4_V5
	select CPU_ARM920T if !(CPU_ARM7TDMI || CPU_ARM720T || \
		CPU_ARM740T || CPU_ARM9TDMI || CPU_ARM922T || \
		CPU_ARM925T || CPU_ARM940T)

config ARCH_MULTI_V5
	bool "ARMv5 based platforms (ARM926T, XSCALE, PJ1, ...)"
	depends on !ARCH_MULTI_V6_V7
	select ARCH_MULTI_V4_V5
	select CPU_ARM926T if !(CPU_ARM946E || CPU_ARM1020 || \
		CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || \
		CPU_XSCALE || CPU_XSC3 || CPU_MOHAWK || CPU_FEROCEON)

config ARCH_MULTI_V4_V5
	bool

config ARCH_MULTI_V6
	bool "ARMv6 based platforms (ARM11)"
	select ARCH_MULTI_V6_V7
	select CPU_V6K

config ARCH_MULTI_V7
	bool "ARMv7 based platforms (Cortex-A, PJ4, Scorpion, Krait)"
	default y
	select ARCH_MULTI_V6_V7
	select CPU_V7
	select HAVE_SMP

config ARCH_MULTI_V6_V7
	bool
	select MIGHT_HAVE_CACHE_L2X0

config ARCH_MULTI_CPU_AUTO
	def_bool !(ARCH_MULTI_V4 || ARCH_MULTI_V4T || ARCH_MULTI_V6_V7)
	select ARCH_MULTI_V5

endmenu

config ARCH_VIRT
	bool "Dummy Virtual Machine"
	depends on ARCH_MULTI_V7
	select ARM_AMBA
	select ARM_GIC
	select ARM_GIC_V2M if PCI
	select ARM_GIC_V3
	select ARM_GIC_V3_ITS if PCI
	select ARM_PSCI
	select HAVE_ARM_ARCH_TIMER

config ARCH_AIROHA
	bool "Airoha SoC Support"
	depends on ARCH_MULTI_V7
	select ARM_AMBA
	select ARM_GIC
	select ARM_GIC_V3
	select ARM_PSCI
	select HAVE_ARM_ARCH_TIMER
	help
	  Support for Airoha EN7523 SoCs

config MACH_ASM9260
	bool "Alphascale ASM9260"
	depends on ARCH_MULTI_V5
	depends on CPU_LITTLE_ENDIAN
	select CPU_ARM926T
	select ASM9260_TIMER
	help
	  Support for Alphascale ASM9260 based platform.

menuconfig ARCH_HPE
	bool "HPE SoC support"
	depends on ARCH_MULTI_V7
	help
	  This enables support for HPE ARM based BMC chips.

if ARCH_HPE

config ARCH_HPE_GXP
	bool "HPE GXP SoC"
	depends on ARCH_MULTI_V7
	select ARM_VIC
	select GENERIC_IRQ_CHIP
	select CLKSRC_MMIO
	help
	  HPE GXP is the name of the HPE Soc. This SoC is used to implement many
	  BMC features at HPE. It supports ARMv7 architecture based on the Cortex
	  A9 core. It is capable of using an AXI bus to which a memory controller
	  is attached. It has multiple SPI interfaces to connect boot flash and
	  BIOS flash. It uses a 10/100/1000 MAC for network connectivity. It
	  has multiple i2c engines to drive connectivity with a host
	  infrastructure.

endif

menuconfig ARCH_MOXART
	bool "MOXA ART SoC"
	depends on ARCH_MULTI_V4
	depends on CPU_LITTLE_ENDIAN
	select CPU_FA526
	select ARM_DMA_MEM_BUFFERABLE
	select FARADAY_FTINTC010
	select FTTMR010_TIMER
	select GPIOLIB
	select PHYLIB if NETDEVICES
	help
	  Say Y here if you want to run your kernel on hardware with a
	  MOXA ART SoC.
	  The MOXA ART SoC is based on a Faraday FA526 ARMv4 32-bit
	  192 MHz CPU with MMU and 16KB/8KB D/I-cache (UC-7112-LX).
	  Used on models UC-7101, UC-7112/UC-7110, IA240/IA241, IA3341.

if ARCH_MOXART

config MACH_UC7112LX
	bool "MOXA UC-7112-LX"
	depends on ARCH_MOXART
	help
	  Say Y here if you intend to run this kernel on a MOXA
	  UC-7112-LX embedded computer.

endif

config ARCH_NSPIRE
	bool "TI-NSPIRE based"
	depends on ARCH_MULTI_V4T
	depends on CPU_LITTLE_ENDIAN
	select CPU_ARM926T
	select GENERIC_IRQ_CHIP
	select ARM_AMBA
	select ARM_VIC
	select ARM_TIMER_SP804
	select NSPIRE_TIMER
	select POWER_RESET
	select POWER_RESET_SYSCON
	help
	  This enables support for systems using the TI-NSPIRE CPU

config ARCH_RDA
	bool "RDA Micro SoCs"
	depends on ARCH_MULTI_V7
	select RDA_INTC
	select RDA_TIMER
	help
	  This enables support for the RDA Micro 8810PL SoC family.

menuconfig ARCH_SUNPLUS
	bool "Sunplus SoCs"
	depends on ARCH_MULTI_V7
	help
	  Support for Sunplus SoC family: SP7021 and succeeding SoC-based systems,
	  such as the Banana Pi BPI-F2S development board (and derivatives).
	  (<http://www.sinovoip.com.cn/ecp_view.asp?id=586>)
	  (<https://tibbo.com/store/plus1.html>)

if ARCH_SUNPLUS

config SOC_SP7021
	bool "Sunplus SP7021 SoC support"
	default ARCH_SUNPLUS
	select HAVE_ARM_ARCH_TIMER
	select ARM_GIC
	select ARM_PSCI
	select PINCTRL
	select PINCTRL_SPPCTL
	select SERIAL_SUNPLUS if TTY
	select SERIAL_SUNPLUS_CONSOLE if TTY
	help
	  Support for Sunplus SP7021 SoC. It is based on ARM 4-core
	  Cortex-A7 with various peripherals (e.g.: I2C, SPI, SDIO,
	  Ethernet, etc.), FPGA interface,  chip-to-chip bus.
	  It is designed for industrial control.

endif

config ARCH_UNIPHIER
	bool "Socionext UniPhier SoCs"
	depends on ARCH_MULTI_V7
	select ARCH_HAS_RESET_CONTROLLER
	select ARM_AMBA
	select ARM_GLOBAL_TIMER
	select ARM_GIC
	select HAVE_ARM_SCU
	select HAVE_ARM_TWD if SMP
	select PINCTRL
	select RESET_CONTROLLER
	help
	  Support for UniPhier SoC family developed by Socionext Inc.
	  (formerly, System LSI Business Division of Panasonic Corporation)