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