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