xref: /openbmc/linux/arch/riscv/Kconfig.socs (revision cef69974)
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 if !XIP_KERNEL
18	select ERRATA_SIFIVE if !XIP_KERNEL
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	select PM_GENERIC_DOMAINS if PM
40	select PM_GENERIC_DOMAINS_OF if PM && OF
41	select RISCV_SBI_CPUIDLE if CPU_IDLE
42	help
43	  This enables support for QEMU Virt Machine.
44
45config SOC_CANAAN
46	bool "Canaan Kendryte K210 SoC"
47	depends on !MMU
48	select CLINT_TIMER if RISCV_M_MODE
49	select SERIAL_SIFIVE if TTY
50	select SERIAL_SIFIVE_CONSOLE if TTY
51	select SIFIVE_PLIC
52	select ARCH_HAS_RESET_CONTROLLER
53	select PINCTRL
54	select COMMON_CLK
55	select COMMON_CLK_K210
56	help
57	  This enables support for Canaan Kendryte K210 SoC platform hardware.
58
59if SOC_CANAAN
60
61config SOC_CANAAN_K210_DTB_BUILTIN
62	bool "Builtin device tree for the Canaan Kendryte K210"
63	depends on SOC_CANAAN
64	default y
65	select OF
66	select BUILTIN_DTB
67	help
68	  Build a device tree for the Kendryte K210 into the Linux image.
69	  This option should be selected if no bootloader is being used.
70	  If unsure, say Y.
71
72config SOC_CANAAN_K210_DTB_SOURCE
73	string "Source file for the Canaan Kendryte K210 builtin DTB"
74	depends on SOC_CANAAN
75	depends on SOC_CANAAN_K210_DTB_BUILTIN
76	default "k210_generic"
77	help
78	  Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
79	  for the DTS file that will be used to produce the DTB linked into the
80	  kernel.
81
82endif
83
84endmenu
85