Merge tag 'for-5.18/block-2022-04-01' of git://git.kernel.dk/linux-block
[sfrench/cifs-2.6.git] / arch / riscv / Kconfig.socs
1 menu "SoC selection"
2
3 config 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
10 config 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
22 config 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
30 config 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
45 config 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
59 if SOC_CANAAN
60
61 config 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
72 config 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
82 endif
83
84 endmenu