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