| # SPDX-License-Identifier: GPL-2.0 |
| menuconfig ARCH_VEXPRESS |
| bool "ARM Ltd. Versatile Express family" |
| depends on ARCH_MULTI_V7 |
| select ARCH_SUPPORTS_BIG_ENDIAN |
| select ARM_AMBA |
| select ARM_GIC |
| select ARM_GLOBAL_TIMER |
| select ARM_TIMER_SP804 |
| select COMMON_CLK_VERSATILE |
| select GPIOLIB |
| select HAVE_ARM_SCU if SMP |
| select HAVE_ARM_TWD if SMP |
| select HAVE_PATA_PLATFORM |
| select ICST |
| select NO_IOPORT_MAP |
| select PLAT_VERSATILE |
| select POWER_RESET |
| select POWER_RESET_VEXPRESS |
| select POWER_SUPPLY |
| select REGULATOR if MMC_ARMMMCI |
| select REGULATOR_FIXED_VOLTAGE if REGULATOR |
| select VEXPRESS_CONFIG |
| select VEXPRESS_SYSCFG |
| select MFD_VEXPRESS_SYSREG |
| help |
| This option enables support for systems using Cortex processor based |
| ARM core and logic (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 ARCH_VEXPRESS |
| |
| config ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA |
| bool "Enable A5 and A9 only errata work-arounds" |
| default y |
| select ARM_ERRATA_643719 if SMP |
| select ARM_ERRATA_720789 |
| select PL310_ERRATA_753970 if 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 ARCH_VEXPRESS_DCSCB |
| bool "Dual Cluster System Control Block (DCSCB) support" |
| depends on MCPM |
| select 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 ARCH_VEXPRESS_SPC |
| bool "Versatile Express Serial Power Controller (SPC)" |
| select 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 ARCH_VEXPRESS_TC2_PM |
| bool "Versatile Express TC2 power management" |
| depends on MCPM |
| select ARM_CCI400_PORT_CTRL |
| select ARCH_VEXPRESS_SPC |
| select ARM_CPU_SUSPEND |
| help |
| Support for CPU and cluster power management on Versatile Express |
| with a TC2 (A15x2 A7x3) big.LITTLE core tile. |
| |
| endif |