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 SUPPORTS_BIG_ENDIAN
101 select SUPPORTS_LITTLE_ENDIAN
102 select SUPPORTS_CPU_MIPS32_R1
103 select SUPPORTS_CPU_MIPS32_R2
104 select SUPPORTS_CPU_MIPS32_R6
105 select SUPPORTS_CPU_MIPS64_R1
106 select SUPPORTS_CPU_MIPS64_R2
107 select SUPPORTS_CPU_MIPS64_R6
108 select ROM_EXCEPTION_VECTORS
110 config TARGET_XILFPGA
111 bool "Support Imagination Xilfpga"
117 select SUPPORTS_LITTLE_ENDIAN
118 select SUPPORTS_CPU_MIPS32_R1
119 select SUPPORTS_CPU_MIPS32_R2
120 select MIPS_L1_CACHE_SHIFT_4
121 select ROM_EXCEPTION_VECTORS
123 This supports IMGTEC MIPSfpga platform
127 source "board/dbau1x00/Kconfig"
128 source "board/imgtec/boston/Kconfig"
129 source "board/imgtec/malta/Kconfig"
130 source "board/imgtec/xilfpga/Kconfig"
131 source "board/micronas/vct/Kconfig"
132 source "board/pb1x00/Kconfig"
133 source "board/qemu-mips/Kconfig"
134 source "arch/mips/mach-ath79/Kconfig"
135 source "arch/mips/mach-bmips/Kconfig"
136 source "arch/mips/mach-pic32/Kconfig"
141 prompt "Endianness selection"
143 Some MIPS boards can be configured for either little or big endian
144 byte order. These modes require different U-Boot images. In general there
145 is one preferred byteorder for a particular system but some systems are
146 just as commonly used in the one or the other endianness.
148 config SYS_BIG_ENDIAN
150 depends on SUPPORTS_BIG_ENDIAN
152 config SYS_LITTLE_ENDIAN
154 depends on SUPPORTS_LITTLE_ENDIAN
159 prompt "CPU selection"
160 default CPU_MIPS32_R2
163 bool "MIPS32 Release 1"
164 depends on SUPPORTS_CPU_MIPS32_R1
167 Choose this option to build an U-Boot for release 1 through 5 of the
171 bool "MIPS32 Release 2"
172 depends on SUPPORTS_CPU_MIPS32_R2
175 Choose this option to build an U-Boot for release 2 through 5 of the
179 bool "MIPS32 Release 6"
180 depends on SUPPORTS_CPU_MIPS32_R6
183 Choose this option to build an U-Boot for release 6 or later of the
187 bool "MIPS64 Release 1"
188 depends on SUPPORTS_CPU_MIPS64_R1
191 Choose this option to build a kernel for release 1 through 5 of the
195 bool "MIPS64 Release 2"
196 depends on SUPPORTS_CPU_MIPS64_R2
199 Choose this option to build a kernel for release 2 through 5 of the
203 bool "MIPS64 Release 6"
204 depends on SUPPORTS_CPU_MIPS64_R6
207 Choose this option to build a kernel for release 6 or later of the
214 config ROM_EXCEPTION_VECTORS
215 bool "Build U-Boot image with exception vectors"
217 Enable this to include exception vectors in the U-Boot image. This is
218 required if the U-Boot entry point is equal to the address of the
219 CPU reset exception vector (e.g. U-Boot as ROM loader in Qemu,
220 U-Boot booted from parallel NOR flash).
221 Disable this, if the U-Boot image is booted from DRAM (e.g. by SPL).
222 In that case the image size will be reduced by 0x500 bytes.
225 hex "MIPS CM GCR Base Address"
227 default 0x16100000 if TARGET_BOSTON
230 The physical base address at which to map the MIPS Coherence Manager
231 Global Configuration Registers (GCRs). This should be set such that
232 the GCRs occupy a region of the physical address space which is
233 otherwise unused, or at minimum that software doesn't need to access.
237 menu "OS boot interface"
239 config MIPS_BOOT_CMDLINE_LEGACY
240 bool "Hand over legacy command line to Linux kernel"
243 Enable this option if you want U-Boot to hand over the Yamon-style
244 command line to the kernel. All bootargs will be prepared as argc/argv
245 compatible list. The argument count (argc) is stored in register $a0.
246 The address of the argument list (argv) is stored in register $a1.
248 config MIPS_BOOT_ENV_LEGACY
249 bool "Hand over legacy environment to Linux kernel"
252 Enable this option if you want U-Boot to hand over the Yamon-style
253 environment to the kernel. Information like memory size, initrd
254 address and size will be prepared as zero-terminated key/value list.
255 The address of the environment is stored in register $a2.
258 bool "Hand over a flattened device tree to Linux kernel"
261 Enable this option if you want U-Boot to hand over a flattened
262 device tree to the kernel. According to UHI register $a0 will be set
263 to -2 and the FDT address is stored in $a1.
267 config SUPPORTS_BIG_ENDIAN
270 config SUPPORTS_LITTLE_ENDIAN
273 config SUPPORTS_CPU_MIPS32_R1
276 config SUPPORTS_CPU_MIPS32_R2
279 config SUPPORTS_CPU_MIPS32_R6
282 config SUPPORTS_CPU_MIPS64_R1
285 config SUPPORTS_CPU_MIPS64_R2
288 config SUPPORTS_CPU_MIPS64_R6
293 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R6
297 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6
302 config MIPS_TUNE_14KC
305 config MIPS_TUNE_24KC
308 config MIPS_TUNE_34KC
311 config MIPS_TUNE_74KC
323 config SYS_MIPS_CACHE_INIT_RAM_LOAD
326 config MIPS_INIT_STACK_IN_SRAM
330 Select this if the initial stack frame could be setup in SRAM.
331 Normally the initial stack frame is set up in DRAM which is often
332 only available after lowlevel_init. With this option the initial
333 stack frame and the early C environment is set up before
334 lowlevel_init. Thus lowlevel_init does not need to be implemented
337 config SYS_DCACHE_SIZE
341 The total size of the L1 Dcache, if known at compile time.
343 config SYS_DCACHE_LINE_SIZE
347 The size of L1 Dcache lines, if known at compile time.
349 config SYS_ICACHE_SIZE
353 The total size of the L1 ICache, if known at compile time.
355 config SYS_ICACHE_LINE_SIZE
359 The size of L1 Icache lines, if known at compile time.
361 config SYS_CACHE_SIZE_AUTO
362 def_bool y if SYS_DCACHE_SIZE = 0 && SYS_ICACHE_SIZE = 0 && \
363 SYS_DCACHE_LINE_SIZE = 0 && SYS_ICACHE_LINE_SIZE = 0
365 Select this (or let it be auto-selected by not defining any cache
366 sizes) in order to allow U-Boot to automatically detect the sizes
367 of caches at runtime. This has a small cost in code size & runtime
368 so if you know the cache configuration for your system at compile
369 time it would be beneficial to configure it.
371 config MIPS_L1_CACHE_SHIFT_4
374 config MIPS_L1_CACHE_SHIFT_5
377 config MIPS_L1_CACHE_SHIFT_6
380 config MIPS_L1_CACHE_SHIFT_7
383 config MIPS_L1_CACHE_SHIFT
385 default "7" if MIPS_L1_CACHE_SHIFT_7
386 default "6" if MIPS_L1_CACHE_SHIFT_6
387 default "5" if MIPS_L1_CACHE_SHIFT_5
388 default "4" if MIPS_L1_CACHE_SHIFT_4
394 Select this if your system includes an L2 cache and you want U-Boot
395 to initialise & maintain it.
397 config DYNAMIC_IO_PORT_BASE
403 Select this if your system contains a MIPS Coherence Manager and you
404 wish U-Boot to configure it or make use of it to retrieve system
405 information such as cache configuration.