Merge git://git.denx.de/u-boot-x86
[oweals/u-boot.git] / arch / Kconfig
1 config CREATE_ARCH_SYMLINK
2         bool
3
4 config HAVE_ARCH_IOREMAP
5         bool
6
7 choice
8         prompt "Architecture select"
9         default SANDBOX
10
11 config 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
20 config ARM
21         bool "ARM architecture"
22         select CREATE_ARCH_SYMLINK
23         select HAVE_PRIVATE_LIBGCC if !ARM64
24         select SUPPORT_OF_CONTROL
25
26 config M68K
27         bool "M68000 architecture"
28         select HAVE_PRIVATE_LIBGCC
29         select SYS_BOOT_GET_CMDLINE
30         select SYS_BOOT_GET_KBD
31
32 config MICROBLAZE
33         bool "MicroBlaze architecture"
34         select SUPPORT_OF_CONTROL
35         imply CMD_IRQ
36
37 config MIPS
38         bool "MIPS architecture"
39         select HAVE_ARCH_IOREMAP
40         select HAVE_PRIVATE_LIBGCC
41         select SUPPORT_OF_CONTROL
42
43 config NDS32
44         bool "NDS32 architecture"
45         select SUPPORT_OF_CONTROL
46
47 config NIOS2
48         bool "Nios II architecture"
49         select SUPPORT_OF_CONTROL
50         select OF_CONTROL
51         select DM
52         select CPU
53
54 config 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
61 config RISCV
62         bool "riscv architecture"
63         select SUPPORT_OF_CONTROL
64
65 config 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 SPI
79         select LZO
80         imply CMD_GETTIME
81         imply CMD_HASH
82         imply CMD_IO
83         imply CMD_IOTRACE
84         imply CMD_LZMADEC
85         imply CRC32_VERIFY
86         imply FAT_WRITE
87         imply HASH_VERIFY
88         imply LZMA
89         imply SCSI
90         imply CMD_SATA
91         imply CMD_SF_TEST
92
93 config SH
94         bool "SuperH architecture"
95         select HAVE_PRIVATE_LIBGCC
96
97 config X86
98         bool "x86 architecture"
99         select CREATE_ARCH_SYMLINK
100         select HAVE_PRIVATE_LIBGCC
101         select USE_PRIVATE_LIBGCC
102         select SUPPORT_OF_CONTROL
103         select OF_CONTROL
104         select DM
105         select DM_PCI
106         select PCI
107         select TIMER
108         select X86_TSC_TIMER
109         imply BLK
110         imply DM_ETH
111         imply DM_GPIO
112         imply DM_KEYBOARD
113         imply DM_MMC
114         imply DM_RTC
115         imply DM_SERIAL
116         imply DM_SCSI
117         imply DM_SPI
118         imply DM_SPI_FLASH
119         imply DM_USB
120         imply DM_VIDEO
121         imply SYSRESET
122         imply SYSRESET_X86
123         imply CMD_FPGA_LOADMK
124         imply CMD_GETTIME
125         imply CMD_IO
126         imply CMD_IRQ
127         imply CMD_PCI
128         imply CMD_SF_TEST
129         imply CMD_ZBOOT
130         imply USB_HOST_ETHER
131         imply USB_ETHER_ASIX
132         imply USB_ETHER_SMSC95XX
133
134 config XTENSA
135         bool "Xtensa architecture"
136         select CREATE_ARCH_SYMLINK
137         select SUPPORT_OF_CONTROL
138
139 endchoice
140
141 config SYS_ARCH
142         string
143         help
144           This option should contain the architecture name to build the
145           appropriate arch/<CONFIG_SYS_ARCH> directory.
146           All the architectures should specify this option correctly.
147
148 config SYS_CPU
149         string
150         help
151           This option should contain the CPU name to build the correct
152           arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU> directory.
153
154           This is optional.  For those targets without the CPU directory,
155           leave this option empty.
156
157 config SYS_SOC
158         string
159         help
160           This option should contain the SoC name to build the directory
161           arch/<CONFIG_SYS_ARCH>/cpu/<CONFIG_SYS_CPU>/<CONFIG_SYS_SOC>.
162
163           This is optional.  For those targets without the SoC directory,
164           leave this option empty.
165
166 config SYS_VENDOR
167         string
168         help
169           This option should contain the vendor name of the target board.
170           If it is set and
171           board/<CONFIG_SYS_VENDOR>/common/Makefile exists, the vendor common
172           directory is compiled.
173           If CONFIG_SYS_BOARD is also set, the sources under
174           board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD> directory are compiled.
175
176           This is optional.  For those targets without the vendor directory,
177           leave this option empty.
178
179 config SYS_BOARD
180         string
181         help
182           This option should contain the name of the target board.
183           If it is set, either board/<CONFIG_SYS_VENDOR>/<CONFIG_SYS_BOARD>
184           or board/<CONFIG_SYS_BOARD> directory is compiled depending on
185           whether CONFIG_SYS_VENDOR is set or not.
186
187           This is optional.  For those targets without the board directory,
188           leave this option empty.
189
190 config SYS_CONFIG_NAME
191         string
192         help
193           This option should contain the base name of board header file.
194           The header file include/configs/<CONFIG_SYS_CONFIG_NAME>.h
195           should be included from include/config.h.
196
197 source "arch/arc/Kconfig"
198 source "arch/arm/Kconfig"
199 source "arch/m68k/Kconfig"
200 source "arch/microblaze/Kconfig"
201 source "arch/mips/Kconfig"
202 source "arch/nds32/Kconfig"
203 source "arch/nios2/Kconfig"
204 source "arch/powerpc/Kconfig"
205 source "arch/sandbox/Kconfig"
206 source "arch/sh/Kconfig"
207 source "arch/x86/Kconfig"
208 source "arch/xtensa/Kconfig"
209 source "arch/riscv/Kconfig"