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