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