summaryrefslogtreecommitdiffstats
path: root/arch/riscv/Kconfig.socs
diff options
context:
space:
mode:
Diffstat (limited to 'arch/riscv/Kconfig.socs')
-rw-r--r--arch/riscv/Kconfig.socs114
1 files changed, 114 insertions, 0 deletions
diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs
new file mode 100644
index 0000000000..30fd6a5128
--- /dev/null
+++ b/arch/riscv/Kconfig.socs
@@ -0,0 +1,114 @@
+menu "SoC selection"
+
+config ARCH_MICROCHIP_POLARFIRE
+ def_bool SOC_MICROCHIP_POLARFIRE
+
+config SOC_MICROCHIP_POLARFIRE
+ bool "Microchip PolarFire SoCs"
+ help
+ This enables support for Microchip PolarFire SoC platforms.
+
+config ARCH_RENESAS
+ bool "Renesas RISC-V SoCs"
+ help
+ This enables support for the RISC-V based Renesas SoCs.
+
+config ARCH_SIFIVE
+ def_bool SOC_SIFIVE
+
+config SOC_SIFIVE
+ bool "SiFive SoCs"
+ select ERRATA_SIFIVE if !XIP_KERNEL
+ help
+ This enables support for SiFive SoC platform hardware.
+
+config ARCH_STARFIVE
+ def_bool SOC_STARFIVE
+
+config SOC_STARFIVE
+ bool "StarFive SoCs"
+ select PINCTRL
+ select RESET_CONTROLLER
+ select ARM_AMBA
+ help
+ This enables support for StarFive SoC platform hardware.
+
+config ARCH_SUNXI
+ bool "Allwinner sun20i SoCs"
+ depends on MMU && !XIP_KERNEL
+ select ERRATA_THEAD
+ select SUN4I_TIMER
+ help
+ This enables support for Allwinner sun20i platform hardware,
+ including boards based on the D1 and D1s SoCs.
+
+config ARCH_THEAD
+ bool "T-HEAD RISC-V SoCs"
+ depends on MMU && !XIP_KERNEL
+ select ERRATA_THEAD
+ help
+ This enables support for the RISC-V based T-HEAD SoCs.
+
+config ARCH_VIRT
+ def_bool SOC_VIRT
+
+config SOC_VIRT
+ bool "QEMU Virt Machine"
+ select CLINT_TIMER if RISCV_M_MODE
+ select POWER_RESET
+ select POWER_RESET_SYSCON
+ select POWER_RESET_SYSCON_POWEROFF
+ select GOLDFISH
+ select RTC_DRV_GOLDFISH if RTC_CLASS
+ select PM_GENERIC_DOMAINS if PM
+ select PM_GENERIC_DOMAINS_OF if PM && OF
+ select RISCV_SBI_CPUIDLE if CPU_IDLE && RISCV_SBI
+ help
+ This enables support for QEMU Virt Machine.
+
+config ARCH_CANAAN
+ def_bool SOC_CANAAN
+
+config SOC_CANAAN
+ bool "Canaan Kendryte K210 SoC"
+ depends on !MMU
+ select CLINT_TIMER if RISCV_M_MODE
+ select ARCH_HAS_RESET_CONTROLLER
+ select PINCTRL
+ select COMMON_CLK
+ help
+ This enables support for Canaan Kendryte K210 SoC platform hardware.
+
+if ARCH_CANAAN
+
+config ARCH_CANAAN_K210_DTB_BUILTIN
+ def_bool SOC_CANAAN_K210_DTB_BUILTIN
+
+config SOC_CANAAN_K210_DTB_BUILTIN
+ bool "Builtin device tree for the Canaan Kendryte K210"
+ depends on ARCH_CANAAN
+ default y
+ select OF
+ select BUILTIN_DTB
+ help
+ Build a device tree for the Kendryte K210 into the Linux image.
+ This option should be selected if no bootloader is being used.
+ If unsure, say Y.
+
+config ARCH_CANAAN_K210_DTB_SOURCE
+ string
+ default SOC_CANAAN_K210_DTB_SOURCE
+
+config SOC_CANAAN_K210_DTB_SOURCE
+ string "Source file for the Canaan Kendryte K210 builtin DTB"
+ depends on ARCH_CANAAN
+ depends on ARCH_CANAAN_K210_DTB_BUILTIN
+ default "k210_generic"
+ help
+ Base name (without suffix, relative to arch/riscv/boot/dts/canaan)
+ for the DTS file that will be used to produce the DTB linked into the
+ kernel.
+
+endif # ARCH_CANAAN
+
+endmenu # "SoC selection"