1menuconfig ARCH_VEXPRESS
2	bool "ARM Ltd. Versatile Express family" if ARCH_MULTI_V7
3	select ARCH_REQUIRE_GPIOLIB
4	select ARCH_SUPPORTS_BIG_ENDIAN
5	select ARM_AMBA
6	select ARM_GIC
7	select ARM_GLOBAL_TIMER
8	select ARM_TIMER_SP804
9	select COMMON_CLK_VERSATILE
10	select HAVE_ARM_SCU if SMP
11	select HAVE_ARM_TWD if SMP
12	select HAVE_PATA_PLATFORM
13	select ICST
14	select NO_IOPORT_MAP
15	select PLAT_VERSATILE
16	select POWER_RESET
17	select POWER_RESET_VEXPRESS
18	select POWER_SUPPLY
19	select REGULATOR if MMC_ARMMMCI
20	select REGULATOR_FIXED_VOLTAGE if REGULATOR
21	select VEXPRESS_CONFIG
22	select VEXPRESS_SYSCFG
23	select MFD_VEXPRESS_SYSREG
24	help
25	  This option enables support for systems using Cortex processor based
26	  ARM core and logic (FPGA) tiles on the Versatile Express motherboard,
27	  for example:
28
29	  - CoreTile Express A5x2 (V2P-CA5s)
30	  - CoreTile Express A9x4 (V2P-CA9)
31	  - CoreTile Express A15x2 (V2P-CA15)
32	  - LogicTile Express 13MG (V2F-2XV6) with A5, A7, A9 or A15 SMMs
33	    (Soft Macrocell Models)
34	  - Versatile Express RTSMs (Models)
35
36	  You must boot using a Flattened Device Tree in order to use these
37	  platforms. The traditional (ATAGs) boot method is not usable on
38	  these boards with this option.
39
40if ARCH_VEXPRESS
41
42config ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA
43	bool "Enable A5 and A9 only errata work-arounds"
44	default y
45	select ARM_ERRATA_643719 if SMP
46	select ARM_ERRATA_720789
47	select PL310_ERRATA_753970 if CACHE_L2X0
48	help
49	  Provides common dependencies for Versatile Express platforms
50	  based on Cortex-A5 and Cortex-A9 processors. In order to
51	  build a working kernel, you must also enable relevant core
52	  tile support or Flattened Device Tree based support options.
53
54config ARCH_VEXPRESS_DCSCB
55	bool "Dual Cluster System Control Block (DCSCB) support"
56	depends on MCPM
57	select ARM_CCI400_PORT_CTRL
58	help
59	  Support for the Dual Cluster System Configuration Block (DCSCB).
60	  This is needed to provide CPU and cluster power management
61	  on RTSM implementing big.LITTLE.
62
63config ARCH_VEXPRESS_SPC
64	bool "Versatile Express Serial Power Controller (SPC)"
65	select PM_OPP
66	help
67	  The TC2 (A15x2 A7x3) versatile express core tile integrates a logic
68	  block called Serial Power Controller (SPC) that provides the interface
69	  between the dual cluster test-chip and the M3 microcontroller that
70	  carries out power management.
71
72config ARCH_VEXPRESS_TC2_PM
73	bool "Versatile Express TC2 power management"
74	depends on MCPM
75	select ARM_CCI400_PORT_CTRL
76	select ARCH_VEXPRESS_SPC
77	select ARM_CPU_SUSPEND
78	help
79	  Support for CPU and cluster power management on Versatile Express
80	  with a TC2 (A15x2 A7x3) big.LITTLE core tile.
81
82endif
83