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