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