xref: /openbmc/linux/arch/riscv/Kconfig.socs (revision 569820be)
1menu "SoC selection"
2
3config ARCH_MICROCHIP_POLARFIRE
4	def_bool SOC_MICROCHIP_POLARFIRE
5
6config SOC_MICROCHIP_POLARFIRE
7	bool "Microchip PolarFire SoCs"
8	help
9	  This enables support for Microchip PolarFire SoC platforms.
10
11config ARCH_RENESAS
12	bool "Renesas RISC-V SoCs"
13	help
14	  This enables support for the RISC-V based Renesas SoCs.
15
16config ARCH_SIFIVE
17	def_bool SOC_SIFIVE
18
19config SOC_SIFIVE
20	bool "SiFive SoCs"
21	select ERRATA_SIFIVE if !XIP_KERNEL
22	help
23	  This enables support for SiFive SoC platform hardware.
24
25config ARCH_STARFIVE
26	def_bool SOC_STARFIVE
27
28config SOC_STARFIVE
29	bool "StarFive SoCs"
30	select PINCTRL
31	select RESET_CONTROLLER
32	help
33	  This enables support for StarFive SoC platform hardware.
34
35config ARCH_SUNXI
36	bool "Allwinner sun20i SoCs"
37	depends on MMU && !XIP_KERNEL
38	select ERRATA_THEAD
39	select SUN4I_TIMER
40	help
41	  This enables support for Allwinner sun20i platform hardware,
42	  including boards based on the D1 and D1s SoCs.
43
44config ARCH_THEAD
45	bool "T-HEAD RISC-V SoCs"
46	depends on MMU && !XIP_KERNEL
47	select ERRATA_THEAD
48	help
49	  This enables support for the RISC-V based T-HEAD SoCs.
50
51config ARCH_VIRT
52	def_bool SOC_VIRT
53
54config SOC_VIRT
55	bool "QEMU Virt Machine"
56	select CLINT_TIMER if RISCV_M_MODE
57	select POWER_RESET
58	select POWER_RESET_SYSCON
59	select POWER_RESET_SYSCON_POWEROFF
60	select GOLDFISH
61	select RTC_DRV_GOLDFISH if RTC_CLASS
62	select PM_GENERIC_DOMAINS if PM
63	select PM_GENERIC_DOMAINS_OF if PM && OF
64	select RISCV_SBI_CPUIDLE if CPU_IDLE && RISCV_SBI
65	help
66	  This enables support for QEMU Virt Machine.
67
68config ARCH_CANAAN
69	def_bool SOC_CANAAN
70
71config SOC_CANAAN
72	bool "Canaan Kendryte K210 SoC"
73	depends on !MMU
74	select CLINT_TIMER if RISCV_M_MODE
75	select ARCH_HAS_RESET_CONTROLLER
76	select PINCTRL
77	select COMMON_CLK
78	help
79	  This enables support for Canaan Kendryte K210 SoC platform hardware.
80
81if ARCH_CANAAN
82
83config ARCH_CANAAN_K210_DTB_BUILTIN
84	def_bool SOC_CANAAN_K210_DTB_BUILTIN
85
86config SOC_CANAAN_K210_DTB_BUILTIN
87	bool "Builtin device tree for the Canaan Kendryte K210"
88	depends on ARCH_CANAAN
89	default y
90	select OF
91	select BUILTIN_DTB
92	help
93	  Build a device tree for the Kendryte K210 into the Linux image.
94	  This option should be selected if no bootloader is being used.
95	  If unsure, say Y.
96
97config ARCH_CANAAN_K210_DTB_SOURCE
98	string
99	default SOC_CANAAN_K210_DTB_SOURCE
100
101config SOC_CANAAN_K210_DTB_SOURCE
102	string "Source file for the Canaan Kendryte K210 builtin DTB"
103	depends on ARCH_CANAAN
104	depends on ARCH_CANAAN_K210_DTB_BUILTIN
105	default "k210_generic"
106	help
107	  Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
108	  for the DTS file that will be used to produce the DTB linked into the
109	  kernel.
110
111endif # ARCH_CANAAN
112
113endmenu # "SoC selection"
114