mm: Introduce flush_cache_vmap_early()
[platform/kernel/linux-starfive.git] / arch / riscv / Kconfig.socs
1 menu "SoC selection"
2
3 config ARCH_MICROCHIP_POLARFIRE
4         def_bool SOC_MICROCHIP_POLARFIRE
5
6 config SOC_MICROCHIP_POLARFIRE
7         bool "Microchip PolarFire SoCs"
8         help
9           This enables support for Microchip PolarFire SoC platforms.
10
11 config ARCH_RENESAS
12         bool "Renesas RISC-V SoCs"
13         help
14           This enables support for the RISC-V based Renesas SoCs.
15
16 config ARCH_SIFIVE
17         def_bool SOC_SIFIVE
18
19 config 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
25 config ARCH_STARFIVE
26         def_bool SOC_STARFIVE
27
28 config SOC_STARFIVE
29         bool "StarFive SoCs"
30         select PINCTRL
31         select RESET_CONTROLLER
32         select ARM_AMBA
33         help
34           This enables support for StarFive SoC platform hardware.
35
36 config ARCH_SUNXI
37         bool "Allwinner sun20i SoCs"
38         depends on MMU && !XIP_KERNEL
39         select ERRATA_THEAD
40         select SUN4I_TIMER
41         help
42           This enables support for Allwinner sun20i platform hardware,
43           including boards based on the D1 and D1s SoCs.
44
45 config ARCH_THEAD
46         bool "T-HEAD RISC-V SoCs"
47         depends on MMU && !XIP_KERNEL
48         select ERRATA_THEAD
49         help
50           This enables support for the RISC-V based T-HEAD SoCs.
51
52 config ARCH_VIRT
53         def_bool SOC_VIRT
54
55 config SOC_VIRT
56         bool "QEMU Virt Machine"
57         select CLINT_TIMER if RISCV_M_MODE
58         select POWER_RESET
59         select POWER_RESET_SYSCON
60         select POWER_RESET_SYSCON_POWEROFF
61         select GOLDFISH
62         select RTC_DRV_GOLDFISH if RTC_CLASS
63         select PM_GENERIC_DOMAINS if PM
64         select PM_GENERIC_DOMAINS_OF if PM && OF
65         select RISCV_SBI_CPUIDLE if CPU_IDLE && RISCV_SBI
66         help
67           This enables support for QEMU Virt Machine.
68
69 config ARCH_CANAAN
70         def_bool SOC_CANAAN
71
72 config SOC_CANAAN
73         bool "Canaan Kendryte K210 SoC"
74         depends on !MMU
75         select CLINT_TIMER if RISCV_M_MODE
76         select ARCH_HAS_RESET_CONTROLLER
77         select PINCTRL
78         select COMMON_CLK
79         help
80           This enables support for Canaan Kendryte K210 SoC platform hardware.
81
82 if ARCH_CANAAN
83
84 config ARCH_CANAAN_K210_DTB_BUILTIN
85         def_bool SOC_CANAAN_K210_DTB_BUILTIN
86
87 config SOC_CANAAN_K210_DTB_BUILTIN
88         bool "Builtin device tree for the Canaan Kendryte K210"
89         depends on ARCH_CANAAN
90         default y
91         select OF
92         select BUILTIN_DTB
93         help
94           Build a device tree for the Kendryte K210 into the Linux image.
95           This option should be selected if no bootloader is being used.
96           If unsure, say Y.
97
98 config ARCH_CANAAN_K210_DTB_SOURCE
99         string
100         default SOC_CANAAN_K210_DTB_SOURCE
101
102 config SOC_CANAAN_K210_DTB_SOURCE
103         string "Source file for the Canaan Kendryte K210 builtin DTB"
104         depends on ARCH_CANAAN
105         depends on ARCH_CANAAN_K210_DTB_BUILTIN
106         default "k210_generic"
107         help
108           Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
109           for the DTS file that will be used to produce the DTB linked into the
110           kernel.
111
112 endif # ARCH_CANAAN
113
114 endmenu # "SoC selection"