Merge tag 'riscv-for-linus-5.20-mw2' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.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 ERRATA_SIFIVE if !XIP_KERNEL
18         help
19           This enables support for SiFive SoC platform hardware.
20
21 config SOC_STARFIVE
22         bool "StarFive SoCs"
23         select PINCTRL
24         select RESET_CONTROLLER
25         select SIFIVE_PLIC
26         help
27           This enables support for StarFive SoC platform hardware.
28
29 config SOC_VIRT
30         bool "QEMU Virt Machine"
31         select CLINT_TIMER if RISCV_M_MODE
32         select POWER_RESET
33         select POWER_RESET_SYSCON
34         select POWER_RESET_SYSCON_POWEROFF
35         select GOLDFISH
36         select RTC_DRV_GOLDFISH if RTC_CLASS
37         select SIFIVE_PLIC
38         select PM_GENERIC_DOMAINS if PM
39         select PM_GENERIC_DOMAINS_OF if PM && OF
40         select RISCV_SBI_CPUIDLE if CPU_IDLE && RISCV_SBI
41         help
42           This enables support for QEMU Virt Machine.
43
44 config SOC_CANAAN
45         bool "Canaan Kendryte K210 SoC"
46         depends on !MMU
47         select CLINT_TIMER if RISCV_M_MODE
48         select SERIAL_SIFIVE if TTY
49         select SERIAL_SIFIVE_CONSOLE if TTY
50         select SIFIVE_PLIC
51         select ARCH_HAS_RESET_CONTROLLER
52         select PINCTRL
53         select COMMON_CLK
54         select COMMON_CLK_K210
55         help
56           This enables support for Canaan Kendryte K210 SoC platform hardware.
57
58 if SOC_CANAAN
59
60 config SOC_CANAAN_K210_DTB_BUILTIN
61         bool "Builtin device tree for the Canaan Kendryte K210"
62         depends on SOC_CANAAN
63         default y
64         select OF
65         select BUILTIN_DTB
66         help
67           Build a device tree for the Kendryte K210 into the Linux image.
68           This option should be selected if no bootloader is being used.
69           If unsure, say Y.
70
71 config SOC_CANAAN_K210_DTB_SOURCE
72         string "Source file for the Canaan Kendryte K210 builtin DTB"
73         depends on SOC_CANAAN
74         depends on SOC_CANAAN_K210_DTB_BUILTIN
75         default "k210_generic"
76         help
77           Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
78           for the DTS file that will be used to produce the DTB linked into the
79           kernel.
80
81 endif # SOC_CANAAN
82
83 endmenu # "SoC selection"