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