1# SPDX-License-Identifier: GPL-2.0
2menuconfig SOC_RENESAS
3	bool "Renesas SoC driver support" if COMPILE_TEST && !ARCH_RENESAS
4	default y if ARCH_RENESAS
5	select GPIOLIB
6	select PINCTRL
7	select SOC_BUS
8
9if SOC_RENESAS
10
11config ARCH_RCAR_GEN1
12	bool
13	select PM
14	select PM_GENERIC_DOMAINS
15	select RENESAS_INTC_IRQPIN
16	select RST_RCAR
17	select SYS_SUPPORTS_SH_TMU
18
19config ARCH_RCAR_GEN2
20	bool
21	select HAVE_ARM_ARCH_TIMER
22	select PM
23	select PM_GENERIC_DOMAINS
24	select RENESAS_IRQC
25	select RST_RCAR
26	select SYS_SUPPORTS_SH_CMT
27
28config ARCH_RCAR_GEN3
29	bool
30	select PM
31	select PM_GENERIC_DOMAINS
32	select RENESAS_IRQC
33	select RST_RCAR
34	select SYS_SUPPORTS_SH_CMT
35	select SYS_SUPPORTS_SH_TMU
36
37config ARCH_RMOBILE
38	bool
39	select PM
40	select PM_GENERIC_DOMAINS
41	select SYS_SUPPORTS_SH_CMT
42	select SYS_SUPPORTS_SH_TMU
43	select SYSC_RMOBILE
44
45config ARCH_RZG2L
46	bool
47	select PM
48	select PM_GENERIC_DOMAINS
49	select RENESAS_RZG2L_IRQC
50
51config ARCH_RZN1
52	bool
53	select PM
54	select PM_GENERIC_DOMAINS
55	select ARM_AMBA
56
57if ARM && ARCH_RENESAS
58
59#comment "Renesas ARM SoCs System Type"
60
61config ARCH_EMEV2
62	bool "ARM32 Platform support for Emma Mobile EV2"
63	select HAVE_ARM_SCU if SMP
64	select SYS_SUPPORTS_EM_STI
65
66config ARCH_R8A7794
67	bool "ARM32 Platform support for R-Car E2"
68	select ARCH_RCAR_GEN2
69	select ARM_ERRATA_814220
70	select SYSC_R8A7794
71
72config ARCH_R8A7779
73	bool "ARM32 Platform support for R-Car H1"
74	select ARCH_RCAR_GEN1
75	select ARM_ERRATA_754322
76	select ARM_GLOBAL_TIMER
77	select HAVE_ARM_SCU if SMP
78	select HAVE_ARM_TWD if SMP
79	select SYSC_R8A7779
80
81config ARCH_R8A7790
82	bool "ARM32 Platform support for R-Car H2"
83	select ARCH_RCAR_GEN2
84	select ARM_ERRATA_798181 if SMP
85	select ARM_ERRATA_814220
86	select I2C
87	select SYSC_R8A7790
88
89config ARCH_R8A7778
90	bool "ARM32 Platform support for R-Car M1A"
91	select ARCH_RCAR_GEN1
92	select ARM_ERRATA_754322
93
94config ARCH_R8A7793
95	bool "ARM32 Platform support for R-Car M2-N"
96	select ARCH_RCAR_GEN2
97	select ARM_ERRATA_798181 if SMP
98	select I2C
99	select SYSC_R8A7791
100
101config ARCH_R8A7791
102	bool "ARM32 Platform support for R-Car M2-W"
103	select ARCH_RCAR_GEN2
104	select ARM_ERRATA_798181 if SMP
105	select I2C
106	select SYSC_R8A7791
107
108config ARCH_R8A7792
109	bool "ARM32 Platform support for R-Car V2H"
110	select ARCH_RCAR_GEN2
111	select ARM_ERRATA_798181 if SMP
112	select SYSC_R8A7792
113
114config ARCH_R8A7740
115	bool "ARM32 Platform support for R-Mobile A1"
116	select ARCH_RMOBILE
117	select ARM_ERRATA_754322
118	select RENESAS_INTC_IRQPIN
119
120config ARCH_R8A73A4
121	bool "ARM32 Platform support for R-Mobile APE6"
122	select ARCH_RMOBILE
123	select ARM_ERRATA_798181 if SMP
124	select ARM_ERRATA_814220
125	select HAVE_ARM_ARCH_TIMER
126	select RENESAS_IRQC
127
128config ARCH_R7S72100
129	bool "ARM32 Platform support for RZ/A1H"
130	select ARM_ERRATA_754322
131	select PM
132	select PM_GENERIC_DOMAINS
133	select RENESAS_OSTM
134	select RENESAS_RZA1_IRQC
135	select SYS_SUPPORTS_SH_MTU2
136
137config ARCH_R7S9210
138	bool "ARM32 Platform support for RZ/A2"
139	select PM
140	select PM_GENERIC_DOMAINS
141	select RENESAS_OSTM
142	select RENESAS_RZA1_IRQC
143
144config ARCH_R8A77470
145	bool "ARM32 Platform support for RZ/G1C"
146	select ARCH_RCAR_GEN2
147	select ARM_ERRATA_814220
148	select SYSC_R8A77470
149
150config ARCH_R8A7745
151	bool "ARM32 Platform support for RZ/G1E"
152	select ARCH_RCAR_GEN2
153	select ARM_ERRATA_814220
154	select SYSC_R8A7745
155
156config ARCH_R8A7742
157	bool "ARM32 Platform support for RZ/G1H"
158	select ARCH_RCAR_GEN2
159	select ARM_ERRATA_798181 if SMP
160	select ARM_ERRATA_814220
161	select SYSC_R8A7742
162
163config ARCH_R8A7743
164	bool "ARM32 Platform support for RZ/G1M"
165	select ARCH_RCAR_GEN2
166	select ARM_ERRATA_798181 if SMP
167	select SYSC_R8A7743
168
169config ARCH_R8A7744
170	bool "ARM32 Platform support for RZ/G1N"
171	select ARCH_RCAR_GEN2
172	select ARM_ERRATA_798181 if SMP
173	select SYSC_R8A7743
174
175config ARCH_R9A06G032
176	bool "ARM32 Platform support for RZ/N1D"
177	select ARCH_RZN1
178	select ARM_ERRATA_814220
179
180config ARCH_SH73A0
181	bool "ARM32 Platform support for SH-Mobile AG5"
182	select ARCH_RMOBILE
183	select ARM_ERRATA_754322
184	select ARM_GLOBAL_TIMER
185	select HAVE_ARM_SCU if SMP
186	select HAVE_ARM_TWD if SMP
187	select RENESAS_INTC_IRQPIN
188
189endif # ARM
190
191if ARM64
192
193config ARCH_R8A77995
194	bool "ARM64 Platform support for R-Car D3"
195	select ARCH_RCAR_GEN3
196	select SYSC_R8A77995
197	help
198	  This enables support for the Renesas R-Car D3 SoC.
199	  This includes different gradings like R-Car D3e.
200
201config ARCH_R8A77990
202	bool "ARM64 Platform support for R-Car E3"
203	select ARCH_RCAR_GEN3
204	select SYSC_R8A77990
205	help
206	  This enables support for the Renesas R-Car E3 SoC.
207	  This includes different gradings like R-Car E3e.
208
209config ARCH_R8A77951
210	bool "ARM64 Platform support for R-Car H3 ES2.0+"
211	select ARCH_RCAR_GEN3
212	select SYSC_R8A7795
213	help
214	  This enables support for the Renesas R-Car H3 SoC (revisions 2.0 and
215	  later).
216	  This includes different gradings like R-Car H3e, H3e-2G, and H3Ne.
217
218config ARCH_R8A77965
219	bool "ARM64 Platform support for R-Car M3-N"
220	select ARCH_RCAR_GEN3
221	select SYSC_R8A77965
222	help
223	  This enables support for the Renesas R-Car M3-N SoC.
224	  This includes different gradings like R-Car M3Ne and M3Ne-2G.
225
226config ARCH_R8A77960
227	bool "ARM64 Platform support for R-Car M3-W"
228	select ARCH_RCAR_GEN3
229	select SYSC_R8A77960
230	help
231	  This enables support for the Renesas R-Car M3-W SoC.
232
233config ARCH_R8A77961
234	bool "ARM64 Platform support for R-Car M3-W+"
235	select ARCH_RCAR_GEN3
236	select SYSC_R8A77961
237	help
238	  This enables support for the Renesas R-Car M3-W+ SoC.
239	  This includes different gradings like R-Car M3e and M3e-2G.
240
241config ARCH_R8A779F0
242	bool "ARM64 Platform support for R-Car S4-8"
243	select ARCH_RCAR_GEN3
244	select SYSC_R8A779F0
245	help
246	  This enables support for the Renesas R-Car S4-8 SoC.
247
248config ARCH_R8A77980
249	bool "ARM64 Platform support for R-Car V3H"
250	select ARCH_RCAR_GEN3
251	select SYSC_R8A77980
252	help
253	  This enables support for the Renesas R-Car V3H SoC.
254
255config ARCH_R8A77970
256	bool "ARM64 Platform support for R-Car V3M"
257	select ARCH_RCAR_GEN3
258	select SYSC_R8A77970
259	help
260	  This enables support for the Renesas R-Car V3M SoC.
261
262config ARCH_R8A779A0
263	bool "ARM64 Platform support for R-Car V3U"
264	select ARCH_RCAR_GEN3
265	select SYSC_R8A779A0
266	help
267	  This enables support for the Renesas R-Car V3U SoC.
268
269config ARCH_R8A779G0
270	bool "ARM64 Platform support for R-Car V4H"
271	select ARCH_RCAR_GEN3
272	select SYSC_R8A779G0
273	help
274	  This enables support for the Renesas R-Car V4H SoC.
275
276config ARCH_R8A774C0
277	bool "ARM64 Platform support for RZ/G2E"
278	select ARCH_RCAR_GEN3
279	select SYSC_R8A774C0
280	help
281	  This enables support for the Renesas RZ/G2E SoC.
282
283config ARCH_R8A774E1
284	bool "ARM64 Platform support for RZ/G2H"
285	select ARCH_RCAR_GEN3
286	select SYSC_R8A774E1
287	help
288	  This enables support for the Renesas RZ/G2H SoC.
289
290config ARCH_R8A774A1
291	bool "ARM64 Platform support for RZ/G2M"
292	select ARCH_RCAR_GEN3
293	select SYSC_R8A774A1
294	help
295	  This enables support for the Renesas RZ/G2M SoC.
296
297config ARCH_R8A774B1
298	bool "ARM64 Platform support for RZ/G2N"
299	select ARCH_RCAR_GEN3
300	select SYSC_R8A774B1
301	help
302	  This enables support for the Renesas RZ/G2N SoC.
303
304config ARCH_R9A07G043
305	bool "ARM64 Platform support for RZ/G2UL"
306	select ARCH_RZG2L
307	help
308	  This enables support for the Renesas RZ/G2UL SoC variants.
309
310config ARCH_R9A07G044
311	bool "ARM64 Platform support for RZ/G2L"
312	select ARCH_RZG2L
313	help
314	  This enables support for the Renesas RZ/G2L SoC variants.
315
316config ARCH_R9A07G054
317	bool "ARM64 Platform support for RZ/V2L"
318	select ARCH_RZG2L
319	help
320	  This enables support for the Renesas RZ/V2L SoC variants.
321
322config ARCH_R9A09G011
323	bool "ARM64 Platform support for RZ/V2M"
324	select PM
325	select PM_GENERIC_DOMAINS
326	select PWC_RZV2M
327	help
328	  This enables support for the Renesas RZ/V2M SoC.
329
330endif # ARM64
331
332if RISCV
333
334config ARCH_R9A07G043
335	bool "RISC-V Platform support for RZ/Five"
336	depends on NONPORTABLE
337	depends on RISCV_ALTERNATIVE
338	depends on !RISCV_ISA_ZICBOM
339	depends on RISCV_SBI
340	select ARCH_RZG2L
341	select AX45MP_L2_CACHE
342	select DMA_GLOBAL_POOL
343	select ERRATA_ANDES
344	select ERRATA_ANDES_CMO
345	help
346	  This enables support for the Renesas RZ/Five SoC.
347
348endif # RISCV
349
350config PWC_RZV2M
351	bool "Renesas RZ/V2M PWC support" if COMPILE_TEST
352
353config RST_RCAR
354	bool "Reset Controller support for R-Car" if COMPILE_TEST
355
356config SYSC_RCAR
357	bool "System Controller support for R-Car" if COMPILE_TEST
358
359config SYSC_RCAR_GEN4
360	bool "System Controller support for R-Car Gen4" if COMPILE_TEST
361
362config SYSC_R8A77995
363	bool "System Controller support for R-Car D3" if COMPILE_TEST
364	select SYSC_RCAR
365
366config SYSC_R8A7794
367	bool "System Controller support for R-Car E2" if COMPILE_TEST
368	select SYSC_RCAR
369
370config SYSC_R8A77990
371	bool "System Controller support for R-Car E3" if COMPILE_TEST
372	select SYSC_RCAR
373
374config SYSC_R8A7779
375	bool "System Controller support for R-Car H1" if COMPILE_TEST
376	select SYSC_RCAR
377
378config SYSC_R8A7790
379	bool "System Controller support for R-Car H2" if COMPILE_TEST
380	select SYSC_RCAR
381
382config SYSC_R8A7795
383	bool "System Controller support for R-Car H3" if COMPILE_TEST
384	select SYSC_RCAR
385
386config SYSC_R8A7791
387	bool "System Controller support for R-Car M2-W/N" if COMPILE_TEST
388	select SYSC_RCAR
389
390config SYSC_R8A77965
391	bool "System Controller support for R-Car M3-N" if COMPILE_TEST
392	select SYSC_RCAR
393
394config SYSC_R8A77960
395	bool "System Controller support for R-Car M3-W" if COMPILE_TEST
396	select SYSC_RCAR
397
398config SYSC_R8A77961
399	bool "System Controller support for R-Car M3-W+" if COMPILE_TEST
400	select SYSC_RCAR
401
402config SYSC_R8A779F0
403	bool "System Controller support for R-Car S4-8" if COMPILE_TEST
404	select SYSC_RCAR_GEN4
405
406config SYSC_R8A7792
407	bool "System Controller support for R-Car V2H" if COMPILE_TEST
408	select SYSC_RCAR
409
410config SYSC_R8A77980
411	bool "System Controller support for R-Car V3H" if COMPILE_TEST
412	select SYSC_RCAR
413
414config SYSC_R8A77970
415	bool "System Controller support for R-Car V3M" if COMPILE_TEST
416	select SYSC_RCAR
417
418config SYSC_R8A779A0
419	bool "System Controller support for R-Car V3U" if COMPILE_TEST
420	select SYSC_RCAR_GEN4
421
422config SYSC_R8A779G0
423	bool "System Controller support for R-Car V4H" if COMPILE_TEST
424	select SYSC_RCAR_GEN4
425
426config SYSC_RMOBILE
427	bool "System Controller support for R-Mobile" if COMPILE_TEST
428
429config SYSC_R8A77470
430	bool "System Controller support for RZ/G1C" if COMPILE_TEST
431	select SYSC_RCAR
432
433config SYSC_R8A7745
434	bool "System Controller support for RZ/G1E" if COMPILE_TEST
435	select SYSC_RCAR
436
437config SYSC_R8A7742
438	bool "System Controller support for RZ/G1H" if COMPILE_TEST
439	select SYSC_RCAR
440
441config SYSC_R8A7743
442	bool "System Controller support for RZ/G1M" if COMPILE_TEST
443	select SYSC_RCAR
444
445config SYSC_R8A774C0
446	bool "System Controller support for RZ/G2E" if COMPILE_TEST
447	select SYSC_RCAR
448
449config SYSC_R8A774E1
450	bool "System Controller support for RZ/G2H" if COMPILE_TEST
451	select SYSC_RCAR
452
453config SYSC_R8A774A1
454	bool "System Controller support for RZ/G2M" if COMPILE_TEST
455	select SYSC_RCAR
456
457config SYSC_R8A774B1
458	bool "System Controller support for RZ/G2N" if COMPILE_TEST
459	select SYSC_RCAR
460
461endif # SOC_RENESAS
462