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