1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig ARCH_INTEGRATOR
3	bool "ARM Ltd. Integrator family"
4	depends on ARCH_MULTI_V4T || ARCH_MULTI_V5 || ARCH_MULTI_V6
5	select ARM_AMBA
6	select COMMON_CLK_VERSATILE
7	select HAVE_TCM
8	select ICST
9	select MFD_SYSCON
10	select PLAT_VERSATILE
11	select POWER_RESET
12	select POWER_RESET_VERSATILE
13	select POWER_SUPPLY
14	select SOC_INTEGRATOR_CM
15	select SPARSE_IRQ
16	select VERSATILE_FPGA_IRQ
17	help
18	  Support for ARM's Integrator platform.
19
20if ARCH_INTEGRATOR
21
22config ARCH_INTEGRATOR_AP
23	bool "Support Integrator/AP and Integrator/PP2 platforms"
24	select INTEGRATOR_AP_TIMER
25	select SERIAL_AMBA_PL010 if TTY
26	select SERIAL_AMBA_PL010_CONSOLE if TTY
27	select SOC_BUS
28	help
29	  Include support for the ARM(R) Integrator/AP and
30	  Integrator/PP2 platforms.
31
32config INTEGRATOR_IMPD1
33	bool "Include support for Integrator/IM-PD1"
34	depends on ARCH_INTEGRATOR_AP
35	select ARM_VIC
36	select GPIO_PL061
37	select GPIOLIB
38	help
39	  The IM-PD1 is an add-on logic module for the Integrator which
40	  allows ARM(R) Ltd PrimeCells to be developed and evaluated.
41	  The IM-PD1 can be found on the Integrator/PP2 platform.
42
43	  To compile this driver as a module, choose M here: the
44	  module will be called impd1.
45
46config INTEGRATOR_CM7TDMI
47	bool "Integrator/CM7TDMI core module"
48	depends on ARCH_INTEGRATOR_AP
49	depends on ARCH_MULTI_V4 && !MMU
50	select CPU_ARM7TDMI
51
52config INTEGRATOR_CM720T
53	bool "Integrator/CM720T core module"
54	depends on ARCH_INTEGRATOR_AP
55	depends on ARCH_MULTI_V4T
56	select CPU_ARM720T
57
58config INTEGRATOR_CM740T
59	bool "Integrator/CM740T core module"
60	depends on ARCH_INTEGRATOR_AP
61	depends on ARCH_MULTI_V4T && !MMU
62	select CPU_ARM740T
63
64config INTEGRATOR_CM920T
65	bool "Integrator/CM920T core module"
66	depends on ARCH_INTEGRATOR_AP
67	depends on ARCH_MULTI_V4T
68	select CPU_ARM920T
69
70config INTEGRATOR_CM922T_XA10
71	bool "Integrator/CM922T-XA10 core module"
72	depends on ARCH_MULTI_V4T
73	depends on ARCH_INTEGRATOR_AP
74	select CPU_ARM922T
75
76config INTEGRATOR_CM926EJS
77	bool "Integrator/CM926EJ-S core module"
78	depends on ARCH_INTEGRATOR_AP
79	depends on ARCH_MULTI_V5
80	select CPU_ARM926T
81
82config INTEGRATOR_CM940T
83	bool "Integrator/CM940T core module"
84	depends on ARCH_INTEGRATOR_AP
85	depends on ARCH_MULTI_V4T && !MMU
86	select CPU_ARM940T
87
88config INTEGRATOR_CM946ES
89	bool "Integrator/CM946E-S core module"
90	depends on ARCH_INTEGRATOR_AP
91	depends on ARCH_MULTI_V5 && !MMU
92	select CPU_ARM946E
93
94config INTEGRATOR_CM966ES
95	bool "Integrator/CM966E-S core module"
96	depends on ARCH_INTEGRATOR_AP
97	depends on BROKEN # no kernel support
98
99config INTEGRATOR_CM10200E_REV0
100	bool "Integrator/CM10200E rev.0 core module"
101	depends on ARCH_INTEGRATOR_AP && n
102	depends on ARCH_MULTI_V5
103	select CPU_ARM1020
104
105config INTEGRATOR_CM10200E
106	bool "Integrator/CM10200E core module"
107	depends on ARCH_INTEGRATOR_AP && n
108	depends on ARCH_MULTI_V5
109	select CPU_ARM1020E
110
111config INTEGRATOR_CM10220E
112	bool "Integrator/CM10220E core module"
113	depends on ARCH_INTEGRATOR_AP
114	depends on ARCH_MULTI_V5
115	select CPU_ARM1022
116
117config INTEGRATOR_CM1026EJS
118	bool "Integrator/CM1026EJ-S core module"
119	depends on ARCH_INTEGRATOR_AP
120	depends on ARCH_MULTI_V5
121	select CPU_ARM1026
122
123config INTEGRATOR_CM1136JFS
124	bool "Integrator/CM1136JF-S core module"
125	depends on ARCH_INTEGRATOR_AP
126	depends on ARCH_MULTI_V6
127	select CPU_V6
128
129config ARCH_INTEGRATOR_CP
130	bool "Support Integrator/CP platform"
131	depends on (!MMU || ARCH_MULTI_V5 || ARCH_MULTI_V6)
132	select ARM_TIMER_SP804
133	select SERIAL_AMBA_PL011 if TTY
134	select SERIAL_AMBA_PL011_CONSOLE if TTY
135	select SOC_BUS
136	help
137	  Include support for the ARM(R) Integrator CP platform.
138
139config INTEGRATOR_CT7T
140	bool "Integrator/CT7TD (ARM7TDMI) core tile"
141	depends on ARCH_INTEGRATOR_CP
142	depends on ARCH_MULTI_V4T && !MMU
143	select CPU_ARM7TDMI
144
145config INTEGRATOR_CT926
146	bool "Integrator/CT926 (ARM926EJ-S) core tile"
147	depends on ARCH_INTEGRATOR_CP
148	depends on ARCH_MULTI_V5
149	select CPU_ARM926T
150
151config INTEGRATOR_CTB36
152	bool "Integrator/CTB36 (ARM1136JF-S) core tile"
153	depends on ARCH_INTEGRATOR_CP
154	depends on ARCH_MULTI_V6
155	select CPU_V6
156
157config ARCH_CINTEGRATOR
158	depends on ARCH_INTEGRATOR_CP
159	def_bool y
160
161endif
162