]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blob - arch/mips/Kconfig
[MIPS] SNI RM updates
[mirror_ubuntu-zesty-kernel.git] / arch / mips / Kconfig
1 config MIPS
2 bool
3 default y
4 # Horrible source of confusion. Die, die, die ...
5 select EMBEDDED
6
7 mainmenu "Linux/MIPS Kernel Configuration"
8
9 menu "Machine selection"
10
11 config ZONE_DMA
12 bool
13
14 choice
15 prompt "System type"
16 default SGI_IP22
17
18 config LEMOTE_FULONG
19 bool "Lemote Fulong mini-PC"
20 select ARCH_SPARSEMEM_ENABLE
21 select SYS_HAS_CPU_LOONGSON2
22 select DMA_NONCOHERENT
23 select BOOT_ELF32
24 select BOARD_SCACHE
25 select HAVE_STD_PC_SERIAL_PORT
26 select HW_HAS_PCI
27 select I8259
28 select ISA
29 select IRQ_CPU
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_64BIT_KERNEL
32 select SYS_SUPPORTS_LITTLE_ENDIAN
33 select SYS_SUPPORTS_HIGHMEM
34 select SYS_HAS_EARLY_PRINTK
35 select GENERIC_HARDIRQS_NO__DO_IRQ
36 select CPU_HAS_WB
37 help
38 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
39 an FPGA northbridge
40
41 config MACH_ALCHEMY
42 bool "Alchemy processor based machines"
43
44 config BASLER_EXCITE
45 bool "Basler eXcite smart camera"
46 select DMA_COHERENT
47 select HW_HAS_PCI
48 select IRQ_CPU
49 select IRQ_CPU_RM7K
50 select IRQ_CPU_RM9K
51 select MIPS_RM9122
52 select SYS_HAS_CPU_RM9000
53 select SYS_SUPPORTS_32BIT_KERNEL
54 select SYS_SUPPORTS_64BIT_KERNEL
55 select SYS_SUPPORTS_BIG_ENDIAN
56 select SYS_SUPPORTS_KGDB
57 help
58 The eXcite is a smart camera platform manufactured by
59 Basler Vision Technologies AG.
60
61 config BASLER_EXCITE_PROTOTYPE
62 bool "Support for pre-release units"
63 depends on BASLER_EXCITE
64 default n
65 help
66 Pre-series (prototype) units are different from later ones in
67 some ways. Select this option if you have one of these. Please
68 note that a kernel built with this option selected will not be
69 able to run on normal units.
70
71 config MIPS_COBALT
72 bool "Cobalt Server"
73 select DMA_NONCOHERENT
74 select HW_HAS_PCI
75 select I8259
76 select IRQ_CPU
77 select PCI_GT64XXX_PCI0
78 select SYS_HAS_CPU_NEVADA
79 select SYS_HAS_EARLY_PRINTK
80 select SYS_SUPPORTS_32BIT_KERNEL
81 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
82 select SYS_SUPPORTS_LITTLE_ENDIAN
83 select GENERIC_HARDIRQS_NO__DO_IRQ
84
85 config MACH_DECSTATION
86 bool "DECstations"
87 select BOOT_ELF32
88 select DMA_NONCOHERENT
89 select NO_IOPORT
90 select IRQ_CPU
91 select SYS_HAS_CPU_R3000
92 select SYS_HAS_CPU_R4X00
93 select SYS_SUPPORTS_32BIT_KERNEL
94 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
95 select SYS_SUPPORTS_LITTLE_ENDIAN
96 select SYS_SUPPORTS_128HZ
97 select SYS_SUPPORTS_256HZ
98 select SYS_SUPPORTS_1024HZ
99 help
100 This enables support for DEC's MIPS based workstations. For details
101 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
102 DECstation porting pages on <http://decstation.unix-ag.org/>.
103
104 If you have one of the following DECstation Models you definitely
105 want to choose R4xx0 for the CPU Type:
106
107 DECstation 5000/50
108 DECstation 5000/150
109 DECstation 5000/260
110 DECsystem 5900/260
111
112 otherwise choose R3000.
113
114 config MACH_JAZZ
115 bool "Jazz family of machines"
116 select ARC
117 select ARC32
118 select ARCH_MAY_HAVE_PC_FDC
119 select GENERIC_ISA_DMA
120 select I8253
121 select I8259
122 select ISA
123 select SYS_HAS_CPU_R4X00
124 select SYS_SUPPORTS_32BIT_KERNEL
125 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
126 select SYS_SUPPORTS_100HZ
127 select GENERIC_HARDIRQS_NO__DO_IRQ
128 help
129 This a family of machines based on the MIPS R4030 chipset which was
130 used by several vendors to build RISC/os and Windows NT workstations.
131 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
132 Olivetti M700-10 workstations.
133
134 config LASAT
135 bool "LASAT Networks platforms"
136 select DMA_NONCOHERENT
137 select SYS_HAS_EARLY_PRINTK
138 select HW_HAS_PCI
139 select PCI_GT64XXX_PCI0
140 select MIPS_NILE4
141 select R5000_CPU_SCACHE
142 select SYS_HAS_CPU_R5000
143 select SYS_SUPPORTS_32BIT_KERNEL
144 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
145 select SYS_SUPPORTS_LITTLE_ENDIAN
146 select GENERIC_HARDIRQS_NO__DO_IRQ
147
148 config MIPS_ATLAS
149 bool "MIPS Atlas board"
150 select BOOT_ELF32
151 select DMA_NONCOHERENT
152 select SYS_HAS_EARLY_PRINTK
153 select IRQ_CPU
154 select HW_HAS_PCI
155 select MIPS_BOARDS_GEN
156 select MIPS_BONITO64
157 select PCI_GT64XXX_PCI0
158 select MIPS_MSC
159 select RM7000_CPU_SCACHE
160 select SWAP_IO_SPACE
161 select SYS_HAS_CPU_MIPS32_R1
162 select SYS_HAS_CPU_MIPS32_R2
163 select SYS_HAS_CPU_MIPS64_R1
164 select SYS_HAS_CPU_NEVADA
165 select SYS_HAS_CPU_RM7000
166 select SYS_SUPPORTS_32BIT_KERNEL
167 select SYS_SUPPORTS_64BIT_KERNEL
168 select SYS_SUPPORTS_BIG_ENDIAN
169 select SYS_SUPPORTS_LITTLE_ENDIAN
170 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
171 select SYS_SUPPORTS_SMARTMIPS
172 select GENERIC_HARDIRQS_NO__DO_IRQ
173 help
174 This enables support for the MIPS Technologies Atlas evaluation
175 board.
176
177 config MIPS_MALTA
178 bool "MIPS Malta board"
179 select ARCH_MAY_HAVE_PC_FDC
180 select BOOT_ELF32
181 select DMA_NONCOHERENT
182 select GENERIC_ISA_DMA
183 select IRQ_CPU
184 select HW_HAS_PCI
185 select I8259
186 select MIPS_BOARDS_GEN
187 select MIPS_BONITO64
188 select MIPS_CPU_SCACHE
189 select PCI_GT64XXX_PCI0
190 select MIPS_MSC
191 select SWAP_IO_SPACE
192 select SYS_HAS_CPU_MIPS32_R1
193 select SYS_HAS_CPU_MIPS32_R2
194 select SYS_HAS_CPU_MIPS64_R1
195 select SYS_HAS_CPU_NEVADA
196 select SYS_HAS_CPU_RM7000
197 select SYS_HAS_EARLY_PRINTK
198 select SYS_SUPPORTS_32BIT_KERNEL
199 select SYS_SUPPORTS_64BIT_KERNEL
200 select SYS_SUPPORTS_BIG_ENDIAN
201 select SYS_SUPPORTS_LITTLE_ENDIAN
202 select SYS_SUPPORTS_MULTITHREADING
203 select SYS_SUPPORTS_SMARTMIPS
204 help
205 This enables support for the MIPS Technologies Malta evaluation
206 board.
207
208 config MIPS_SEAD
209 bool "MIPS SEAD board (EXPERIMENTAL)"
210 depends on EXPERIMENTAL
211 select IRQ_CPU
212 select DMA_NONCOHERENT
213 select SYS_HAS_EARLY_PRINTK
214 select MIPS_BOARDS_GEN
215 select SYS_HAS_CPU_MIPS32_R1
216 select SYS_HAS_CPU_MIPS32_R2
217 select SYS_HAS_CPU_MIPS64_R1
218 select SYS_SUPPORTS_32BIT_KERNEL
219 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
220 select SYS_SUPPORTS_BIG_ENDIAN
221 select SYS_SUPPORTS_LITTLE_ENDIAN
222 select SYS_SUPPORTS_SMARTMIPS
223 help
224 This enables support for the MIPS Technologies SEAD evaluation
225 board.
226
227 config WR_PPMC
228 bool "Wind River PPMC board"
229 select IRQ_CPU
230 select BOOT_ELF32
231 select DMA_NONCOHERENT
232 select HW_HAS_PCI
233 select PCI_GT64XXX_PCI0
234 select SWAP_IO_SPACE
235 select SYS_HAS_CPU_MIPS32_R1
236 select SYS_HAS_CPU_MIPS32_R2
237 select SYS_HAS_CPU_MIPS64_R1
238 select SYS_HAS_CPU_NEVADA
239 select SYS_HAS_CPU_RM7000
240 select SYS_SUPPORTS_32BIT_KERNEL
241 select SYS_SUPPORTS_64BIT_KERNEL
242 select SYS_SUPPORTS_BIG_ENDIAN
243 select SYS_SUPPORTS_LITTLE_ENDIAN
244 help
245 This enables support for the Wind River MIPS32 4KC PPMC evaluation
246 board, which is based on GT64120 bridge chip.
247
248 config MIPS_SIM
249 bool 'MIPS simulator (MIPSsim)'
250 select DMA_NONCOHERENT
251 select SYS_HAS_EARLY_PRINTK
252 select IRQ_CPU
253 select BOOT_RAW
254 select SYS_HAS_CPU_MIPS32_R1
255 select SYS_HAS_CPU_MIPS32_R2
256 select SYS_HAS_EARLY_PRINTK
257 select SYS_SUPPORTS_32BIT_KERNEL
258 select SYS_SUPPORTS_BIG_ENDIAN
259 select SYS_SUPPORTS_MULTITHREADING
260 select SYS_SUPPORTS_LITTLE_ENDIAN
261 help
262 This option enables support for MIPS Technologies MIPSsim software
263 emulator.
264
265 config MOMENCO_OCELOT
266 bool "Momentum Ocelot board"
267 select DMA_NONCOHERENT
268 select HW_HAS_PCI
269 select IRQ_CPU
270 select IRQ_CPU_RM7K
271 select PCI_GT64XXX_PCI0
272 select RM7000_CPU_SCACHE
273 select SWAP_IO_SPACE
274 select SYS_HAS_CPU_RM7000
275 select SYS_SUPPORTS_32BIT_KERNEL
276 select SYS_SUPPORTS_64BIT_KERNEL
277 select SYS_SUPPORTS_BIG_ENDIAN
278 select SYS_SUPPORTS_KGDB
279 help
280 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
281 Momentum Computer <http://www.momenco.com/>.
282
283 config MOMENCO_OCELOT_3
284 bool "Momentum Ocelot-3 board"
285 select BOOT_ELF32
286 select DMA_NONCOHERENT
287 select HW_HAS_PCI
288 select IRQ_CPU
289 select IRQ_CPU_RM7K
290 select IRQ_MV64340
291 select PCI_MARVELL
292 select RM7000_CPU_SCACHE
293 select SWAP_IO_SPACE
294 select SYS_HAS_CPU_RM9000
295 select SYS_SUPPORTS_32BIT_KERNEL
296 select SYS_SUPPORTS_64BIT_KERNEL
297 select SYS_SUPPORTS_BIG_ENDIAN
298 help
299 The Ocelot-3 is based off Discovery III System Controller and
300 PMC-Sierra Rm79000 core.
301
302 config PNX8550_JBS
303 bool "Philips PNX8550 based JBS board"
304 select PNX8550
305 select SYS_SUPPORTS_LITTLE_ENDIAN
306
307 config PNX8550_STB810
308 bool "Philips PNX8550 based STB810 board"
309 select PNX8550
310 select SYS_SUPPORTS_LITTLE_ENDIAN
311
312 config DDB5477
313 bool "NEC DDB Vrc-5477"
314 select DDB5XXX_COMMON
315 select DMA_NONCOHERENT
316 select HW_HAS_PCI
317 select I8259
318 select IRQ_CPU
319 select SYS_HAS_CPU_R5432
320 select SYS_SUPPORTS_32BIT_KERNEL
321 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
322 select SYS_SUPPORTS_KGDB
323 select SYS_SUPPORTS_KGDB
324 select SYS_SUPPORTS_LITTLE_ENDIAN
325 help
326 This enables support for the R5432-based NEC DDB Vrc-5477,
327 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
328
329 Features : kernel debugging, serial terminal, NFS root fs, on-board
330 ether port USB, AC97, PCI, etc.
331
332 config MACH_VR41XX
333 bool "NEC VR4100 series based machines"
334 select SYS_HAS_CPU_VR41XX
335 select GENERIC_HARDIRQS_NO__DO_IRQ
336
337 config PMC_MSP
338 bool "PMC-Sierra MSP chipsets"
339 depends on EXPERIMENTAL
340 select DMA_NONCOHERENT
341 select SWAP_IO_SPACE
342 select NO_EXCEPT_FILL
343 select BOOT_RAW
344 select SYS_HAS_CPU_MIPS32_R1
345 select SYS_HAS_CPU_MIPS32_R2
346 select SYS_SUPPORTS_32BIT_KERNEL
347 select SYS_SUPPORTS_BIG_ENDIAN
348 select SYS_SUPPORTS_KGDB
349 select IRQ_CPU
350 select SERIAL_8250
351 select SERIAL_8250_CONSOLE
352 help
353 This adds support for the PMC-Sierra family of Multi-Service
354 Processor System-On-A-Chips. These parts include a number
355 of integrated peripherals, interfaces and DSPs in addition to
356 a variety of MIPS cores.
357
358 config PMC_YOSEMITE
359 bool "PMC-Sierra Yosemite eval board"
360 select DMA_COHERENT
361 select HW_HAS_PCI
362 select IRQ_CPU
363 select IRQ_CPU_RM7K
364 select IRQ_CPU_RM9K
365 select SWAP_IO_SPACE
366 select SYS_HAS_CPU_RM9000
367 select SYS_HAS_EARLY_PRINTK
368 select SYS_SUPPORTS_32BIT_KERNEL
369 select SYS_SUPPORTS_64BIT_KERNEL
370 select SYS_SUPPORTS_BIG_ENDIAN
371 select SYS_SUPPORTS_HIGHMEM
372 select SYS_SUPPORTS_KGDB
373 select SYS_SUPPORTS_SMP
374 help
375 Yosemite is an evaluation board for the RM9000x2 processor
376 manufactured by PMC-Sierra.
377
378 config QEMU
379 bool "Qemu"
380 select DMA_COHERENT
381 select GENERIC_ISA_DMA
382 select HAVE_STD_PC_SERIAL_PORT
383 select I8253
384 select I8259
385 select ISA
386 select SWAP_IO_SPACE
387 select SYS_HAS_CPU_MIPS32_R1
388 select SYS_SUPPORTS_32BIT_KERNEL
389 select SYS_SUPPORTS_BIG_ENDIAN
390 select SYS_SUPPORTS_LITTLE_ENDIAN
391 select ARCH_SPARSEMEM_ENABLE
392 select GENERIC_HARDIRQS_NO__DO_IRQ
393 select NR_CPUS_DEFAULT_1
394 select SYS_SUPPORTS_SMP
395 help
396 Qemu is a software emulator which among other architectures also
397 can simulate a MIPS32 4Kc system. This patch adds support for the
398 system architecture that currently is being simulated by Qemu. It
399 will eventually be removed again when Qemu has the capability to
400 simulate actual MIPS hardware platforms. More information on Qemu
401 can be found at http://www.linux-mips.org/wiki/Qemu.
402
403 config MARKEINS
404 bool "NEC EMMA2RH Mark-eins"
405 select DMA_NONCOHERENT
406 select HW_HAS_PCI
407 select IRQ_CPU
408 select SWAP_IO_SPACE
409 select SYS_SUPPORTS_32BIT_KERNEL
410 select SYS_SUPPORTS_BIG_ENDIAN
411 select SYS_SUPPORTS_LITTLE_ENDIAN
412 select SYS_HAS_CPU_R5000
413 help
414 This enables support for the R5432-based NEC Mark-eins
415 boards with R5500 CPU.
416
417 config SGI_IP22
418 bool "SGI IP22 (Indy/Indigo2)"
419 select ARC
420 select ARC32
421 select BOOT_ELF32
422 select DMA_NONCOHERENT
423 select HW_HAS_EISA
424 select IP22_CPU_SCACHE
425 select IRQ_CPU
426 select GENERIC_ISA_DMA_SUPPORT_BROKEN
427 select SWAP_IO_SPACE
428 select SYS_HAS_CPU_R4X00
429 select SYS_HAS_CPU_R5000
430 select SYS_HAS_EARLY_PRINTK
431 select SYS_SUPPORTS_32BIT_KERNEL
432 select SYS_SUPPORTS_64BIT_KERNEL
433 select SYS_SUPPORTS_BIG_ENDIAN
434 help
435 This are the SGI Indy, Challenge S and Indigo2, as well as certain
436 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
437 that runs on these, say Y here.
438
439 config SGI_IP27
440 bool "SGI IP27 (Origin200/2000)"
441 select ARC
442 select ARC64
443 select BOOT_ELF64
444 select DMA_IP27
445 select SYS_HAS_EARLY_PRINTK
446 select HW_HAS_PCI
447 select NR_CPUS_DEFAULT_64
448 select PCI_DOMAINS
449 select SYS_HAS_CPU_R10000
450 select SYS_SUPPORTS_64BIT_KERNEL
451 select SYS_SUPPORTS_BIG_ENDIAN
452 select SYS_SUPPORTS_KGDB
453 select SYS_SUPPORTS_NUMA
454 select SYS_SUPPORTS_SMP
455 select GENERIC_HARDIRQS_NO__DO_IRQ
456 help
457 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
458 workstations. To compile a Linux kernel that runs on these, say Y
459 here.
460
461 config SGI_IP32
462 bool "SGI IP32 (O2)"
463 select ARC
464 select ARC32
465 select BOOT_ELF32
466 select DMA_NONCOHERENT
467 select HW_HAS_PCI
468 select R5000_CPU_SCACHE
469 select RM7000_CPU_SCACHE
470 select SYS_HAS_CPU_R5000
471 select SYS_HAS_CPU_R10000 if BROKEN
472 select SYS_HAS_CPU_RM7000
473 select SYS_HAS_CPU_NEVADA
474 select SYS_SUPPORTS_64BIT_KERNEL
475 select SYS_SUPPORTS_BIG_ENDIAN
476 help
477 If you want this kernel to run on SGI O2 workstation, say Y here.
478
479 config SIBYTE_BIGSUR
480 bool "Sibyte BCM91480B-BigSur"
481 select BOOT_ELF32
482 select DMA_COHERENT
483 select NR_CPUS_DEFAULT_4
484 select PCI_DOMAINS
485 select SIBYTE_BCM1x80
486 select SWAP_IO_SPACE
487 select SYS_HAS_CPU_SB1
488 select SYS_SUPPORTS_BIG_ENDIAN
489 select SYS_SUPPORTS_LITTLE_ENDIAN
490
491 config SIBYTE_SWARM
492 bool "Sibyte BCM91250A-SWARM"
493 select BOOT_ELF32
494 select DMA_COHERENT
495 select NR_CPUS_DEFAULT_2
496 select SIBYTE_SB1250
497 select SWAP_IO_SPACE
498 select SYS_HAS_CPU_SB1
499 select SYS_SUPPORTS_BIG_ENDIAN
500 select SYS_SUPPORTS_HIGHMEM
501 select SYS_SUPPORTS_KGDB
502 select SYS_SUPPORTS_LITTLE_ENDIAN
503
504 config SIBYTE_SENTOSA
505 bool "Sibyte BCM91250E-Sentosa"
506 depends on EXPERIMENTAL
507 select BOOT_ELF32
508 select DMA_COHERENT
509 select NR_CPUS_DEFAULT_2
510 select SIBYTE_SB1250
511 select SWAP_IO_SPACE
512 select SYS_HAS_CPU_SB1
513 select SYS_SUPPORTS_BIG_ENDIAN
514 select SYS_SUPPORTS_LITTLE_ENDIAN
515
516 config SIBYTE_RHONE
517 bool "Sibyte BCM91125E-Rhone"
518 depends on EXPERIMENTAL
519 select BOOT_ELF32
520 select DMA_COHERENT
521 select SIBYTE_BCM1125H
522 select SWAP_IO_SPACE
523 select SYS_HAS_CPU_SB1
524 select SYS_SUPPORTS_BIG_ENDIAN
525 select SYS_SUPPORTS_LITTLE_ENDIAN
526
527 config SIBYTE_CARMEL
528 bool "Sibyte BCM91120x-Carmel"
529 depends on EXPERIMENTAL
530 select BOOT_ELF32
531 select DMA_COHERENT
532 select SIBYTE_BCM1120
533 select SWAP_IO_SPACE
534 select SYS_HAS_CPU_SB1
535 select SYS_SUPPORTS_BIG_ENDIAN
536 select SYS_SUPPORTS_LITTLE_ENDIAN
537
538 config SIBYTE_PTSWARM
539 bool "Sibyte BCM91250PT-PTSWARM"
540 depends on EXPERIMENTAL
541 select BOOT_ELF32
542 select DMA_COHERENT
543 select NR_CPUS_DEFAULT_2
544 select SIBYTE_SB1250
545 select SWAP_IO_SPACE
546 select SYS_HAS_CPU_SB1
547 select SYS_SUPPORTS_BIG_ENDIAN
548 select SYS_SUPPORTS_HIGHMEM
549 select SYS_SUPPORTS_LITTLE_ENDIAN
550
551 config SIBYTE_LITTLESUR
552 bool "Sibyte BCM91250C2-LittleSur"
553 depends on EXPERIMENTAL
554 select BOOT_ELF32
555 select DMA_COHERENT
556 select NR_CPUS_DEFAULT_2
557 select SIBYTE_SB1250
558 select SWAP_IO_SPACE
559 select SYS_HAS_CPU_SB1
560 select SYS_SUPPORTS_BIG_ENDIAN
561 select SYS_SUPPORTS_HIGHMEM
562 select SYS_SUPPORTS_LITTLE_ENDIAN
563
564 config SIBYTE_CRHINE
565 bool "Sibyte BCM91120C-CRhine"
566 depends on EXPERIMENTAL
567 select BOOT_ELF32
568 select DMA_COHERENT
569 select SIBYTE_BCM1120
570 select SWAP_IO_SPACE
571 select SYS_HAS_CPU_SB1
572 select SYS_SUPPORTS_BIG_ENDIAN
573 select SYS_SUPPORTS_LITTLE_ENDIAN
574
575 config SIBYTE_CRHONE
576 bool "Sibyte BCM91125C-CRhone"
577 depends on EXPERIMENTAL
578 select BOOT_ELF32
579 select DMA_COHERENT
580 select SIBYTE_BCM1125
581 select SWAP_IO_SPACE
582 select SYS_HAS_CPU_SB1
583 select SYS_SUPPORTS_BIG_ENDIAN
584 select SYS_SUPPORTS_HIGHMEM
585 select SYS_SUPPORTS_LITTLE_ENDIAN
586
587 config SNI_RM
588 bool "SNI RM200/300/400"
589 select ARC if CPU_LITTLE_ENDIAN
590 select ARC32 if CPU_LITTLE_ENDIAN
591 select ARCH_MAY_HAVE_PC_FDC
592 select BOOT_ELF32
593 select DMA_NONCOHERENT
594 select GENERIC_ISA_DMA
595 select HW_HAS_EISA
596 select HW_HAS_PCI
597 select IRQ_CPU
598 select I8253
599 select I8259
600 select ISA
601 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
602 select SYS_HAS_CPU_R4X00
603 select SYS_HAS_CPU_R5000
604 select SYS_HAS_CPU_R10000
605 select R5000_CPU_SCACHE
606 select SYS_HAS_EARLY_PRINTK
607 select SYS_SUPPORTS_32BIT_KERNEL
608 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
609 select SYS_SUPPORTS_BIG_ENDIAN
610 select SYS_SUPPORTS_HIGHMEM
611 select SYS_SUPPORTS_LITTLE_ENDIAN
612 help
613 The SNI RM200/300/400 are MIPS-based machines manufactured by
614 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
615 Technology and now in turn merged with Fujitsu. Say Y here to
616 support this machine type.
617
618 config TOSHIBA_JMR3927
619 bool "Toshiba JMR-TX3927 board"
620 select DMA_NONCOHERENT
621 select HW_HAS_PCI
622 select MIPS_TX3927
623 select SWAP_IO_SPACE
624 select SYS_HAS_CPU_TX39XX
625 select SYS_SUPPORTS_32BIT_KERNEL
626 select SYS_SUPPORTS_LITTLE_ENDIAN
627 select SYS_SUPPORTS_BIG_ENDIAN
628 select GENERIC_HARDIRQS_NO__DO_IRQ
629
630 config TOSHIBA_RBTX4927
631 bool "Toshiba TBTX49[23]7 board"
632 select DMA_NONCOHERENT
633 select HAS_TXX9_SERIAL
634 select HW_HAS_PCI
635 select I8259
636 select SWAP_IO_SPACE
637 select SYS_HAS_CPU_TX49XX
638 select SYS_SUPPORTS_32BIT_KERNEL
639 select SYS_SUPPORTS_64BIT_KERNEL
640 select SYS_SUPPORTS_LITTLE_ENDIAN
641 select SYS_SUPPORTS_BIG_ENDIAN
642 select SYS_SUPPORTS_KGDB
643 select GENERIC_HARDIRQS_NO__DO_IRQ
644 help
645 This Toshiba board is based on the TX4927 processor. Say Y here to
646 support this machine type
647
648 config TOSHIBA_RBTX4938
649 bool "Toshiba RBTX4938 board"
650 select HAVE_STD_PC_SERIAL_PORT
651 select DMA_NONCOHERENT
652 select GENERIC_ISA_DMA
653 select HAS_TXX9_SERIAL
654 select HW_HAS_PCI
655 select I8259
656 select SWAP_IO_SPACE
657 select SYS_HAS_CPU_TX49XX
658 select SYS_SUPPORTS_32BIT_KERNEL
659 select SYS_SUPPORTS_LITTLE_ENDIAN
660 select SYS_SUPPORTS_BIG_ENDIAN
661 select SYS_SUPPORTS_KGDB
662 select GENERIC_HARDIRQS_NO__DO_IRQ
663 help
664 This Toshiba board is based on the TX4938 processor. Say Y here to
665 support this machine type
666
667 endchoice
668
669 source "arch/mips/au1000/Kconfig"
670 source "arch/mips/ddb5xxx/Kconfig"
671 source "arch/mips/jazz/Kconfig"
672 source "arch/mips/lasat/Kconfig"
673 source "arch/mips/pmc-sierra/Kconfig"
674 source "arch/mips/sgi-ip27/Kconfig"
675 source "arch/mips/sibyte/Kconfig"
676 source "arch/mips/tx4927/Kconfig"
677 source "arch/mips/tx4938/Kconfig"
678 source "arch/mips/vr41xx/Kconfig"
679 source "arch/mips/philips/pnx8550/common/Kconfig"
680
681 endmenu
682
683 config RWSEM_GENERIC_SPINLOCK
684 bool
685 default y
686
687 config RWSEM_XCHGADD_ALGORITHM
688 bool
689
690 config ARCH_HAS_ILOG2_U32
691 bool
692 default n
693
694 config ARCH_HAS_ILOG2_U64
695 bool
696 default n
697
698 config GENERIC_FIND_NEXT_BIT
699 bool
700 default y
701
702 config GENERIC_HWEIGHT
703 bool
704 default y
705
706 config GENERIC_CALIBRATE_DELAY
707 bool
708 default y
709
710 config GENERIC_TIME
711 bool
712 default y
713
714 config SCHED_NO_NO_OMIT_FRAME_POINTER
715 bool
716 default y
717
718 config GENERIC_HARDIRQS_NO__DO_IRQ
719 bool
720 default n
721
722 #
723 # Select some configuration options automatically based on user selections.
724 #
725 config ARC
726 bool
727
728 config ARCH_MAY_HAVE_PC_FDC
729 bool
730
731 config BOOT_RAW
732 bool
733
734 config DMA_COHERENT
735 bool
736
737 config DMA_IP27
738 bool
739
740 config DMA_IP32
741 bool
742 select DMA_NEED_PCI_MAP_STATE
743
744 config DMA_NONCOHERENT
745 bool
746 select DMA_NEED_PCI_MAP_STATE
747
748 config DMA_NEED_PCI_MAP_STATE
749 bool
750
751 config EARLY_PRINTK
752 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
753 depends on SYS_HAS_EARLY_PRINTK
754 default y
755 help
756 This option enables special console drivers which allow the kernel
757 to print messages very early in the bootup process.
758
759 This is useful for kernel debugging when your machine crashes very
760 early before the console code is initialized. For normal operation,
761 it is not recommended because it looks ugly on some machines and
762 doesn't cooperate with an X server. You should normally say N here,
763 unless you want to debug such a crash.
764
765 config SYS_HAS_EARLY_PRINTK
766 bool
767
768 config GENERIC_ISA_DMA
769 bool
770 select ZONE_DMA
771
772 config I8259
773 bool
774
775 config MIPS_BONITO64
776 bool
777
778 config MIPS_MSC
779 bool
780
781 config MIPS_NILE4
782 bool
783
784 config MIPS_DISABLE_OBSOLETE_IDE
785 bool
786
787 config NO_IOPORT
788 def_bool n
789
790 config GENERIC_ISA_DMA_SUPPORT_BROKEN
791 bool
792 select ZONE_DMA
793
794 config GENERIC_GPIO
795 bool
796
797 #
798 # Endianess selection. Sufficiently obscure so many users don't know what to
799 # answer,so we try hard to limit the available choices. Also the use of a
800 # choice statement should be more obvious to the user.
801 #
802 choice
803 prompt "Endianess selection"
804 help
805 Some MIPS machines can be configured for either little or big endian
806 byte order. These modes require different kernels and a different
807 Linux distribution. In general there is one preferred byteorder for a
808 particular system but some systems are just as commonly used in the
809 one or the other endianness.
810
811 config CPU_BIG_ENDIAN
812 bool "Big endian"
813 depends on SYS_SUPPORTS_BIG_ENDIAN
814
815 config CPU_LITTLE_ENDIAN
816 bool "Little endian"
817 depends on SYS_SUPPORTS_LITTLE_ENDIAN
818 help
819
820 endchoice
821
822 config SYS_SUPPORTS_APM_EMULATION
823 bool
824
825 config SYS_SUPPORTS_BIG_ENDIAN
826 bool
827
828 config SYS_SUPPORTS_LITTLE_ENDIAN
829 bool
830
831 config IRQ_CPU
832 bool
833
834 config IRQ_CPU_RM7K
835 bool
836
837 config IRQ_CPU_RM9K
838 bool
839
840 config IRQ_MSP_SLP
841 bool
842
843 config IRQ_MSP_CIC
844 bool
845
846 config IRQ_MV64340
847 bool
848
849 config DDB5XXX_COMMON
850 bool
851 select SYS_SUPPORTS_KGDB
852
853 config MIPS_BOARDS_GEN
854 bool
855
856 config PCI_GT64XXX_PCI0
857 bool
858
859 config NO_EXCEPT_FILL
860 bool
861
862 config MIPS_TX3927
863 bool
864 select HAS_TXX9_SERIAL
865
866 config MIPS_RM9122
867 bool
868 select SERIAL_RM9000
869
870 config PCI_MARVELL
871 bool
872
873 config PNX8550
874 bool
875 select SOC_PNX8550
876
877 config SOC_PNX8550
878 bool
879 select DMA_NONCOHERENT
880 select HW_HAS_PCI
881 select SYS_HAS_CPU_MIPS32_R1
882 select SYS_HAS_EARLY_PRINTK
883 select SYS_SUPPORTS_32BIT_KERNEL
884 select GENERIC_HARDIRQS_NO__DO_IRQ
885 select SYS_SUPPORTS_KGDB
886 select GENERIC_GPIO
887
888 config SWAP_IO_SPACE
889 bool
890
891 config EMMA2RH
892 bool
893 depends on MARKEINS
894 default y
895
896 config SERIAL_RM9000
897 bool
898
899 #
900 # Unfortunately not all GT64120 systems run the chip at the same clock.
901 # As the user for the clock rate and try to minimize the available options.
902 #
903 choice
904 prompt "Galileo Chip Clock"
905 depends on MOMENCO_OCELOT
906 default SYSCLK_100 if MOMENCO_OCELOT
907
908 config SYSCLK_100
909 bool "100" if MOMENCO_OCELOT
910
911 endchoice
912
913 config ARC32
914 bool
915
916 config BOOT_ELF32
917 bool
918
919 config MIPS_L1_CACHE_SHIFT
920 int
921 default "4" if MACH_DECSTATION
922 default "7" if SGI_IP27 || SNI_RM
923 default "4" if PMC_MSP4200_EVAL
924 default "5"
925
926 config HAVE_STD_PC_SERIAL_PORT
927 bool
928
929 config ARC_CONSOLE
930 bool "ARC console support"
931 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
932
933 config ARC_MEMORY
934 bool
935 depends on MACH_JAZZ || SNI_RM || SGI_IP32
936 default y
937
938 config ARC_PROMLIB
939 bool
940 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
941 default y
942
943 config ARC64
944 bool
945
946 config BOOT_ELF64
947 bool
948
949 menu "CPU selection"
950
951 choice
952 prompt "CPU type"
953 default CPU_R4X00
954
955 config CPU_LOONGSON2
956 bool "Loongson 2"
957 depends on SYS_HAS_CPU_LOONGSON2
958 select CPU_SUPPORTS_32BIT_KERNEL
959 select CPU_SUPPORTS_64BIT_KERNEL
960 select CPU_SUPPORTS_HIGHMEM
961 help
962 The Loongson 2E processor implements the MIPS III instruction set
963 with many extensions.
964
965 config CPU_MIPS32_R1
966 bool "MIPS32 Release 1"
967 depends on SYS_HAS_CPU_MIPS32_R1
968 select CPU_HAS_LLSC
969 select CPU_HAS_PREFETCH
970 select CPU_SUPPORTS_32BIT_KERNEL
971 select CPU_SUPPORTS_HIGHMEM
972 help
973 Choose this option to build a kernel for release 1 or later of the
974 MIPS32 architecture. Most modern embedded systems with a 32-bit
975 MIPS processor are based on a MIPS32 processor. If you know the
976 specific type of processor in your system, choose those that one
977 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
978 Release 2 of the MIPS32 architecture is available since several
979 years so chances are you even have a MIPS32 Release 2 processor
980 in which case you should choose CPU_MIPS32_R2 instead for better
981 performance.
982
983 config CPU_MIPS32_R2
984 bool "MIPS32 Release 2"
985 depends on SYS_HAS_CPU_MIPS32_R2
986 select CPU_HAS_LLSC
987 select CPU_HAS_PREFETCH
988 select CPU_SUPPORTS_32BIT_KERNEL
989 select CPU_SUPPORTS_HIGHMEM
990 help
991 Choose this option to build a kernel for release 2 or later of the
992 MIPS32 architecture. Most modern embedded systems with a 32-bit
993 MIPS processor are based on a MIPS32 processor. If you know the
994 specific type of processor in your system, choose those that one
995 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
996
997 config CPU_MIPS64_R1
998 bool "MIPS64 Release 1"
999 depends on SYS_HAS_CPU_MIPS64_R1
1000 select CPU_HAS_LLSC
1001 select CPU_HAS_PREFETCH
1002 select CPU_SUPPORTS_32BIT_KERNEL
1003 select CPU_SUPPORTS_64BIT_KERNEL
1004 select CPU_SUPPORTS_HIGHMEM
1005 help
1006 Choose this option to build a kernel for release 1 or later of the
1007 MIPS64 architecture. Many modern embedded systems with a 64-bit
1008 MIPS processor are based on a MIPS64 processor. If you know the
1009 specific type of processor in your system, choose those that one
1010 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1011 Release 2 of the MIPS64 architecture is available since several
1012 years so chances are you even have a MIPS64 Release 2 processor
1013 in which case you should choose CPU_MIPS64_R2 instead for better
1014 performance.
1015
1016 config CPU_MIPS64_R2
1017 bool "MIPS64 Release 2"
1018 depends on SYS_HAS_CPU_MIPS64_R2
1019 select CPU_HAS_LLSC
1020 select CPU_HAS_PREFETCH
1021 select CPU_SUPPORTS_32BIT_KERNEL
1022 select CPU_SUPPORTS_64BIT_KERNEL
1023 select CPU_SUPPORTS_HIGHMEM
1024 help
1025 Choose this option to build a kernel for release 2 or later of the
1026 MIPS64 architecture. Many modern embedded systems with a 64-bit
1027 MIPS processor are based on a MIPS64 processor. If you know the
1028 specific type of processor in your system, choose those that one
1029 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1030
1031 config CPU_R3000
1032 bool "R3000"
1033 depends on SYS_HAS_CPU_R3000
1034 select CPU_HAS_WB
1035 select CPU_SUPPORTS_32BIT_KERNEL
1036 select CPU_SUPPORTS_HIGHMEM
1037 help
1038 Please make sure to pick the right CPU type. Linux/MIPS is not
1039 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1040 *not* work on R4000 machines and vice versa. However, since most
1041 of the supported machines have an R4000 (or similar) CPU, R4x00
1042 might be a safe bet. If the resulting kernel does not work,
1043 try to recompile with R3000.
1044
1045 config CPU_TX39XX
1046 bool "R39XX"
1047 depends on SYS_HAS_CPU_TX39XX
1048 select CPU_SUPPORTS_32BIT_KERNEL
1049
1050 config CPU_VR41XX
1051 bool "R41xx"
1052 depends on SYS_HAS_CPU_VR41XX
1053 select CPU_SUPPORTS_32BIT_KERNEL
1054 select CPU_SUPPORTS_64BIT_KERNEL
1055 help
1056 The options selects support for the NEC VR4100 series of processors.
1057 Only choose this option if you have one of these processors as a
1058 kernel built with this option will not run on any other type of
1059 processor or vice versa.
1060
1061 config CPU_R4300
1062 bool "R4300"
1063 depends on SYS_HAS_CPU_R4300
1064 select CPU_HAS_LLSC
1065 select CPU_SUPPORTS_32BIT_KERNEL
1066 select CPU_SUPPORTS_64BIT_KERNEL
1067 help
1068 MIPS Technologies R4300-series processors.
1069
1070 config CPU_R4X00
1071 bool "R4x00"
1072 depends on SYS_HAS_CPU_R4X00
1073 select CPU_HAS_LLSC
1074 select CPU_SUPPORTS_32BIT_KERNEL
1075 select CPU_SUPPORTS_64BIT_KERNEL
1076 help
1077 MIPS Technologies R4000-series processors other than 4300, including
1078 the R4000, R4400, R4600, and 4700.
1079
1080 config CPU_TX49XX
1081 bool "R49XX"
1082 depends on SYS_HAS_CPU_TX49XX
1083 select CPU_HAS_LLSC
1084 select CPU_HAS_PREFETCH
1085 select CPU_SUPPORTS_32BIT_KERNEL
1086 select CPU_SUPPORTS_64BIT_KERNEL
1087
1088 config CPU_R5000
1089 bool "R5000"
1090 depends on SYS_HAS_CPU_R5000
1091 select CPU_HAS_LLSC
1092 select CPU_SUPPORTS_32BIT_KERNEL
1093 select CPU_SUPPORTS_64BIT_KERNEL
1094 help
1095 MIPS Technologies R5000-series processors other than the Nevada.
1096
1097 config CPU_R5432
1098 bool "R5432"
1099 depends on SYS_HAS_CPU_R5432
1100 select CPU_HAS_LLSC
1101 select CPU_SUPPORTS_32BIT_KERNEL
1102 select CPU_SUPPORTS_64BIT_KERNEL
1103
1104 config CPU_R6000
1105 bool "R6000"
1106 depends on EXPERIMENTAL
1107 select CPU_HAS_LLSC
1108 depends on SYS_HAS_CPU_R6000
1109 select CPU_SUPPORTS_32BIT_KERNEL
1110 help
1111 MIPS Technologies R6000 and R6000A series processors. Note these
1112 processors are extremely rare and the support for them is incomplete.
1113
1114 config CPU_NEVADA
1115 bool "RM52xx"
1116 depends on SYS_HAS_CPU_NEVADA
1117 select CPU_HAS_LLSC
1118 select CPU_SUPPORTS_32BIT_KERNEL
1119 select CPU_SUPPORTS_64BIT_KERNEL
1120 help
1121 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1122
1123 config CPU_R8000
1124 bool "R8000"
1125 depends on EXPERIMENTAL
1126 depends on SYS_HAS_CPU_R8000
1127 select CPU_HAS_LLSC
1128 select CPU_HAS_PREFETCH
1129 select CPU_SUPPORTS_64BIT_KERNEL
1130 help
1131 MIPS Technologies R8000 processors. Note these processors are
1132 uncommon and the support for them is incomplete.
1133
1134 config CPU_R10000
1135 bool "R10000"
1136 depends on SYS_HAS_CPU_R10000
1137 select CPU_HAS_LLSC
1138 select CPU_HAS_PREFETCH
1139 select CPU_SUPPORTS_32BIT_KERNEL
1140 select CPU_SUPPORTS_64BIT_KERNEL
1141 select CPU_SUPPORTS_HIGHMEM
1142 help
1143 MIPS Technologies R10000-series processors.
1144
1145 config CPU_RM7000
1146 bool "RM7000"
1147 depends on SYS_HAS_CPU_RM7000
1148 select CPU_HAS_LLSC
1149 select CPU_HAS_PREFETCH
1150 select CPU_SUPPORTS_32BIT_KERNEL
1151 select CPU_SUPPORTS_64BIT_KERNEL
1152 select CPU_SUPPORTS_HIGHMEM
1153
1154 config CPU_RM9000
1155 bool "RM9000"
1156 depends on SYS_HAS_CPU_RM9000
1157 select CPU_HAS_LLSC
1158 select CPU_HAS_PREFETCH
1159 select CPU_SUPPORTS_32BIT_KERNEL
1160 select CPU_SUPPORTS_64BIT_KERNEL
1161 select CPU_SUPPORTS_HIGHMEM
1162 select WEAK_ORDERING
1163
1164 config CPU_SB1
1165 bool "SB1"
1166 depends on SYS_HAS_CPU_SB1
1167 select CPU_HAS_LLSC
1168 select CPU_SUPPORTS_32BIT_KERNEL
1169 select CPU_SUPPORTS_64BIT_KERNEL
1170 select CPU_SUPPORTS_HIGHMEM
1171 select WEAK_ORDERING
1172
1173 endchoice
1174
1175 config SYS_HAS_CPU_LOONGSON2
1176 bool
1177
1178 config SYS_HAS_CPU_MIPS32_R1
1179 bool
1180
1181 config SYS_HAS_CPU_MIPS32_R2
1182 bool
1183
1184 config SYS_HAS_CPU_MIPS64_R1
1185 bool
1186
1187 config SYS_HAS_CPU_MIPS64_R2
1188 bool
1189
1190 config SYS_HAS_CPU_R3000
1191 bool
1192
1193 config SYS_HAS_CPU_TX39XX
1194 bool
1195
1196 config SYS_HAS_CPU_VR41XX
1197 bool
1198
1199 config SYS_HAS_CPU_R4300
1200 bool
1201
1202 config SYS_HAS_CPU_R4X00
1203 bool
1204
1205 config SYS_HAS_CPU_TX49XX
1206 bool
1207
1208 config SYS_HAS_CPU_R5000
1209 bool
1210
1211 config SYS_HAS_CPU_R5432
1212 bool
1213
1214 config SYS_HAS_CPU_R6000
1215 bool
1216
1217 config SYS_HAS_CPU_NEVADA
1218 bool
1219
1220 config SYS_HAS_CPU_R8000
1221 bool
1222
1223 config SYS_HAS_CPU_R10000
1224 bool
1225
1226 config SYS_HAS_CPU_RM7000
1227 bool
1228
1229 config SYS_HAS_CPU_RM9000
1230 bool
1231
1232 config SYS_HAS_CPU_SB1
1233 bool
1234
1235 config WEAK_ORDERING
1236 bool
1237 endmenu
1238
1239 #
1240 # These two indicate any level of the MIPS32 and MIPS64 architecture
1241 #
1242 config CPU_MIPS32
1243 bool
1244 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1245
1246 config CPU_MIPS64
1247 bool
1248 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1249
1250 #
1251 # These two indicate the revision of the architecture, either Release 1 or Release 2
1252 #
1253 config CPU_MIPSR1
1254 bool
1255 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1256
1257 config CPU_MIPSR2
1258 bool
1259 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1260
1261 config SYS_SUPPORTS_32BIT_KERNEL
1262 bool
1263 config SYS_SUPPORTS_64BIT_KERNEL
1264 bool
1265 config CPU_SUPPORTS_32BIT_KERNEL
1266 bool
1267 config CPU_SUPPORTS_64BIT_KERNEL
1268 bool
1269
1270 menu "Kernel type"
1271
1272 choice
1273
1274 prompt "Kernel code model"
1275 help
1276 You should only select this option if you have a workload that
1277 actually benefits from 64-bit processing or if your machine has
1278 large memory. You will only be presented a single option in this
1279 menu if your system does not support both 32-bit and 64-bit kernels.
1280
1281 config 32BIT
1282 bool "32-bit kernel"
1283 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1284 select TRAD_SIGNALS
1285 help
1286 Select this option if you want to build a 32-bit kernel.
1287 config 64BIT
1288 bool "64-bit kernel"
1289 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1290 help
1291 Select this option if you want to build a 64-bit kernel.
1292
1293 endchoice
1294
1295 choice
1296 prompt "Kernel page size"
1297 default PAGE_SIZE_4KB
1298
1299 config PAGE_SIZE_4KB
1300 bool "4kB"
1301 help
1302 This option select the standard 4kB Linux page size. On some
1303 R3000-family processors this is the only available page size. Using
1304 4kB page size will minimize memory consumption and is therefore
1305 recommended for low memory systems.
1306
1307 config PAGE_SIZE_8KB
1308 bool "8kB"
1309 depends on EXPERIMENTAL && CPU_R8000
1310 help
1311 Using 8kB page size will result in higher performance kernel at
1312 the price of higher memory consumption. This option is available
1313 only on the R8000 processor. Not that at the time of this writing
1314 this option is still high experimental; there are also issues with
1315 compatibility of user applications.
1316
1317 config PAGE_SIZE_16KB
1318 bool "16kB"
1319 depends on !CPU_R3000 && !CPU_TX39XX
1320 help
1321 Using 16kB page size will result in higher performance kernel at
1322 the price of higher memory consumption. This option is available on
1323 all non-R3000 family processors. Note that you will need a suitable
1324 Linux distribution to support this.
1325
1326 config PAGE_SIZE_64KB
1327 bool "64kB"
1328 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1329 help
1330 Using 64kB page size will result in higher performance kernel at
1331 the price of higher memory consumption. This option is available on
1332 all non-R3000 family processor. Not that at the time of this
1333 writing this option is still high experimental.
1334
1335 endchoice
1336
1337 config BOARD_SCACHE
1338 bool
1339
1340 config IP22_CPU_SCACHE
1341 bool
1342 select BOARD_SCACHE
1343
1344 #
1345 # Support for a MIPS32 / MIPS64 style S-caches
1346 #
1347 config MIPS_CPU_SCACHE
1348 bool
1349 select BOARD_SCACHE
1350
1351 config R5000_CPU_SCACHE
1352 bool
1353 select BOARD_SCACHE
1354
1355 config RM7000_CPU_SCACHE
1356 bool
1357 select BOARD_SCACHE
1358
1359 config SIBYTE_DMA_PAGEOPS
1360 bool "Use DMA to clear/copy pages"
1361 depends on CPU_SB1
1362 help
1363 Instead of using the CPU to zero and copy pages, use a Data Mover
1364 channel. These DMA channels are otherwise unused by the standard
1365 SiByte Linux port. Seems to give a small performance benefit.
1366
1367 config CPU_HAS_PREFETCH
1368 bool
1369
1370 choice
1371 prompt "MIPS MT options"
1372
1373 config MIPS_MT_DISABLED
1374 bool "Disable multithreading support."
1375 help
1376 Use this option if your workload can't take advantage of
1377 MIPS hardware multithreading support. On systems that don't have
1378 the option of an MT-enabled processor this option will be the only
1379 option in this menu.
1380
1381 config MIPS_MT_SMP
1382 bool "Use 1 TC on each available VPE for SMP"
1383 depends on SYS_SUPPORTS_MULTITHREADING
1384 select CPU_MIPSR2_IRQ_VI
1385 select CPU_MIPSR2_IRQ_EI
1386 select CPU_MIPSR2_SRS
1387 select MIPS_MT
1388 select NR_CPUS_DEFAULT_2
1389 select SMP
1390 select SYS_SUPPORTS_SMP
1391 help
1392 This is a kernel model which is also known a VSMP or lately
1393 has been marketesed into SMVP.
1394
1395 config MIPS_MT_SMTC
1396 bool "SMTC: Use all TCs on all VPEs for SMP"
1397 depends on CPU_MIPS32_R2
1398 #depends on CPU_MIPS64_R2 # once there is hardware ...
1399 depends on SYS_SUPPORTS_MULTITHREADING
1400 select CPU_MIPSR2_IRQ_VI
1401 select CPU_MIPSR2_IRQ_EI
1402 select CPU_MIPSR2_SRS
1403 select MIPS_MT
1404 select NR_CPUS_DEFAULT_8
1405 select SMP
1406 select SYS_SUPPORTS_SMP
1407 help
1408 This is a kernel model which is known a SMTC or lately has been
1409 marketesed into SMVP.
1410
1411 config MIPS_VPE_LOADER
1412 bool "VPE loader support."
1413 depends on SYS_SUPPORTS_MULTITHREADING
1414 select CPU_MIPSR2_IRQ_VI
1415 select CPU_MIPSR2_IRQ_EI
1416 select CPU_MIPSR2_SRS
1417 select MIPS_MT
1418 help
1419 Includes a loader for loading an elf relocatable object
1420 onto another VPE and running it.
1421
1422 endchoice
1423
1424 config MIPS_MT
1425 bool
1426
1427 config SYS_SUPPORTS_MULTITHREADING
1428 bool
1429
1430 config MIPS_MT_FPAFF
1431 bool "Dynamic FPU affinity for FP-intensive threads"
1432 depends on MIPS_MT
1433 default y
1434
1435 config MIPS_MT_SMTC_INSTANT_REPLAY
1436 bool "Low-latency Dispatch of Deferred SMTC IPIs"
1437 depends on MIPS_MT_SMTC && !PREEMPT
1438 default y
1439 help
1440 SMTC pseudo-interrupts between TCs are deferred and queued
1441 if the target TC is interrupt-inhibited (IXMT). In the first
1442 SMTC prototypes, these queued IPIs were serviced on return
1443 to user mode, or on entry into the kernel idle loop. The
1444 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1445 processing, which adds runtime overhead (hence the option to turn
1446 it off), but ensures that IPIs are handled promptly even under
1447 heavy I/O interrupt load.
1448
1449 config MIPS_VPE_LOADER_TOM
1450 bool "Load VPE program into memory hidden from linux"
1451 depends on MIPS_VPE_LOADER
1452 default y
1453 help
1454 The loader can use memory that is present but has been hidden from
1455 Linux using the kernel command line option "mem=xxMB". It's up to
1456 you to ensure the amount you put in the option and the space your
1457 program requires is less or equal to the amount physically present.
1458
1459 # this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1460 config MIPS_VPE_APSP_API
1461 bool "Enable support for AP/SP API (RTLX)"
1462 depends on MIPS_VPE_LOADER
1463 help
1464
1465 config MIPS_APSP_KSPD
1466 bool "Enable KSPD"
1467 depends on MIPS_VPE_APSP_API
1468 default y
1469 help
1470 KSPD is a kernel daemon that accepts syscall requests from the SP
1471 side, actions them and returns the results. It also handles the
1472 "exit" syscall notifying other kernel modules the SP program is
1473 exiting. You probably want to say yes here.
1474
1475 config SB1_PASS_1_WORKAROUNDS
1476 bool
1477 depends on CPU_SB1_PASS_1
1478 default y
1479
1480 config SB1_PASS_2_WORKAROUNDS
1481 bool
1482 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1483 default y
1484
1485 config SB1_PASS_2_1_WORKAROUNDS
1486 bool
1487 depends on CPU_SB1 && CPU_SB1_PASS_2
1488 default y
1489
1490 config 64BIT_PHYS_ADDR
1491 bool "Support for 64-bit physical address space"
1492 depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
1493
1494 config CPU_HAS_LLSC
1495 bool
1496
1497 config CPU_HAS_SMARTMIPS
1498 depends on SYS_SUPPORTS_SMARTMIPS
1499 bool "Support for the SmartMIPS ASE"
1500 help
1501 SmartMIPS is a extension of the MIPS32 architecture aimed at
1502 increased security at both hardware and software level for
1503 smartcards. Enabling this option will allow proper use of the
1504 SmartMIPS instructions by Linux applications. However a kernel with
1505 this option will not work on a MIPS core without SmartMIPS core. If
1506 you don't know you probably don't have SmartMIPS and should say N
1507 here.
1508
1509 config CPU_HAS_WB
1510 bool
1511
1512 config 64BIT_CONTEXT
1513 bool "Save 64bit integer registers"
1514 depends on 32BIT && CPU_LOONGSON2
1515 help
1516 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1517 registers can still be accessed as 64bit, mainly for multimedia
1518 instructions. We must have all 64bit save/restored to make sure
1519 those instructions to get correct result.
1520
1521 #
1522 # Vectored interrupt mode is an R2 feature
1523 #
1524 config CPU_MIPSR2_IRQ_VI
1525 bool
1526
1527 #
1528 # Extended interrupt mode is an R2 feature
1529 #
1530 config CPU_MIPSR2_IRQ_EI
1531 bool
1532
1533 #
1534 # Shadow registers are an R2 feature
1535 #
1536 config CPU_MIPSR2_SRS
1537 bool
1538
1539 config CPU_HAS_SYNC
1540 bool
1541 depends on !CPU_R3000
1542 default y
1543
1544 #
1545 # Use the generic interrupt handling code in kernel/irq/:
1546 #
1547 config GENERIC_HARDIRQS
1548 bool
1549 default y
1550
1551 config GENERIC_IRQ_PROBE
1552 bool
1553 default y
1554
1555 config IRQ_PER_CPU
1556 bool
1557
1558 #
1559 # - Highmem only makes sense for the 32-bit kernel.
1560 # - The current highmem code will only work properly on physically indexed
1561 # caches such as R3000, SB1, R7000 or those that look like they're virtually
1562 # indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1563 # moment we protect the user and offer the highmem option only on machines
1564 # where it's known to be safe. This will not offer highmem on a few systems
1565 # such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1566 # indexed CPUs but we're playing safe.
1567 # - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1568 # know they might have memory configurations that could make use of highmem
1569 # support.
1570 #
1571 config HIGHMEM
1572 bool "High Memory Support"
1573 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1574
1575 config CPU_SUPPORTS_HIGHMEM
1576 bool
1577
1578 config SYS_SUPPORTS_HIGHMEM
1579 bool
1580
1581 config SYS_SUPPORTS_SMARTMIPS
1582 bool
1583
1584 config ARCH_FLATMEM_ENABLE
1585 def_bool y
1586 depends on !NUMA
1587
1588 config ARCH_DISCONTIGMEM_ENABLE
1589 bool
1590 default y if SGI_IP27
1591 help
1592 Say Y to support efficient handling of discontiguous physical memory,
1593 for architectures which are either NUMA (Non-Uniform Memory Access)
1594 or have huge holes in the physical address space for other reasons.
1595 See <file:Documentation/vm/numa> for more.
1596
1597 config ARCH_SPARSEMEM_ENABLE
1598 bool
1599 select SPARSEMEM_STATIC
1600
1601 config NUMA
1602 bool "NUMA Support"
1603 depends on SYS_SUPPORTS_NUMA
1604 help
1605 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1606 Access). This option improves performance on systems with more
1607 than two nodes; on two node systems it is generally better to
1608 leave it disabled; on single node systems disable this option
1609 disabled.
1610
1611 config SYS_SUPPORTS_NUMA
1612 bool
1613
1614 config NODES_SHIFT
1615 int
1616 default "6"
1617 depends on NEED_MULTIPLE_NODES
1618
1619 source "mm/Kconfig"
1620
1621 config SMP
1622 bool "Multi-Processing support"
1623 depends on SYS_SUPPORTS_SMP
1624 select IRQ_PER_CPU
1625 help
1626 This enables support for systems with more than one CPU. If you have
1627 a system with only one CPU, like most personal computers, say N. If
1628 you have a system with more than one CPU, say Y.
1629
1630 If you say N here, the kernel will run on single and multiprocessor
1631 machines, but will use only one CPU of a multiprocessor machine. If
1632 you say Y here, the kernel will run on many, but not all,
1633 singleprocessor machines. On a singleprocessor machine, the kernel
1634 will run faster if you say N here.
1635
1636 People using multiprocessor machines who say Y here should also say
1637 Y to "Enhanced Real Time Clock Support", below.
1638
1639 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1640 available at <http://www.tldp.org/docs.html#howto>.
1641
1642 If you don't know what to do here, say N.
1643
1644 config SYS_SUPPORTS_SMP
1645 bool
1646
1647 config NR_CPUS_DEFAULT_1
1648 bool
1649
1650 config NR_CPUS_DEFAULT_2
1651 bool
1652
1653 config NR_CPUS_DEFAULT_4
1654 bool
1655
1656 config NR_CPUS_DEFAULT_8
1657 bool
1658
1659 config NR_CPUS_DEFAULT_16
1660 bool
1661
1662 config NR_CPUS_DEFAULT_32
1663 bool
1664
1665 config NR_CPUS_DEFAULT_64
1666 bool
1667
1668 config NR_CPUS
1669 int "Maximum number of CPUs (2-64)"
1670 range 1 64 if NR_CPUS_DEFAULT_1
1671 depends on SMP
1672 default "1" if NR_CPUS_DEFAULT_1
1673 default "2" if NR_CPUS_DEFAULT_2
1674 default "4" if NR_CPUS_DEFAULT_4
1675 default "8" if NR_CPUS_DEFAULT_8
1676 default "16" if NR_CPUS_DEFAULT_16
1677 default "32" if NR_CPUS_DEFAULT_32
1678 default "64" if NR_CPUS_DEFAULT_64
1679 help
1680 This allows you to specify the maximum number of CPUs which this
1681 kernel will support. The maximum supported value is 32 for 32-bit
1682 kernel and 64 for 64-bit kernels; the minimum value which makes
1683 sense is 1 for Qemu (useful only for kernel debugging purposes)
1684 and 2 for all others.
1685
1686 This is purely to save memory - each supported CPU adds
1687 approximately eight kilobytes to the kernel image. For best
1688 performance should round up your number of processors to the next
1689 power of two.
1690
1691 #
1692 # Timer Interrupt Frequency Configuration
1693 #
1694
1695 choice
1696 prompt "Timer frequency"
1697 default HZ_250
1698 help
1699 Allows the configuration of the timer frequency.
1700
1701 config HZ_48
1702 bool "48 HZ" if SYS_SUPPORTS_48HZ
1703
1704 config HZ_100
1705 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1706
1707 config HZ_128
1708 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1709
1710 config HZ_250
1711 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1712
1713 config HZ_256
1714 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1715
1716 config HZ_1000
1717 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1718
1719 config HZ_1024
1720 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1721
1722 endchoice
1723
1724 config SYS_SUPPORTS_48HZ
1725 bool
1726
1727 config SYS_SUPPORTS_100HZ
1728 bool
1729
1730 config SYS_SUPPORTS_128HZ
1731 bool
1732
1733 config SYS_SUPPORTS_250HZ
1734 bool
1735
1736 config SYS_SUPPORTS_256HZ
1737 bool
1738
1739 config SYS_SUPPORTS_1000HZ
1740 bool
1741
1742 config SYS_SUPPORTS_1024HZ
1743 bool
1744
1745 config SYS_SUPPORTS_ARBIT_HZ
1746 bool
1747 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1748 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1749 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1750 !SYS_SUPPORTS_1024HZ
1751
1752 config HZ
1753 int
1754 default 48 if HZ_48
1755 default 100 if HZ_100
1756 default 128 if HZ_128
1757 default 250 if HZ_250
1758 default 256 if HZ_256
1759 default 1000 if HZ_1000
1760 default 1024 if HZ_1024
1761
1762 source "kernel/Kconfig.preempt"
1763
1764 config MIPS_INSANE_LARGE
1765 bool "Support for large 64-bit configurations"
1766 depends on CPU_R10000 && 64BIT
1767 help
1768 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1769 previous 64-bit processors which only supported 40 bit / 1TB. If you
1770 need processes of more than 1TB virtual address space, say Y here.
1771 This will result in additional memory usage, so it is not
1772 recommended for normal users.
1773
1774 config KEXEC
1775 bool "Kexec system call (EXPERIMENTAL)"
1776 depends on EXPERIMENTAL
1777 help
1778 kexec is a system call that implements the ability to shutdown your
1779 current kernel, and to start another kernel. It is like a reboot
1780 but it is independent of the system firmware. And like a reboot
1781 you can start any kernel with it, not just Linux.
1782
1783 The name comes from the similiarity to the exec system call.
1784
1785 It is an ongoing process to be certain the hardware in a machine
1786 is properly shutdown, so do not be surprised if this code does not
1787 initially work for you. It may help to enable device hotplugging
1788 support. As of this writing the exact hardware interface is
1789 strongly in flux, so no good recommendation can be made.
1790
1791 config SECCOMP
1792 bool "Enable seccomp to safely compute untrusted bytecode"
1793 depends on PROC_FS && BROKEN
1794 default y
1795 help
1796 This kernel feature is useful for number crunching applications
1797 that may need to compute untrusted bytecode during their
1798 execution. By using pipes or other transports made available to
1799 the process as file descriptors supporting the read/write
1800 syscalls, it's possible to isolate those applications in
1801 their own address space using seccomp. Once seccomp is
1802 enabled via /proc/<pid>/seccomp, it cannot be disabled
1803 and the task is only allowed to execute a few safe syscalls
1804 defined by each seccomp mode.
1805
1806 If unsure, say Y. Only embedded should say N here.
1807
1808 endmenu
1809
1810 config RWSEM_GENERIC_SPINLOCK
1811 bool
1812 default y
1813
1814 config LOCKDEP_SUPPORT
1815 bool
1816 default y
1817
1818 config STACKTRACE_SUPPORT
1819 bool
1820 default y
1821
1822 source "init/Kconfig"
1823
1824 menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1825
1826 config HW_HAS_EISA
1827 bool
1828 config HW_HAS_PCI
1829 bool
1830
1831 config PCI
1832 bool "Support for PCI controller"
1833 depends on HW_HAS_PCI
1834 help
1835 Find out whether you have a PCI motherboard. PCI is the name of a
1836 bus system, i.e. the way the CPU talks to the other stuff inside
1837 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1838 say Y, otherwise N.
1839
1840 The PCI-HOWTO, available from
1841 <http://www.tldp.org/docs.html#howto>, contains valuable
1842 information about which PCI hardware does work under Linux and which
1843 doesn't.
1844
1845 config PCI_DOMAINS
1846 bool
1847 depends on PCI
1848
1849 source "drivers/pci/Kconfig"
1850
1851 #
1852 # ISA support is now enabled via select. Too many systems still have the one
1853 # or other ISA chip on the board that users don't know about so don't expect
1854 # users to choose the right thing ...
1855 #
1856 config ISA
1857 bool
1858
1859 config EISA
1860 bool "EISA support"
1861 depends on HW_HAS_EISA
1862 select ISA
1863 select GENERIC_ISA_DMA
1864 ---help---
1865 The Extended Industry Standard Architecture (EISA) bus was
1866 developed as an open alternative to the IBM MicroChannel bus.
1867
1868 The EISA bus provided some of the features of the IBM MicroChannel
1869 bus while maintaining backward compatibility with cards made for
1870 the older ISA bus. The EISA bus saw limited use between 1988 and
1871 1995 when it was made obsolete by the PCI bus.
1872
1873 Say Y here if you are building a kernel for an EISA-based machine.
1874
1875 Otherwise, say N.
1876
1877 source "drivers/eisa/Kconfig"
1878
1879 config TC
1880 bool "TURBOchannel support"
1881 depends on MACH_DECSTATION
1882 help
1883 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1884 processors. Documentation on writing device drivers for TurboChannel
1885 is available at:
1886 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1887
1888 #config ACCESSBUS
1889 # bool "Access.Bus support"
1890 # depends on TC
1891
1892 config MMU
1893 bool
1894 default y
1895
1896 config I8253
1897 bool
1898
1899 source "drivers/pcmcia/Kconfig"
1900
1901 source "drivers/pci/hotplug/Kconfig"
1902
1903 endmenu
1904
1905 menu "Executable file formats"
1906
1907 source "fs/Kconfig.binfmt"
1908
1909 config TRAD_SIGNALS
1910 bool
1911
1912 config BUILD_ELF64
1913 bool "Use 64-bit ELF format for building"
1914 depends on 64BIT
1915 help
1916 A 64-bit kernel is usually built using the 64-bit ELF binary object
1917 format as it's one that allows arbitrary 64-bit constructs. For
1918 kernels that are loaded within the KSEG compatibility segments the
1919 32-bit ELF format can optionally be used resulting in a somewhat
1920 smaller binary, but this option is not explicitly supported by the
1921 toolchain and since binutils 2.14 it does not even work at all.
1922
1923 Say Y to use the 64-bit format or N to use the 32-bit one.
1924
1925 If unsure say Y.
1926
1927 config BINFMT_IRIX
1928 bool "Include IRIX binary compatibility"
1929 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1930
1931 config MIPS32_COMPAT
1932 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
1933 depends on 64BIT
1934 help
1935 Select this option if you want Linux/MIPS 32-bit binary
1936 compatibility. Since all software available for Linux/MIPS is
1937 currently 32-bit you should say Y here.
1938
1939 config COMPAT
1940 bool
1941 depends on MIPS32_COMPAT
1942 default y
1943
1944 config SYSVIPC_COMPAT
1945 bool
1946 depends on COMPAT && SYSVIPC
1947 default y
1948
1949 config MIPS32_O32
1950 bool "Kernel support for o32 binaries"
1951 depends on MIPS32_COMPAT
1952 help
1953 Select this option if you want to run o32 binaries. These are pure
1954 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1955 existing binaries are in this format.
1956
1957 If unsure, say Y.
1958
1959 config MIPS32_N32
1960 bool "Kernel support for n32 binaries"
1961 depends on MIPS32_COMPAT
1962 help
1963 Select this option if you want to run n32 binaries. These are
1964 64-bit binaries using 32-bit quantities for addressing and certain
1965 data that would normally be 64-bit. They are used in special
1966 cases.
1967
1968 If unsure, say N.
1969
1970 config BINFMT_ELF32
1971 bool
1972 default y if MIPS32_O32 || MIPS32_N32
1973
1974 endmenu
1975
1976 menu "Power management options"
1977
1978 source "kernel/power/Kconfig"
1979
1980 endmenu
1981
1982 source "net/Kconfig"
1983
1984 source "drivers/Kconfig"
1985
1986 source "fs/Kconfig"
1987
1988 source "arch/mips/oprofile/Kconfig"
1989
1990 source "arch/mips/Kconfig.debug"
1991
1992 source "security/Kconfig"
1993
1994 source "crypto/Kconfig"
1995
1996 source "lib/Kconfig"