blob: 0f03637a66bc8f4b5275d4e6f9329983a915a17f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
|
# SPDX-License-Identifier: GPL-2.0-only
menu "SoC selection"
config SOC_ERIZO
bool "Erizo SoC"
depends on ARCH_RV32I
select HAS_ASM_DEBUG_LL
select HAS_NMON
select USE_COMPRESSED_DTB
select RISCV_M_MODE
select RISCV_TIMER
config BOARD_ERIZO_GENERIC
depends on SOC_ERIZO
def_bool y
config SOC_VIRT
bool "QEMU Virt Machine"
select RISCV_S_MODE
select BOARD_RISCV_GENERIC_DT
select HAS_CACHE
select HAS_ASM_DEBUG_LL
help
Generates an image tht can be be booted by QEMU. The image is called
barebox-dt-2nd.img
config BOARD_RISCV_VIRT
depends on SOC_VIRT
bool "QEMU Virt Machine"
select OF_OVERLAY
select BOARD_QEMU_VIRT
default y
help
Enables environment and state on top of QEMU RISC-V Virt machine
cfi-flash.
config BOARD_RISCVEMU
depends on SOC_VIRT
bool "TinyEMU Virt Machine (riscvemu)"
default y
help
TinyEMU's Virt machine differs from QEMU in poweroff and restart
mechanisms. This adds the necessary support.
config CPU_SIFIVE
bool
select HAS_CACHE
config SOC_SIFIVE
bool "SiFive SoCs"
select CPU_SIFIVE
select RISCV_S_MODE
select CLK_SIFIVE
select CLK_SIFIVE_PRCI
select RISCV_TIMER
select HAS_MACB
select HAS_ASM_DEBUG_LL
help
This enables support for SiFive SoC platform hardware.
if SOC_SIFIVE
config BOARD_HIFIVE
bool "HiFive"
depends on ARCH_RV64I
select USE_COMPRESSED_DTB
endif
config SOC_STARFIVE
bool "StarFive SoCs"
select ARCH_HAS_RESET_CONTROLLER
select RISCV_S_MODE
select HAS_ASM_DEBUG_LL
select HAS_NMON
help
This enables support for SiFive SoC platform hardware.
if SOC_STARFIVE
config SOC_STARFIVE_JH71XX
bool
select CPU_SIFIVE
config SOC_STARFIVE_JH7100
bool
select SOC_STARFIVE_JH71XX
select SIFIVE_L2
help
Unlike JH7110 and later, CPU on the JH7100 are not cache-coherent
with respect to DMA masters like GMAC and DW MMC controller.
Select this if barebox needs to do DMA on this SoC.
config BOARD_BEAGLEV
bool "BeagleV"
depends on ARCH_RV64I
select SOC_STARFIVE_JH71XX
select USE_COMPRESSED_DTB
config BOARD_BEAGLEV_BETA
bool "BeagleV Beta (with JH7100)"
depends on BOARD_BEAGLEV
select SOC_STARFIVE_JH7100
help
Select this for hardware using the earlier JH7100 SoC. The JH7110
used with later production runs is cache-coherent and thus can do
without the special DMA handling enabled by this option. It's safe
to enable this option for other SoCs.
endif
config SOC_ALLWINNER_SUN20I
bool "Allwinner Sun20i SoCs"
depends on ARCH_RV64I
select HAS_ASM_DEBUG_LL
select HAS_CACHE
if SOC_ALLWINNER_SUN20I
config BOARD_ALLWINNER_D1
bool "Allwinner D1 Nezha"
select RISCV_S_MODE
select RISCV_M_MODE
def_bool y
endif
comment "CPU features"
config SIFIVE_L2
bool "SiFive L2 cache controller"
depends on CPU_SIFIVE
config SOC_LITEX
bool "LiteX SoCs"
depends on ARCH_RV32I
select HAS_ASM_DEBUG_LL
select HAS_NMON
select USE_COMPRESSED_DTB
select RISCV_TIMER
config BOARD_LITEX_LINUX
bool "litex linux board"
depends on SOC_LITEX
select RISCV_M_MODE
def_bool y
endmenu
|