stm32mp1: Fix warnings when compiling with W=1
[oweals/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 PCI_ENDPOINT
94         select SPI
95         select SUPPORT_OF_CONTROL
96         imply BITREVERSE
97         select BLOBLIST
98         imply CMD_DM
99         imply CMD_GETTIME
100         imply CMD_HASH
101         imply CMD_IO
102         imply CMD_IOTRACE
103         imply CMD_LZMADEC
104         imply CMD_SATA
105         imply CMD_SF
106         imply CMD_SF_TEST
107         imply CRC32_VERIFY
108         imply FAT_WRITE
109         imply FIRMWARE
110         imply HASH_VERIFY
111         imply LZMA
112         imply SCSI
113         imply TEE
114         imply AVB_VERIFY
115         imply LIBAVB
116         imply CMD_AVB
117         imply UDP_FUNCTION_FASTBOOT
118         imply VIRTIO_MMIO
119         imply VIRTIO_PCI
120         imply VIRTIO_SANDBOX
121         imply VIRTIO_BLK
122         imply VIRTIO_NET
123         imply DM_SOUND
124         imply PCI_SANDBOX_EP
125         imply PCH
126
127 config SH
128         bool "SuperH architecture"
129         select HAVE_PRIVATE_LIBGCC
130
131 config X86
132         bool "x86 architecture"
133         select SUPPORT_SPL
134         select SUPPORT_TPL
135         select CREATE_ARCH_SYMLINK
136         select DM
137         select DM_PCI
138         select HAVE_ARCH_IOMAP
139         select HAVE_PRIVATE_LIBGCC
140         select OF_CONTROL
141         select PCI
142         select SUPPORT_OF_CONTROL
143         select TIMER
144         select USE_PRIVATE_LIBGCC
145         select X86_TSC_TIMER
146         imply BLK
147         imply CMD_DM
148         imply CMD_FPGA_LOADMK
149         imply CMD_GETTIME
150         imply CMD_IO
151         imply CMD_IRQ
152         imply CMD_PCI
153         imply CMD_SF
154         imply CMD_SF_TEST
155         imply CMD_ZBOOT
156         imply DM_ETH
157         imply DM_GPIO
158         imply DM_KEYBOARD
159         imply DM_MMC
160         imply DM_RTC
161         imply DM_SCSI
162         imply DM_SERIAL
163         imply DM_SPI
164         imply DM_SPI_FLASH
165         imply DM_USB
166         imply DM_VIDEO
167         imply SYSRESET
168         imply SPL_SYSRESET
169         imply SYSRESET_X86
170         imply USB_ETHER_ASIX
171         imply USB_ETHER_SMSC95XX
172         imply USB_HOST_ETHER
173         imply PCH
174         imply RTC_MC146818
175
176         # Thing to enable for when SPL/TPL are enabled: SPL
177         imply SPL_DM
178         imply SPL_OF_LIBFDT
179         imply SPL_DRIVERS_MISC_SUPPORT
180         imply SPL_GPIO_SUPPORT
181         imply SPL_LIBCOMMON_SUPPORT
182         imply SPL_LIBGENERIC_SUPPORT
183         imply SPL_SERIAL_SUPPORT
184         imply SPL_SPI_FLASH_SUPPORT
185         imply SPL_SPI_SUPPORT
186         imply SPL_OF_CONTROL
187         imply SPL_TIMER
188         imply SPL_REGMAP
189         imply SPL_SYSCON
190         # TPL
191         imply TPL_DM
192         imply TPL_OF_LIBFDT
193         imply TPL_DRIVERS_MISC_SUPPORT
194         imply TPL_GPIO_SUPPORT
195         imply TPL_LIBCOMMON_SUPPORT
196         imply TPL_LIBGENERIC_SUPPORT
197         imply TPL_SERIAL_SUPPORT
198         imply TPL_SPI_FLASH_SUPPORT
199         imply TPL_SPI_SUPPORT
200         imply TPL_OF_CONTROL
201         imply TPL_TIMER
202         imply TPL_REGMAP
203         imply TPL_SYSCON
204
205 config XTENSA
206         bool "Xtensa architecture"
207         select CREATE_ARCH_SYMLINK
208         select SUPPORT_OF_CONTROL
209
210 endchoice
211
212 config SYS_ARCH
213         string
214         help
215           This option should contain the architecture name to build the
216           appropriate arch/<CONFIG_SYS_ARCH> directory.
217           All the architectures should specify this option correctly.
218
219 config SYS_CPU
220         string
221         help
222           This option should contain the CPU name to build the correct
223           arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory.
224
225           This is optional.  For those targets without the CPU directory,
226           leave this option empty.
227
228 config SYS_SOC
229         string
230         help
231           This option should contain the SoC name to build the directory
232           arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>.
233
234           This is optional.  For those targets without the SoC directory,
235           leave this option empty.
236
237 config SYS_VENDOR
238         string
239         help
240           This option should contain the vendor name of the target board.
241           If it is set and
242           board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common
243           directory is compiled.
244           If CONFIG_SYS_BOARD is also set, the sources under
245           board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled.
246
247           This is optional.  For those targets without the vendor directory,
248           leave this option empty.
249
250 config SYS_BOARD
251         string
252         help
253           This option should contain the name of the target board.
254           If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
255           or board/<CONFIG_SYS_BOARD> directory is compiled depending on
256           whether CONFIG_SYS_VENDOR is set or not.
257
258           This is optional.  For those targets without the board directory,
259           leave this option empty.
260
261 config SYS_CONFIG_NAME
262         string
263         help
264           This option should contain the base name of board header file.
265           The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h
266           should be included from include/config.h.
267
268 config SYS_DISABLE_DCACHE_OPS
269         bool
270         help
271          This option disables dcache flush and dcache invalidation
272          operations. For example, on coherent systems where cache
273          operatios are not required, enable this option to avoid them.
274          Note that, its up to the individual architectures to implement
275          this functionality.
276
277 source "arch/arc/Kconfig"
278 source "arch/arm/Kconfig"
279 source "arch/m68k/Kconfig"
280 source "arch/microblaze/Kconfig"
281 source "arch/mips/Kconfig"
282 source "arch/nds32/Kconfig"
283 source "arch/nios2/Kconfig"
284 source "arch/powerpc/Kconfig"
285 source "arch/sandbox/Kconfig"
286 source "arch/sh/Kconfig"
287 source "arch/x86/Kconfig"
288 source "arch/xtensa/Kconfig"
289 source "arch/riscv/Kconfig"