1menu "MIPS architecture" 2 depends on MIPS 3 4config SYS_ARCH 5 default "mips" 6 7config SYS_CPU 8 default "mips32" if CPU_MIPS32 9 default "mips64" if CPU_MIPS64 10 11choice 12 prompt "Target select" 13 optional 14 15config TARGET_QEMU_MIPS 16 bool "Support qemu-mips" 17 select ROM_EXCEPTION_VECTORS 18 select SUPPORTS_BIG_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 SUPPORTS_LITTLE_ENDIAN 24 25config TARGET_MALTA 26 bool "Support malta" 27 select DM 28 select DM_SERIAL 29 select DYNAMIC_IO_PORT_BASE 30 select MIPS_CM 31 select MIPS_L1_CACHE_SHIFT_6 32 select MIPS_L2_CACHE 33 select OF_CONTROL 34 select OF_ISA_BUS 35 select ROM_EXCEPTION_VECTORS 36 select SUPPORTS_BIG_ENDIAN 37 select SUPPORTS_CPU_MIPS32_R1 38 select SUPPORTS_CPU_MIPS32_R2 39 select SUPPORTS_CPU_MIPS32_R6 40 select SUPPORTS_CPU_MIPS64_R1 41 select SUPPORTS_CPU_MIPS64_R2 42 select SUPPORTS_CPU_MIPS64_R6 43 select SUPPORTS_LITTLE_ENDIAN 44 select SWAP_IO_SPACE 45 46config TARGET_VCT 47 bool "Support vct" 48 select ROM_EXCEPTION_VECTORS 49 select SUPPORTS_BIG_ENDIAN 50 select SUPPORTS_CPU_MIPS32_R1 51 select SUPPORTS_CPU_MIPS32_R2 52 select SYS_MIPS_CACHE_INIT_RAM_LOAD 53 54config TARGET_DBAU1X00 55 bool "Support dbau1x00" 56 select MIPS_TUNE_4KC 57 select ROM_EXCEPTION_VECTORS 58 select SUPPORTS_BIG_ENDIAN 59 select SUPPORTS_CPU_MIPS32_R1 60 select SUPPORTS_CPU_MIPS32_R2 61 select SUPPORTS_LITTLE_ENDIAN 62 select SYS_MIPS_CACHE_INIT_RAM_LOAD 63 64config TARGET_PB1X00 65 bool "Support pb1x00" 66 select MIPS_TUNE_4KC 67 select ROM_EXCEPTION_VECTORS 68 select SUPPORTS_CPU_MIPS32_R1 69 select SUPPORTS_CPU_MIPS32_R2 70 select SUPPORTS_LITTLE_ENDIAN 71 select SYS_MIPS_CACHE_INIT_RAM_LOAD 72 73config ARCH_ATH79 74 bool "Support QCA/Atheros ath79" 75 select DM 76 select OF_CONTROL 77 78config ARCH_BMIPS 79 bool "Support BMIPS SoCs" 80 select CLK 81 select CPU 82 select DM 83 select OF_CONTROL 84 select RAM 85 select SYSRESET 86 87config MACH_PIC32 88 bool "Support Microchip PIC32" 89 select DM 90 select OF_CONTROL 91 92config TARGET_BOSTON 93 bool "Support Boston" 94 select DM 95 select DM_SERIAL 96 select MIPS_CM 97 select MIPS_L1_CACHE_SHIFT_6 98 select MIPS_L2_CACHE 99 select OF_BOARD_SETUP 100 select OF_CONTROL 101 select ROM_EXCEPTION_VECTORS 102 select SUPPORTS_BIG_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 SUPPORTS_LITTLE_ENDIAN 110 111config TARGET_XILFPGA 112 bool "Support Imagination Xilfpga" 113 select DM 114 select DM_ETH 115 select DM_GPIO 116 select DM_SERIAL 117 select MIPS_L1_CACHE_SHIFT_4 118 select OF_CONTROL 119 select ROM_EXCEPTION_VECTORS 120 select SUPPORTS_CPU_MIPS32_R1 121 select SUPPORTS_CPU_MIPS32_R2 122 select SUPPORTS_LITTLE_ENDIAN 123 help 124 This supports IMGTEC MIPSfpga platform 125 126endchoice 127 128source "board/dbau1x00/Kconfig" 129source "board/imgtec/boston/Kconfig" 130source "board/imgtec/malta/Kconfig" 131source "board/imgtec/xilfpga/Kconfig" 132source "board/micronas/vct/Kconfig" 133source "board/pb1x00/Kconfig" 134source "board/qemu-mips/Kconfig" 135source "arch/mips/mach-ath79/Kconfig" 136source "arch/mips/mach-bmips/Kconfig" 137source "arch/mips/mach-pic32/Kconfig" 138 139if MIPS 140 141choice 142 prompt "Endianness selection" 143 help 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. 148 149config SYS_BIG_ENDIAN 150 bool "Big endian" 151 depends on SUPPORTS_BIG_ENDIAN 152 153config SYS_LITTLE_ENDIAN 154 bool "Little endian" 155 depends on SUPPORTS_LITTLE_ENDIAN 156 157endchoice 158 159choice 160 prompt "CPU selection" 161 default CPU_MIPS32_R2 162 163config CPU_MIPS32_R1 164 bool "MIPS32 Release 1" 165 depends on SUPPORTS_CPU_MIPS32_R1 166 select 32BIT 167 help 168 Choose this option to build an U-Boot for release 1 through 5 of the 169 MIPS32 architecture. 170 171config CPU_MIPS32_R2 172 bool "MIPS32 Release 2" 173 depends on SUPPORTS_CPU_MIPS32_R2 174 select 32BIT 175 help 176 Choose this option to build an U-Boot for release 2 through 5 of the 177 MIPS32 architecture. 178 179config CPU_MIPS32_R6 180 bool "MIPS32 Release 6" 181 depends on SUPPORTS_CPU_MIPS32_R6 182 select 32BIT 183 help 184 Choose this option to build an U-Boot for release 6 or later of the 185 MIPS32 architecture. 186 187config CPU_MIPS64_R1 188 bool "MIPS64 Release 1" 189 depends on SUPPORTS_CPU_MIPS64_R1 190 select 64BIT 191 help 192 Choose this option to build a kernel for release 1 through 5 of the 193 MIPS64 architecture. 194 195config CPU_MIPS64_R2 196 bool "MIPS64 Release 2" 197 depends on SUPPORTS_CPU_MIPS64_R2 198 select 64BIT 199 help 200 Choose this option to build a kernel for release 2 through 5 of the 201 MIPS64 architecture. 202 203config CPU_MIPS64_R6 204 bool "MIPS64 Release 6" 205 depends on SUPPORTS_CPU_MIPS64_R6 206 select 64BIT 207 help 208 Choose this option to build a kernel for release 6 or later of the 209 MIPS64 architecture. 210 211endchoice 212 213menu "General setup" 214 215config ROM_EXCEPTION_VECTORS 216 bool "Build U-Boot image with exception vectors" 217 help 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. 224 225config MIPS_CM_BASE 226 hex "MIPS CM GCR Base Address" 227 depends on MIPS_CM 228 default 0x16100000 if TARGET_BOSTON 229 default 0x1fbf8000 230 help 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. 235 236endmenu 237 238menu "OS boot interface" 239 240config MIPS_BOOT_CMDLINE_LEGACY 241 bool "Hand over legacy command line to Linux kernel" 242 default y 243 help 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. 248 249config MIPS_BOOT_ENV_LEGACY 250 bool "Hand over legacy environment to Linux kernel" 251 default y 252 help 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. 257 258config MIPS_BOOT_FDT 259 bool "Hand over a flattened device tree to Linux kernel" 260 default n 261 help 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. 265 266endmenu 267 268config SUPPORTS_BIG_ENDIAN 269 bool 270 271config SUPPORTS_LITTLE_ENDIAN 272 bool 273 274config SUPPORTS_CPU_MIPS32_R1 275 bool 276 277config SUPPORTS_CPU_MIPS32_R2 278 bool 279 280config SUPPORTS_CPU_MIPS32_R6 281 bool 282 283config SUPPORTS_CPU_MIPS64_R1 284 bool 285 286config SUPPORTS_CPU_MIPS64_R2 287 bool 288 289config SUPPORTS_CPU_MIPS64_R6 290 bool 291 292config CPU_MIPS32 293 bool 294 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2 || CPU_MIPS32_R6 295 296config CPU_MIPS64 297 bool 298 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2 || CPU_MIPS64_R6 299 300config MIPS_TUNE_4KC 301 bool 302 303config MIPS_TUNE_14KC 304 bool 305 306config MIPS_TUNE_24KC 307 bool 308 309config MIPS_TUNE_34KC 310 bool 311 312config MIPS_TUNE_74KC 313 bool 314 315config 32BIT 316 bool 317 318config 64BIT 319 bool 320 321config SWAP_IO_SPACE 322 bool 323 324config SYS_MIPS_CACHE_INIT_RAM_LOAD 325 bool 326 327config MIPS_INIT_STACK_IN_SRAM 328 bool 329 default n 330 help 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 336 in assembler. 337 338config SYS_DCACHE_SIZE 339 int 340 default 0 341 help 342 The total size of the L1 Dcache, if known at compile time. 343 344config SYS_DCACHE_LINE_SIZE 345 int 346 default 0 347 help 348 The size of L1 Dcache lines, if known at compile time. 349 350config SYS_ICACHE_SIZE 351 int 352 default 0 353 help 354 The total size of the L1 ICache, if known at compile time. 355 356config SYS_ICACHE_LINE_SIZE 357 int 358 default 0 359 help 360 The size of L1 Icache lines, if known at compile time. 361 362config 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 365 help 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. 371 372config MIPS_L1_CACHE_SHIFT_4 373 bool 374 375config MIPS_L1_CACHE_SHIFT_5 376 bool 377 378config MIPS_L1_CACHE_SHIFT_6 379 bool 380 381config MIPS_L1_CACHE_SHIFT_7 382 bool 383 384config MIPS_L1_CACHE_SHIFT 385 int 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 390 default "5" 391 392config MIPS_L2_CACHE 393 bool 394 help 395 Select this if your system includes an L2 cache and you want U-Boot 396 to initialise & maintain it. 397 398config DYNAMIC_IO_PORT_BASE 399 bool 400 401config MIPS_CM 402 bool 403 help 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. 407 408endif 409 410endmenu 411