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