xref: /openbmc/linux/arch/riscv/Kconfig.socs (revision 31eeb6b0)
1menu "SoC selection"
2
3config SOC_MICROCHIP_POLARFIRE
4	bool "Microchip PolarFire SoCs"
5	select MCHP_CLK_MPFS
6	select SIFIVE_PLIC
7	help
8	  This enables support for Microchip PolarFire SoC platforms.
9
10config SOC_SIFIVE
11	bool "SiFive SoCs"
12	select SERIAL_SIFIVE if TTY
13	select SERIAL_SIFIVE_CONSOLE if TTY
14	select CLK_SIFIVE
15	select CLK_SIFIVE_PRCI
16	select SIFIVE_PLIC
17	select RISCV_ERRATA_ALTERNATIVE
18	select ERRATA_SIFIVE
19	help
20	  This enables support for SiFive SoC platform hardware.
21
22config SOC_STARFIVE
23	bool "StarFive SoCs"
24	select PINCTRL
25	select RESET_CONTROLLER
26	select SIFIVE_PLIC
27	help
28	  This enables support for StarFive SoC platform hardware.
29
30config SOC_VIRT
31	bool "QEMU Virt Machine"
32	select CLINT_TIMER if RISCV_M_MODE
33	select POWER_RESET
34	select POWER_RESET_SYSCON
35	select POWER_RESET_SYSCON_POWEROFF
36	select GOLDFISH
37	select RTC_DRV_GOLDFISH if RTC_CLASS
38	select SIFIVE_PLIC
39	help
40	  This enables support for QEMU Virt Machine.
41
42config SOC_CANAAN
43	bool "Canaan Kendryte K210 SoC"
44	depends on !MMU
45	select CLINT_TIMER if RISCV_M_MODE
46	select SERIAL_SIFIVE if TTY
47	select SERIAL_SIFIVE_CONSOLE if TTY
48	select SIFIVE_PLIC
49	select ARCH_HAS_RESET_CONTROLLER
50	select PINCTRL
51	select COMMON_CLK
52	select COMMON_CLK_K210
53	help
54	  This enables support for Canaan Kendryte K210 SoC platform hardware.
55
56if SOC_CANAAN
57
58config SOC_CANAAN_K210_DTB_BUILTIN
59	bool "Builtin device tree for the Canaan Kendryte K210"
60	depends on SOC_CANAAN
61	default y
62	select OF
63	select BUILTIN_DTB
64	help
65	  Build a device tree for the Kendryte K210 into the Linux image.
66	  This option should be selected if no bootloader is being used.
67	  If unsure, say Y.
68
69config SOC_CANAAN_K210_DTB_SOURCE
70	string "Source file for the Canaan Kendryte K210 builtin DTB"
71	depends on SOC_CANAAN
72	depends on SOC_CANAAN_K210_DTB_BUILTIN
73	default "k210_generic"
74	help
75	  Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
76	  for the DTS file that will be used to produce the DTB linked into the
77	  kernel.
78
79endif
80
81endmenu
82