sandbox: imply CONFIG_TEE (TEE uclass)
[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
32 config MICROBLAZE
33         bool "MicroBlaze architecture"
34         select SUPPORT_OF_CONTROL
35         imply CMD_IRQ
36
37 config MIPS
38         bool "MIPS architecture"
39         select HAVE_ARCH_IOREMAP
40         select HAVE_PRIVATE_LIBGCC
41         select SUPPORT_OF_CONTROL
42
43 config NDS32
44         bool "NDS32 architecture"
45         select SUPPORT_OF_CONTROL
46
47 config NIOS2
48         bool "Nios II architecture"
49         select CPU
50         select DM
51         select OF_CONTROL
52         select SUPPORT_OF_CONTROL
53         imply CMD_DM
54
55 config PPC
56         bool "PowerPC architecture"
57         select HAVE_PRIVATE_LIBGCC
58         select SUPPORT_OF_CONTROL
59         select SYS_BOOT_GET_CMDLINE
60         select SYS_BOOT_GET_KBD
61
62 config RISCV
63         bool "RISC-V architecture"
64         select SUPPORT_OF_CONTROL
65         select OF_CONTROL
66         select DM
67         imply DM_SERIAL
68         imply DM_ETH
69         imply DM_MMC
70         imply DM_SPI
71         imply DM_SPI_FLASH
72         imply BLK
73         imply CLK
74         imply MTD
75         imply TIMER
76         imply CMD_DM
77
78 config SANDBOX
79         bool "Sandbox"
80         select BOARD_LATE_INIT
81         select DM
82         select DM_GPIO
83         select DM_I2C
84         select DM_KEYBOARD
85         select DM_MMC
86         select DM_SERIAL
87         select DM_SPI
88         select DM_SPI_FLASH
89         select HAVE_BLOCK_DEVICE
90         select LZO
91         select SPI
92         select SUPPORT_OF_CONTROL
93         imply BITREVERSE
94         imply CMD_DM
95         imply CMD_GETTIME
96         imply CMD_HASH
97         imply CMD_IO
98         imply CMD_IOTRACE
99         imply CMD_LZMADEC
100         imply CMD_SATA
101         imply CMD_SF_TEST
102         imply CRC32_VERIFY
103         imply FAT_WRITE
104         imply FIRMWARE
105         imply HASH_VERIFY
106         imply LZMA
107         imply SCSI
108         imply TEE
109
110 config SH
111         bool "SuperH architecture"
112         select HAVE_PRIVATE_LIBGCC
113
114 config X86
115         bool "x86 architecture"
116         select CREATE_ARCH_SYMLINK
117         select DM
118         select DM_PCI
119         select HAVE_PRIVATE_LIBGCC
120         select OF_CONTROL
121         select PCI
122         select SUPPORT_OF_CONTROL
123         select TIMER
124         select USE_PRIVATE_LIBGCC
125         select X86_TSC_TIMER
126         imply BLK
127         imply CMD_DM
128         imply CMD_FPGA_LOADMK
129         imply CMD_GETTIME
130         imply CMD_IO
131         imply CMD_IRQ
132         imply CMD_PCI
133         imply CMD_SF_TEST
134         imply CMD_ZBOOT
135         imply DM_ETH
136         imply DM_GPIO
137         imply DM_KEYBOARD
138         imply DM_MMC
139         imply DM_RTC
140         imply DM_SCSI
141         imply DM_SERIAL
142         imply DM_SPI
143         imply DM_SPI_FLASH
144         imply DM_USB
145         imply DM_VIDEO
146         imply SYSRESET
147         imply SYSRESET_X86
148         imply USB_ETHER_ASIX
149         imply USB_ETHER_SMSC95XX
150         imply USB_HOST_ETHER
151
152 config XTENSA
153         bool "Xtensa architecture"
154         select CREATE_ARCH_SYMLINK
155         select SUPPORT_OF_CONTROL
156
157 endchoice
158
159 config SYS_ARCH
160         string
161         help
162           This option should contain the architecture name to build the
163           appropriate arch/<CONFIG_SYS_ARCH> directory.
164           All the architectures should specify this option correctly.
165
166 config SYS_CPU
167         string
168         help
169           This option should contain the CPU name to build the correct
170           arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory.
171
172           This is optional.  For those targets without the CPU directory,
173           leave this option empty.
174
175 config SYS_SOC
176         string
177         help
178           This option should contain the SoC name to build the directory
179           arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>.
180
181           This is optional.  For those targets without the SoC directory,
182           leave this option empty.
183
184 config SYS_VENDOR
185         string
186         help
187           This option should contain the vendor name of the target board.
188           If it is set and
189           board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common
190           directory is compiled.
191           If CONFIG_SYS_BOARD is also set, the sources under
192           board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled.
193
194           This is optional.  For those targets without the vendor directory,
195           leave this option empty.
196
197 config SYS_BOARD
198         string
199         help
200           This option should contain the name of the target board.
201           If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
202           or board/<CONFIG_SYS_BOARD> directory is compiled depending on
203           whether CONFIG_SYS_VENDOR is set or not.
204
205           This is optional.  For those targets without the board directory,
206           leave this option empty.
207
208 config SYS_CONFIG_NAME
209         string
210         help
211           This option should contain the base name of board header file.
212           The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h
213           should be included from include/config.h.
214
215 source "arch/arc/Kconfig"
216 source "arch/arm/Kconfig"
217 source "arch/m68k/Kconfig"
218 source "arch/microblaze/Kconfig"
219 source "arch/mips/Kconfig"
220 source "arch/nds32/Kconfig"
221 source "arch/nios2/Kconfig"
222 source "arch/powerpc/Kconfig"
223 source "arch/sandbox/Kconfig"
224 source "arch/sh/Kconfig"
225 source "arch/x86/Kconfig"
226 source "arch/xtensa/Kconfig"
227 source "arch/riscv/Kconfig"