Merge git://git.denx.de/u-boot-dm
[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 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
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 CPU
50         select DM
51         select OF_CONTROL
52         select SUPPORT_OF_CONTROL
53         imply CMD_DM
54
55 config 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
62 config RISCV
63         bool "riscv architecture"
64         select SUPPORT_OF_CONTROL
65
66 config 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
97 config SH
98         bool "SuperH architecture"
99         select HAVE_PRIVATE_LIBGCC
100
101 config 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
139 config XTENSA
140         bool "Xtensa architecture"
141         select CREATE_ARCH_SYMLINK
142         select SUPPORT_OF_CONTROL
143
144 endchoice
145
146 config 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
153 config 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
162 config 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
171 config 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
184 config 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
195 config 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
202 source "arch/arc/Kconfig"
203 source "arch/arm/Kconfig"
204 source "arch/m68k/Kconfig"
205 source "arch/microblaze/Kconfig"
206 source "arch/mips/Kconfig"
207 source "arch/nds32/Kconfig"
208 source "arch/nios2/Kconfig"
209 source "arch/powerpc/Kconfig"
210 source "arch/sandbox/Kconfig"
211 source "arch/sh/Kconfig"
212 source "arch/x86/Kconfig"
213 source "arch/xtensa/Kconfig"
214 source "arch/riscv/Kconfig"