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