1 menu "MIPS architecture"
8 default "mips32" if CPU_MIPS32
9 default "mips64" if CPU_MIPS64
12 prompt "Target select"
15 config TARGET_QEMU_MIPS
16 bool "Support qemu-mips"
17 select SUPPORTS_BIG_ENDIAN
18 select SUPPORTS_LITTLE_ENDIAN
19 select SUPPORTS_CPU_MIPS32_R1
20 select SUPPORTS_CPU_MIPS32_R2
21 select SUPPORTS_CPU_MIPS64_R1
22 select SUPPORTS_CPU_MIPS64_R2
23 select ROM_EXCEPTION_VECTORS
29 select DYNAMIC_IO_PORT_BASE
34 select SUPPORTS_BIG_ENDIAN
35 select SUPPORTS_LITTLE_ENDIAN
36 select SUPPORTS_CPU_MIPS32_R1
37 select SUPPORTS_CPU_MIPS32_R2
38 select SUPPORTS_CPU_MIPS32_R6
39 select SUPPORTS_CPU_MIPS64_R1
40 select SUPPORTS_CPU_MIPS64_R2
41 select SUPPORTS_CPU_MIPS64_R6
43 select MIPS_L1_CACHE_SHIFT_6
44 select ROM_EXCEPTION_VECTORS
48 select SUPPORTS_BIG_ENDIAN
49 select SUPPORTS_CPU_MIPS32_R1
50 select SUPPORTS_CPU_MIPS32_R2
51 select SYS_MIPS_CACHE_INIT_RAM_LOAD
52 select ROM_EXCEPTION_VECTORS
54 config TARGET_DBAU1X00
55 bool "Support dbau1x00"
56 select SUPPORTS_BIG_ENDIAN
57 select SUPPORTS_LITTLE_ENDIAN
58 select SUPPORTS_CPU_MIPS32_R1
59 select SUPPORTS_CPU_MIPS32_R2
60 select SYS_MIPS_CACHE_INIT_RAM_LOAD
61 select ROM_EXCEPTION_VECTORS
66 select SUPPORTS_LITTLE_ENDIAN
67 select SUPPORTS_CPU_MIPS32_R1
68 select SUPPORTS_CPU_MIPS32_R2
69 select SYS_MIPS_CACHE_INIT_RAM_LOAD
70 select ROM_EXCEPTION_VECTORS
74 bool "Support QCA/Atheros ath79"
79 bool "Support BMIPS SoCs"
88 bool "Support Microchip PIC32"
98 select MIPS_L1_CACHE_SHIFT_6
100 select OF_BOARD_SETUP
101 select SUPPORTS_BIG_ENDIAN
102 select SUPPORTS_LITTLE_ENDIAN
103 select SUPPORTS_CPU_MIPS32_R1
104 select SUPPORTS_CPU_MIPS32_R2
105 select SUPPORTS_CPU_MIPS32_R6
106 select SUPPORTS_CPU_MIPS64_R1
107 select SUPPORTS_CPU_MIPS64_R2
108 select SUPPORTS_CPU_MIPS64_R6
109 select ROM_EXCEPTION_VECTORS
111 config TARGET_XILFPGA
112 bool "Support Imagination Xilfpga"
118 select SUPPORTS_LITTLE_ENDIAN
119 select SUPPORTS_CPU_MIPS32_R1
120 select SUPPORTS_CPU_MIPS32_R2
121 select MIPS_L1_CACHE_SHIFT_4
122 select ROM_EXCEPTION_VECTORS
124 This supports IMGTEC MIPSfpga platform
128 source "board/dbau1x00/Kconfig"
129 source "board/imgtec/boston/Kconfig"
130 source "board/imgtec/malta/Kconfig"
131 source "board/imgtec/xilfpga/Kconfig"
132 source "board/micronas/vct/Kconfig"
133 source "board/pb1x00/Kconfig"
134 source "board/qemu-mips/Kconfig"
135 source "arch/mips/mach-ath79/Kconfig"
136 source "arch/mips/mach-bmips/Kconfig"
137 source "arch/mips/mach-pic32/Kconfig"
142 prompt "Endianness selection"
144 Some MIPS boards can be configured for either little or big endian
145 byte order. These modes require different U-Boot images. In general there
146 is one preferred byteorder for a particular system but some systems are
147 just as commonly used in the one or the other endianness.
149 config SYS_BIG_ENDIAN
151 depends on SUPPORTS_BIG_ENDIAN
153 config SYS_LITTLE_ENDIAN
155 depends on SUPPORTS_LITTLE_ENDIAN
160 prompt "CPU selection"
161 default CPU_MIPS32_R2
164 bool "MIPS32 Release 1"
165 depends on SUPPORTS_CPU_MIPS32_R1
168 Choose this option to build an U-Boot for release 1 through 5 of the
172 bool "MIPS32 Release 2"
173 depends on SUPPORTS_CPU_MIPS32_R2
176 Choose this option to build an U-Boot for release 2 through 5 of the
180 bool "MIPS32 Release 6"
181 depends on SUPPORTS_CPU_MIPS32_R6
184 Choose this option to build an U-Boot for release 6 or later of the
188 bool "MIPS64 Release 1"
189 depends on SUPPORTS_CPU_MIPS64_R1
192 Choose this option to build a kernel for release 1 through 5 of the
196 bool "MIPS64 Release 2"
197 depends on SUPPORTS_CPU_MIPS64_R2
200 Choose this option to build a kernel for release 2 through 5 of the
204 bool "MIPS64 Release 6"
205 depends on SUPPORTS_CPU_MIPS64_R6
208 Choose this option to build a kernel for release 6 or later of the
215 config ROM_EXCEPTION_VECTORS
216 bool "Build U-Boot image with exception vectors"
218 Enable this to include exception vectors in the U-Boot image. This is
219 required if the U-Boot entry point is equal to the address of the
220 CPU reset exception vector (e.g. U-Boot as ROM loader in Qemu,
221 U-Boot booted from parallel NOR flash).
222 Disable this, if the U-Boot image is booted from DRAM (e.g. by SPL).
223 In that case the image size will be reduced by 0x500 bytes.
226 hex "MIPS CM GCR Base Address"
228 default 0x16100000 if TARGET_BOSTON
231 The physical base address at which to map the MIPS Coherence Manager
232 Global Configuration Registers (GCRs). This should be set such that
233 the GCRs occupy a region of the physical address space which is
234 otherwise unused, or at minimum that software doesn't need to access.
238 menu "OS boot interface"
240 config MIPS_BOOT_CMDLINE_LEGACY
241 bool "Hand over legacy command line to Linux kernel"
244 Enable this option if you want U-Boot to hand over the Yamon-style
245 command line to the kernel. All bootargs will be prepared as argc/argv
246 compatible list. The argument count (argc) is stored in register $a0.
247 The address of the argument list (argv) is stored in register $a1.
249 config MIPS_BOOT_ENV_LEGACY
250 bool "Hand over legacy environment to Linux kernel"
253 Enable this option if you want U-Boot to hand over the Yamon-style
254 environment to the kernel. Information like memory size, initrd
255 address and size will be prepared as zero-terminated key/value list.
256 The address of the environment is stored in register $a2.
259 bool "Hand over a flattened device tree to Linux kernel"
262 Enable this option if you want U-Boot to hand over a flattened
263 device tree to the kernel. According to UHI register $a0 will be set
264 to -2 and the FDT address is stored in $a1.
268 config SUPPORTS_BIG_ENDIAN
271 config SUPPORTS_LITTLE_ENDIAN
274 config SUPPORTS_CPU_MIPS32_R1
277 config SUPPORTS_CPU_MIPS32_R2
280 config SUPPORTS_CPU_MIPS32_R6
283 config SUPPORTS_CPU_MIPS64_R1
286 config SUPPORTS_CPU_MIPS64_R2
289 config SUPPORTS_CPU_MIPS64_R6
294 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R6
298 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
303 config MIPS_TUNE_14KC
306 config MIPS_TUNE_24KC
309 config MIPS_TUNE_34KC
312 config MIPS_TUNE_74KC
324 config SYS_MIPS_CACHE_INIT_RAM_LOAD
327 config MIPS_INIT_STACK_IN_SRAM
331 Select this if the initial stack frame could be setup in SRAM.
332 Normally the initial stack frame is set up in DRAM which is often
333 only available after lowlevel_init. With this option the initial
334 stack frame and the early C environment is set up before
335 lowlevel_init. Thus lowlevel_init does not need to be implemented
338 config SYS_DCACHE_SIZE
342 The total size of the L1 Dcache, if known at compile time.
344 config SYS_DCACHE_LINE_SIZE
348 The size of L1 Dcache lines, if known at compile time.
350 config SYS_ICACHE_SIZE
354 The total size of the L1 ICache, if known at compile time.
356 config SYS_ICACHE_LINE_SIZE
360 The size of L1 Icache lines, if known at compile time.
362 config SYS_CACHE_SIZE_AUTO
363 def_bool y if SYS_DCACHE_SIZE = 0 && SYS_ICACHE_SIZE = 0 && \
364 SYS_DCACHE_LINE_SIZE = 0 && SYS_ICACHE_LINE_SIZE = 0
366 Select this (or let it be auto-selected by not defining any cache
367 sizes) in order to allow U-Boot to automatically detect the sizes
368 of caches at runtime. This has a small cost in code size & runtime
369 so if you know the cache configuration for your system at compile
370 time it would be beneficial to configure it.
372 config MIPS_L1_CACHE_SHIFT_4
375 config MIPS_L1_CACHE_SHIFT_5
378 config MIPS_L1_CACHE_SHIFT_6
381 config MIPS_L1_CACHE_SHIFT_7
384 config MIPS_L1_CACHE_SHIFT
386 default "7" if MIPS_L1_CACHE_SHIFT_7
387 default "6" if MIPS_L1_CACHE_SHIFT_6
388 default "5" if MIPS_L1_CACHE_SHIFT_5
389 default "4" if MIPS_L1_CACHE_SHIFT_4
395 Select this if your system includes an L2 cache and you want U-Boot
396 to initialise & maintain it.
398 config DYNAMIC_IO_PORT_BASE
404 Select this if your system contains a MIPS Coherence Manager and you
405 wish U-Boot to configure it or make use of it to retrieve system
406 information such as cache configuration.