xref: /openbmc/linux/arch/riscv/Kconfig.socs (revision d35ac6ac)
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	select ERRATA_THEAD
47	help
48	  This enables support for the RISC-V based T-HEAD SoCs.
49
50config ARCH_VIRT
51	def_bool SOC_VIRT
52
53config SOC_VIRT
54	bool "QEMU Virt Machine"
55	select CLINT_TIMER if RISCV_M_MODE
56	select POWER_RESET
57	select POWER_RESET_SYSCON
58	select POWER_RESET_SYSCON_POWEROFF
59	select GOLDFISH
60	select RTC_DRV_GOLDFISH if RTC_CLASS
61	select PM_GENERIC_DOMAINS if PM
62	select PM_GENERIC_DOMAINS_OF if PM && OF
63	select RISCV_SBI_CPUIDLE if CPU_IDLE && RISCV_SBI
64	help
65	  This enables support for QEMU Virt Machine.
66
67config ARCH_CANAAN
68	def_bool SOC_CANAAN
69
70config SOC_CANAAN
71	bool "Canaan Kendryte K210 SoC"
72	depends on !MMU
73	select CLINT_TIMER if RISCV_M_MODE
74	select ARCH_HAS_RESET_CONTROLLER
75	select PINCTRL
76	select COMMON_CLK
77	help
78	  This enables support for Canaan Kendryte K210 SoC platform hardware.
79
80if ARCH_CANAAN
81
82config ARCH_CANAAN_K210_DTB_BUILTIN
83	def_bool SOC_CANAAN_K210_DTB_BUILTIN
84
85config SOC_CANAAN_K210_DTB_BUILTIN
86	bool "Builtin device tree for the Canaan Kendryte K210"
87	depends on ARCH_CANAAN
88	default y
89	select OF
90	select BUILTIN_DTB
91	help
92	  Build a device tree for the Kendryte K210 into the Linux image.
93	  This option should be selected if no bootloader is being used.
94	  If unsure, say Y.
95
96config ARCH_CANAAN_K210_DTB_SOURCE
97	string
98	default SOC_CANAAN_K210_DTB_SOURCE
99
100config SOC_CANAAN_K210_DTB_SOURCE
101	string "Source file for the Canaan Kendryte K210 builtin DTB"
102	depends on ARCH_CANAAN
103	depends on ARCH_CANAAN_K210_DTB_BUILTIN
104	default "k210_generic"
105	help
106	  Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
107	  for the DTS file that will be used to produce the DTB linked into the
108	  kernel.
109
110endif # ARCH_CANAAN
111
112endmenu # "SoC selection"
113