dm: Add a No-op uclass
[project/bcm63xx/u-boot.git] / arch / Kconfig
1 config CREATE_ARCH_SYMLINK
2 bool
3
4 config HAVE_ARCH_IOREMAP
5 bool
6
7 choice
8 prompt "Architecture select"
9 default SANDBOX
10
11 config ARC
12 bool "ARC architecture"
13 select ARCH_EARLY_INIT_R
14 select ARC_TIMER
15 select CLK
16 select HAVE_PRIVATE_LIBGCC
17 select SUPPORT_OF_CONTROL
18 select TIMER
19
20 config ARM
21 bool "ARM architecture"
22 select CREATE_ARCH_SYMLINK
23 select HAVE_PRIVATE_LIBGCC if !ARM64
24 select SUPPORT_OF_CONTROL
25
26 config M68K
27 bool "M68000 architecture"
28 select HAVE_PRIVATE_LIBGCC
29 select SYS_BOOT_GET_CMDLINE
30 select SYS_BOOT_GET_KBD
31 select SUPPORT_OF_CONTROL
32
33 config MICROBLAZE
34 bool "MicroBlaze architecture"
35 select SUPPORT_OF_CONTROL
36 imply CMD_IRQ
37
38 config MIPS
39 bool "MIPS architecture"
40 select HAVE_ARCH_IOREMAP
41 select HAVE_PRIVATE_LIBGCC
42 select SUPPORT_OF_CONTROL
43
44 config NDS32
45 bool "NDS32 architecture"
46 select SUPPORT_OF_CONTROL
47
48 config NIOS2
49 bool "Nios II architecture"
50 select CPU
51 select DM
52 select OF_CONTROL
53 select SUPPORT_OF_CONTROL
54 imply CMD_DM
55
56 config PPC
57 bool "PowerPC architecture"
58 select HAVE_PRIVATE_LIBGCC
59 select SUPPORT_OF_CONTROL
60 select SYS_BOOT_GET_CMDLINE
61 select SYS_BOOT_GET_KBD
62
63 config RISCV
64 bool "RISC-V architecture"
65 select CREATE_ARCH_SYMLINK
66 select SUPPORT_OF_CONTROL
67 select OF_CONTROL
68 select DM
69 imply DM_SERIAL
70 imply DM_ETH
71 imply DM_MMC
72 imply DM_SPI
73 imply DM_SPI_FLASH
74 imply BLK
75 imply CLK
76 imply MTD
77 imply TIMER
78 imply CMD_DM
79
80 config SANDBOX
81 bool "Sandbox"
82 select BOARD_LATE_INIT
83 select DM
84 select DM_GPIO
85 select DM_I2C
86 select DM_KEYBOARD
87 select DM_MMC
88 select DM_SERIAL
89 select DM_SPI
90 select DM_SPI_FLASH
91 select HAVE_BLOCK_DEVICE
92 select LZO
93 select SPI
94 select SUPPORT_OF_CONTROL
95 imply BITREVERSE
96 select BLOBLIST
97 imply CMD_DM
98 imply CMD_GETTIME
99 imply CMD_HASH
100 imply CMD_IO
101 imply CMD_IOTRACE
102 imply CMD_LZMADEC
103 imply CMD_SATA
104 imply CMD_SF
105 imply CMD_SF_TEST
106 imply CRC32_VERIFY
107 imply FAT_WRITE
108 imply FIRMWARE
109 imply HASH_VERIFY
110 imply LZMA
111 imply SCSI
112 imply TEE
113 imply AVB_VERIFY
114 imply LIBAVB
115 imply CMD_AVB
116 imply UDP_FUNCTION_FASTBOOT
117 imply VIRTIO_MMIO
118 imply VIRTIO_PCI
119 imply VIRTIO_SANDBOX
120 imply VIRTIO_BLK
121 imply VIRTIO_NET
122 imply DM_SOUND
123 imply PCH
124
125 config SH
126 bool "SuperH architecture"
127 select HAVE_PRIVATE_LIBGCC
128
129 config X86
130 bool "x86 architecture"
131 select SUPPORT_SPL
132 select SUPPORT_TPL
133 select CREATE_ARCH_SYMLINK
134 select DM
135 select DM_PCI
136 select HAVE_ARCH_IOMAP
137 select HAVE_PRIVATE_LIBGCC
138 select OF_CONTROL
139 select PCI
140 select SUPPORT_OF_CONTROL
141 select TIMER
142 select USE_PRIVATE_LIBGCC
143 select X86_TSC_TIMER
144 imply BLK
145 imply CMD_DM
146 imply CMD_FPGA_LOADMK
147 imply CMD_GETTIME
148 imply CMD_IO
149 imply CMD_IRQ
150 imply CMD_PCI
151 imply CMD_SF
152 imply CMD_SF_TEST
153 imply CMD_ZBOOT
154 imply DM_ETH
155 imply DM_GPIO
156 imply DM_KEYBOARD
157 imply DM_MMC
158 imply DM_RTC
159 imply DM_SCSI
160 imply DM_SERIAL
161 imply DM_SPI
162 imply DM_SPI_FLASH
163 imply DM_USB
164 imply DM_VIDEO
165 imply SYSRESET
166 imply SPL_SYSRESET
167 imply SYSRESET_X86
168 imply USB_ETHER_ASIX
169 imply USB_ETHER_SMSC95XX
170 imply USB_HOST_ETHER
171 imply PCH
172 imply RTC_MC146818
173
174 # Thing to enable for when SPL/TPL are enabled: SPL
175 imply SPL_DM
176 imply SPL_OF_LIBFDT
177 imply SPL_DRIVERS_MISC_SUPPORT
178 imply SPL_GPIO_SUPPORT
179 imply SPL_LIBCOMMON_SUPPORT
180 imply SPL_LIBGENERIC_SUPPORT
181 imply SPL_SERIAL_SUPPORT
182 imply SPL_SPI_FLASH_SUPPORT
183 imply SPL_SPI_SUPPORT
184 imply SPL_OF_CONTROL
185 imply SPL_TIMER
186 imply SPL_REGMAP
187 imply SPL_SYSCON
188 # TPL
189 imply TPL_DM
190 imply TPL_OF_LIBFDT
191 imply TPL_DRIVERS_MISC_SUPPORT
192 imply TPL_GPIO_SUPPORT
193 imply TPL_LIBCOMMON_SUPPORT
194 imply TPL_LIBGENERIC_SUPPORT
195 imply TPL_SERIAL_SUPPORT
196 imply TPL_SPI_FLASH_SUPPORT
197 imply TPL_SPI_SUPPORT
198 imply TPL_OF_CONTROL
199 imply TPL_TIMER
200 imply TPL_REGMAP
201 imply TPL_SYSCON
202
203 config XTENSA
204 bool "Xtensa architecture"
205 select CREATE_ARCH_SYMLINK
206 select SUPPORT_OF_CONTROL
207
208 endchoice
209
210 config SYS_ARCH
211 string
212 help
213 This option should contain the architecture name to build the
214 appropriate arch/<CONFIG_SYS_ARCH> directory.
215 All the architectures should specify this option correctly.
216
217 config SYS_CPU
218 string
219 help
220 This option should contain the CPU name to build the correct
221 arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory.
222
223 This is optional. For those targets without the CPU directory,
224 leave this option empty.
225
226 config SYS_SOC
227 string
228 help
229 This option should contain the SoC name to build the directory
230 arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>.
231
232 This is optional. For those targets without the SoC directory,
233 leave this option empty.
234
235 config SYS_VENDOR
236 string
237 help
238 This option should contain the vendor name of the target board.
239 If it is set and
240 board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common
241 directory is compiled.
242 If CONFIG_SYS_BOARD is also set, the sources under
243 board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled.
244
245 This is optional. For those targets without the vendor directory,
246 leave this option empty.
247
248 config SYS_BOARD
249 string
250 help
251 This option should contain the name of the target board.
252 If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
253 or board/<CONFIG_SYS_BOARD> directory is compiled depending on
254 whether CONFIG_SYS_VENDOR is set or not.
255
256 This is optional. For those targets without the board directory,
257 leave this option empty.
258
259 config SYS_CONFIG_NAME
260 string
261 help
262 This option should contain the base name of board header file.
263 The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h
264 should be included from include/config.h.
265
266 config SYS_DISABLE_DCACHE_OPS
267 bool
268 help
269 This option disables dcache flush and dcache invalidation
270 operations. For example, on coherent systems where cache
271 operatios are not required, enable this option to avoid them.
272 Note that, its up to the individual architectures to implement
273 this functionality.
274
275 source "arch/arc/Kconfig"
276 source "arch/arm/Kconfig"
277 source "arch/m68k/Kconfig"
278 source "arch/microblaze/Kconfig"
279 source "arch/mips/Kconfig"
280 source "arch/nds32/Kconfig"
281 source "arch/nios2/Kconfig"
282 source "arch/powerpc/Kconfig"
283 source "arch/sandbox/Kconfig"
284 source "arch/sh/Kconfig"
285 source "arch/x86/Kconfig"
286 source "arch/xtensa/Kconfig"
287 source "arch/riscv/Kconfig"