Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
menu "Platform selection"

config CONFIG_ARCH_ACTIONS
	bool "Actions Semi Platforms"
	select CONFIG_OWL_TIMER
	select CONFIG_PINCTRL
	help
	  This enables support for the Actions Semiconductor S900 SoC family.

config CONFIG_ARCH_AGILEX
	bool "Intel's Agilex SoCFPGA Family"
	help
	  This enables support for Intel's Agilex SoCFPGA Family.

config CONFIG_ARCH_SUNXI
	bool "Allwinner sunxi 64-bit SoC Family"
	select CONFIG_ARCH_HAS_RESET_CONTROLLER
	select CONFIG_GENERIC_IRQ_CHIP
	select CONFIG_PINCTRL
	select CONFIG_RESET_CONTROLLER
	help
	  This enables support for Allwinner sunxi based SoCs like the A64.

config CONFIG_ARCH_ALPINE
	bool "Annapurna Labs Alpine platform"
	select CONFIG_ALPINE_MSI if CONFIG_PCI
	help
	  This enables support for the Annapurna Labs Alpine
	  Soc family.

config CONFIG_ARCH_BCM2835
	bool "Broadcom BCM2835 family"
	select CONFIG_TIMER_OF
	select CONFIG_GPIOLIB
	select CONFIG_MFD_CORE
	select CONFIG_PINCTRL
	select CONFIG_PINCTRL_BCM2835
	select CONFIG_ARM_AMBA
	select CONFIG_ARM_TIMER_SP804
	select CONFIG_HAVE_ARM_ARCH_TIMER
	help
	  This enables support for the Broadcom BCM2837 SoC.
	  This SoC is used in the Raspberry Pi 3 device.

config CONFIG_ARCH_BCM_IPROC
	bool "Broadcom iProc SoC Family"
	select CONFIG_COMMON_CLK_IPROC
	select CONFIG_GPIOLIB
	select CONFIG_PINCTRL
	help
	  This enables support for Broadcom iProc based SoCs

config CONFIG_ARCH_BERLIN
	bool "Marvell Berlin SoC Family"
	select CONFIG_DW_APB_ICTL
	select CONFIG_GPIOLIB
	select CONFIG_PINCTRL
	help
	  This enables support for Marvell Berlin SoC Family

config CONFIG_ARCH_BITMAIN
	bool "Bitmain SoC Platforms"
	help
	  This enables support for the Bitmain SoC Family.

config CONFIG_ARCH_BRCMSTB
	bool "Broadcom Set-Top-Box SoCs"
	select CONFIG_ARCH_HAS_RESET_CONTROLLER
	select CONFIG_BCM7038_L1_IRQ
	select CONFIG_BRCMSTB_L2_IRQ
	select CONFIG_GENERIC_IRQ_CHIP
	select CONFIG_PINCTRL
	help
	  This enables support for Broadcom's ARMv8 Set Top Box SoCs

config CONFIG_ARCH_EXYNOS
	bool "ARMv8 based Samsung Exynos SoC family"
	select CONFIG_COMMON_CLK_SAMSUNG
	select CONFIG_EXYNOS_CHIPID
	select CONFIG_EXYNOS_PM_DOMAINS if CONFIG_PM_GENERIC_DOMAINS
	select CONFIG_EXYNOS_PMU
	select CONFIG_HAVE_S3C2410_WATCHDOG if CONFIG_WATCHDOG
	select CONFIG_HAVE_S3C_RTC if CONFIG_RTC_CLASS
	select CONFIG_PINCTRL
	select CONFIG_PINCTRL_EXYNOS
	select CONFIG_PM_GENERIC_DOMAINS if CONFIG_PM
	select CONFIG_SOC_SAMSUNG
	help
	  This enables support for ARMv8 based Samsung Exynos SoC family.

config CONFIG_ARCH_K3
	bool "Texas Instruments Inc. K3 multicore SoC architecture"
	select CONFIG_PM_GENERIC_DOMAINS if CONFIG_PM
	select CONFIG_MAILBOX
	select CONFIG_SOC_TI
	select CONFIG_TI_MESSAGE_MANAGER
	select CONFIG_TI_SCI_PROTOCOL
	select CONFIG_TI_SCI_INTR_IRQCHIP
	select CONFIG_TI_SCI_INTA_IRQCHIP
	help
	  This enables support for Texas Instruments' K3 multicore SoC
	  architecture.

config CONFIG_ARCH_LAYERSCAPE
	bool "ARMv8 based Freescale Layerscape SoC family"
	select CONFIG_EDAC_SUPPORT
	help
	  This enables support for the Freescale Layerscape SoC family.

config CONFIG_ARCH_LG1K
	bool "LG Electronics LG1K SoC Family"
	help
	  This enables support for LG Electronics LG1K SoC Family

config CONFIG_ARCH_HISI
	bool "Hisilicon SoC Family"
	select CONFIG_ARM_TIMER_SP804
	select CONFIG_HISILICON_IRQ_MBIGEN if CONFIG_PCI
	select CONFIG_PINCTRL
	help
	  This enables support for Hisilicon ARMv8 SoC family

config CONFIG_ARCH_MEDIATEK
	bool "MediaTek SoC Family"
	select CONFIG_ARM_GIC
	select CONFIG_PINCTRL
	select CONFIG_MTK_TIMER
	help
	  This enables support for MediaTek MT27xx, MT65xx, MT76xx
	  & MT81xx ARMv8 SoCs

config CONFIG_ARCH_MESON
	bool "Amlogic Platforms"
	select CONFIG_PINCTRL
	select CONFIG_PINCTRL_MESON
	select CONFIG_COMMON_CLK_GXBB
	select CONFIG_COMMON_CLK_AXG
	select CONFIG_COMMON_CLK_G12A
	select CONFIG_MESON_IRQ_GPIO
	help
	  This enables support for the arm64 based Amlogic SoCs
	  such as the s905, S905X/CONFIG_D, S912, A113X/CONFIG_D or S905X/CONFIG_D2

config CONFIG_ARCH_MVEBU
	bool "Marvell EBU SoC Family"
	select CONFIG_ARMADA_AP806_SYSCON
	select CONFIG_ARMADA_CP110_SYSCON
	select CONFIG_ARMADA_37XX_CLK
	select CONFIG_GPIOLIB
	select CONFIG_GPIOLIB_IRQCHIP
	select CONFIG_MVEBU_GICP
	select CONFIG_MVEBU_ICU
	select CONFIG_MVEBU_ODMI
	select CONFIG_MVEBU_PIC
	select CONFIG_MVEBU_SEI
	select CONFIG_OF_GPIO
	select CONFIG_PINCTRL
	select CONFIG_PINCTRL_ARMADA_37XX
	select CONFIG_PINCTRL_ARMADA_AP806
	select CONFIG_PINCTRL_ARMADA_CP110
	help
	  This enables support for Marvell EBU familly, including:
	   - Armada 3700 SoC Family
	   - Armada 7K SoC Family
	   - Armada 8K SoC Family

config CONFIG_ARCH_MXC
	bool "ARMv8 based NXP i.MX SoC family"
	select CONFIG_ARM64_ERRATUM_843419
	select CONFIG_ARM64_ERRATUM_845719 if CONFIG_COMPAT
	select CONFIG_IMX_GPCV2
	select CONFIG_IMX_GPCV2_PM_DOMAINS
	select CONFIG_PM
	select CONFIG_PM_GENERIC_DOMAINS
	select CONFIG_SOC_BUS
	select CONFIG_TIMER_IMX_SYS_CTR
	help
	  This enables support for the ARMv8 based SoCs in the
	  NXP i.MX family.

config CONFIG_ARCH_QCOM
	bool "Qualcomm Platforms"
	select CONFIG_GPIOLIB
	select CONFIG_PINCTRL
	help
	  This enables support for the ARMv8 based Qualcomm chipsets.

config CONFIG_ARCH_REALTEK
	bool "Realtek Platforms"
	help
	  This enables support for the ARMv8 based Realtek chipsets,
	  like the RTD1295.

config CONFIG_ARCH_RENESAS
	bool "Renesas SoC Platforms"
	select CONFIG_GPIOLIB
	select CONFIG_PINCTRL
	select CONFIG_SOC_BUS
	help
	  This enables support for the ARMv8 based Renesas SoCs.

config CONFIG_ARCH_ROCKCHIP
	bool "Rockchip Platforms"
	select CONFIG_ARCH_HAS_RESET_CONTROLLER
	select CONFIG_GPIOLIB
	select CONFIG_PINCTRL
	select CONFIG_PINCTRL_ROCKCHIP
	select CONFIG_PM
	select CONFIG_ROCKCHIP_TIMER
	help
	  This enables support for the ARMv8 based Rockchip chipsets,
	  like the RK3368.

config CONFIG_ARCH_SEATTLE
	bool "AMD Seattle SoC Family"
	help
	  This enables support for AMD Seattle SOC Family

config CONFIG_ARCH_STRATIX10
	bool "Altera's Stratix 10 SoCFPGA Family"
	help
	  This enables support for Altera's Stratix 10 SoCFPGA Family.

config CONFIG_ARCH_SYNQUACER
	bool "Socionext SynQuacer SoC Family"

config CONFIG_ARCH_TEGRA
	bool "NVIDIA Tegra SoC Family"
	select CONFIG_ARCH_HAS_RESET_CONTROLLER
	select CONFIG_ARM_GIC_PM
	select CONFIG_CLKDEV_LOOKUP
	select CONFIG_CLKSRC_MMIO
	select CONFIG_TIMER_OF
	select CONFIG_GENERIC_CLOCKEVENTS
	select CONFIG_GPIOLIB
	select CONFIG_PINCTRL
	select CONFIG_PM
	select CONFIG_PM_GENERIC_DOMAINS
	select CONFIG_RESET_CONTROLLER
	help
	  This enables support for the NVIDIA Tegra SoC family.

config CONFIG_ARCH_SPRD
	bool "Spreadtrum SoC platform"
	help
	  Support for Spreadtrum CONFIG_ARM based SoCs

config CONFIG_ARCH_THUNDER
	bool "Cavium Inc. Thunder SoC Family"
	help
	  This enables support for Cavium's Thunder Family of SoCs.

config CONFIG_ARCH_THUNDER2
	bool "Cavium ThunderX2 Server Processors"
	select CONFIG_GPIOLIB
	help
	  This enables support for Cavium's ThunderX2 CN99XX family of
	  server processors.

config CONFIG_ARCH_UNIPHIER
	bool "Socionext UniPhier SoC Family"
	select CONFIG_ARCH_HAS_RESET_CONTROLLER
	select CONFIG_PINCTRL
	select CONFIG_RESET_CONTROLLER
	help
	  This enables support for Socionext UniPhier SoC family.

config CONFIG_ARCH_VEXPRESS
	bool "ARMv8 software model (Versatile Express)"
	select CONFIG_COMMON_CLK_VERSATILE
	select CONFIG_GPIOLIB
	select CONFIG_PM
	select CONFIG_PM_GENERIC_DOMAINS
	select CONFIG_POWER_RESET_VEXPRESS
	select CONFIG_VEXPRESS_CONFIG
	help
	  This enables support for the ARMv8 software model (Versatile
	  Express).

config CONFIG_ARCH_VULCAN
	def_bool n

config CONFIG_ARCH_XGENE
	bool "AppliedMicro X-Gene SOC Family"
	help
	  This enables support for AppliedMicro X-Gene SOC Family

config CONFIG_ARCH_ZX
	bool "ZTE ZX SoC Family"
	select CONFIG_PINCTRL
	help
	  This enables support for ZTE ZX SoC Family

config CONFIG_ARCH_ZYNQMP
	bool "Xilinx ZynqMP Family"
	select CONFIG_ZYNQMP_FIRMWARE
	help
	  This enables support for Xilinx ZynqMP Family

endmenu