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
menuconfig CONFIG_ARCH_VEXPRESS
	bool "ARM Ltd. Versatile Express family"
	depends on CONFIG_ARCH_MULTI_V7
	select CONFIG_ARCH_SUPPORTS_BIG_ENDIAN
	select CONFIG_ARM_AMBA
	select CONFIG_ARM_GIC
	select CONFIG_ARM_GLOBAL_TIMER
	select CONFIG_ARM_TIMER_SP804
	select CONFIG_COMMON_CLK_VERSATILE
	select CONFIG_GPIOLIB
	select CONFIG_HAVE_ARM_SCU if CONFIG_SMP
	select CONFIG_HAVE_ARM_TWD if CONFIG_SMP
	select CONFIG_HAVE_PATA_PLATFORM
	select CONFIG_ICST
	select CONFIG_NO_IOPORT_MAP
	select CONFIG_PLAT_VERSATILE
	select CONFIG_POWER_RESET
	select CONFIG_POWER_RESET_VEXPRESS
	select CONFIG_POWER_SUPPLY
	select CONFIG_REGULATOR if CONFIG_MMC_ARMMMCI
	select CONFIG_REGULATOR_FIXED_VOLTAGE if CONFIG_REGULATOR
	select CONFIG_VEXPRESS_CONFIG
	select CONFIG_VEXPRESS_SYSCFG
	select CONFIG_MFD_VEXPRESS_SYSREG
	help
	  This option enables support for systems using Cortex processor based
	  CONFIG_ARM core and logic (CONFIG_FPGA) tiles on the Versatile Express motherboard,
	  for example:

	  - CoreTile Express A5x2 (V2P-CA5s)
	  - CoreTile Express A9x4 (V2P-CA9)
	  - CoreTile Express A15x2 (V2P-CA15)
	  - LogicTile Express 13MG (V2F-2XV6) with A5, A7, A9 or A15 SMMs
	    (Soft Macrocell Models)
	  - Versatile Express RTSMs (Models)

	  You must boot using a Flattened Device Tree in order to use these
	  platforms. The traditional (ATAGs) boot method is not usable on
	  these boards with this option.

if CONFIG_ARCH_VEXPRESS

config CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA
	bool "Enable A5 and A9 only errata work-arounds"
	default y
	select CONFIG_ARM_ERRATA_643719 if CONFIG_SMP
	select CONFIG_ARM_ERRATA_720789
	select CONFIG_PL310_ERRATA_753970 if CONFIG_CACHE_L2X0
	help
	  Provides common dependencies for Versatile Express platforms
	  based on Cortex-A5 and Cortex-A9 processors. In order to
	  build a working kernel, you must also enable relevant core
	  tile support or Flattened Device Tree based support options.

config CONFIG_ARCH_VEXPRESS_DCSCB
	bool "Dual Cluster System Control Block (DCSCB) support"
	depends on CONFIG_MCPM
	select CONFIG_ARM_CCI400_PORT_CTRL
	help
	  Support for the Dual Cluster System Configuration Block (DCSCB).
	  This is needed to provide CPU and cluster power management
	  on RTSM implementing big.LITTLE.

config CONFIG_ARCH_VEXPRESS_SPC
	bool "Versatile Express Serial Power Controller (SPC)"
	select CONFIG_PM_OPP
	help
	  The TC2 (A15x2 A7x3) versatile express core tile integrates a logic
	  block called Serial Power Controller (SPC) that provides the interface
	  between the dual cluster test-chip and the M3 microcontroller that
	  carries out power management.

config CONFIG_ARCH_VEXPRESS_TC2_PM
	bool "Versatile Express TC2 power management"
	depends on CONFIG_MCPM
	select CONFIG_ARM_CCI400_PORT_CTRL
	select CONFIG_ARCH_VEXPRESS_SPC
	select CONFIG_ARM_CPU_SUSPEND
	help
	  Support for CPU and cluster power management on Versatile Express
	  with a TC2 (A15x2 A7x3) big.LITTLE core tile.

endif