pci-expmem-hack
[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
9a6dcea1
AI
549config SIBYTE_BIGSUR
550 bool "Support for Sibyte BigSur"
551 select BOOT_ELF32
552 select DMA_COHERENT
553 select SIBYTE_BCM1x80
554 select SWAP_IO_SPACE
555 select SYS_SUPPORTS_BIG_ENDIAN
556 select SYS_SUPPORTS_LITTLE_ENDIAN
8a1417de 557 select PCI_DOMAINS
9a6dcea1 558
5e83d430
RB
559config SIBYTE_SWARM
560 bool "Support for Sibyte BCM91250A-SWARM"
561 select BOOT_ELF32
1da177e4 562 select DMA_COHERENT
5e83d430
RB
563 select SIBYTE_SB1250
564 select SWAP_IO_SPACE
81731f79 565 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430
RB
566 select SYS_SUPPORTS_HIGHMEM
567 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 568
5e83d430
RB
569config SIBYTE_SENTOSA
570 bool "Support for Sibyte BCM91250E-Sentosa"
571 depends on EXPERIMENTAL
572 select BOOT_ELF32
573 select DMA_COHERENT
574 select SIBYTE_SB1250
575 select SWAP_IO_SPACE
576 select SYS_SUPPORTS_BIG_ENDIAN
577 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 578
5e83d430
RB
579config SIBYTE_RHONE
580 bool "Support for Sibyte BCM91125E-Rhone"
581 depends on EXPERIMENTAL
582 select BOOT_ELF32
583 select DMA_COHERENT
584 select SIBYTE_BCM1125H
585 select SWAP_IO_SPACE
586 select SYS_SUPPORTS_BIG_ENDIAN
587 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 588
5e83d430
RB
589config SIBYTE_CARMEL
590 bool "Support for Sibyte BCM91120x-Carmel"
591 depends on EXPERIMENTAL
592 select BOOT_ELF32
26a940e2 593 select DMA_COHERENT
5e83d430
RB
594 select SIBYTE_BCM1120
595 select SWAP_IO_SPACE
596 select SYS_SUPPORTS_BIG_ENDIAN
e3ad1c23
PP
597 select SYS_SUPPORTS_LITTLE_ENDIAN
598
5e83d430
RB
599config SIBYTE_PTSWARM
600 bool "Support for Sibyte BCM91250PT-PTSWARM"
601 depends on EXPERIMENTAL
602 select BOOT_ELF32
603 select DMA_COHERENT
604 select SIBYTE_SB1250
605 select SWAP_IO_SPACE
606 select SYS_SUPPORTS_BIG_ENDIAN
607 select SYS_SUPPORTS_HIGHMEM
608 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 609
5e83d430
RB
610config SIBYTE_LITTLESUR
611 bool "Support for Sibyte BCM91250C2-LittleSur"
612 depends on EXPERIMENTAL
613 select BOOT_ELF32
614 select DMA_COHERENT
615 select SIBYTE_SB1250
616 select SWAP_IO_SPACE
617 select SYS_SUPPORTS_BIG_ENDIAN
618 select SYS_SUPPORTS_HIGHMEM
619 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 620
5e83d430
RB
621config SIBYTE_CRHINE
622 bool "Support for Sibyte BCM91120C-CRhine"
623 depends on EXPERIMENTAL
624 select BOOT_ELF32
625 select DMA_COHERENT
626 select SIBYTE_BCM1120
627 select SWAP_IO_SPACE
628 select SYS_SUPPORTS_BIG_ENDIAN
629 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 630
5e83d430
RB
631config SIBYTE_CRHONE
632 bool "Support for Sibyte BCM91125C-CRhone"
633 depends on EXPERIMENTAL
634 select BOOT_ELF32
635 select DMA_COHERENT
636 select SIBYTE_BCM1125
637 select SWAP_IO_SPACE
638 select SYS_SUPPORTS_BIG_ENDIAN
639 select SYS_SUPPORTS_HIGHMEM
640 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 641
1da177e4
LT
642config SNI_RM200_PCI
643 bool "Support for SNI RM200 PCI"
644 select ARC
645 select ARC32
61ed242d 646 select ARCH_MAY_HAVE_PC_FDC
1da177e4
LT
647 select BOOT_ELF32
648 select DMA_NONCOHERENT
649 select GENERIC_ISA_DMA
650 select HAVE_STD_PC_SERIAL_PORT
5e83d430 651 select HW_HAS_EISA
1da177e4
LT
652 select HW_HAS_PCI
653 select I8259
654 select ISA
ed5ba2fb
YY
655 select SYS_SUPPORTS_32BIT_KERNEL
656 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5e83d430 657 select SYS_SUPPORTS_BIG_ENDIAN if EXPERIMENTAL
797798c1 658 select SYS_SUPPORTS_HIGHMEM
5e83d430 659 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4
LT
660 help
661 The SNI RM200 PCI was a MIPS-based platform manufactured by Siemens
662 Nixdorf Informationssysteme (SNI), parent company of Pyramid
663 Technology and now in turn merged with Fujitsu. Say Y here to
664 support this machine type.
665
5e83d430
RB
666config TOSHIBA_JMR3927
667 bool "Support for Toshiba JMR-TX3927 board"
668 select DMA_NONCOHERENT
669 select HW_HAS_PCI
670 select MIPS_TX3927
671 select SWAP_IO_SPACE
672 select SYS_SUPPORTS_32BIT_KERNEL
673 select SYS_SUPPORTS_BIG_ENDIAN
674 select TOSHIBA_BOARDS
675
1da177e4
LT
676config TOSHIBA_RBTX4927
677 bool "Support for Toshiba TBTX49[23]7 board"
1da177e4
LT
678 select DMA_NONCOHERENT
679 select HAS_TXX9_SERIAL
680 select HW_HAS_PCI
681 select I8259
682 select ISA
683 select SWAP_IO_SPACE
ed5ba2fb
YY
684 select SYS_SUPPORTS_32BIT_KERNEL
685 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430
RB
686 select SYS_SUPPORTS_BIG_ENDIAN
687 select TOSHIBA_BOARDS
1da177e4
LT
688 help
689 This Toshiba board is based on the TX4927 processor. Say Y here to
690 support this machine type
691
5e83d430
RB
692config TOSHIBA_RBTX4938
693 bool "Support for Toshiba RBTX4938 board"
694 select HAVE_STD_PC_SERIAL_PORT
695 select DMA_NONCOHERENT
696 select GENERIC_ISA_DMA
697 select HAS_TXX9_SERIAL
698 select HW_HAS_PCI
699 select I8259
700 select ISA
701 select SWAP_IO_SPACE
702 select SYS_SUPPORTS_32BIT_KERNEL
703 select SYS_SUPPORTS_LITTLE_ENDIAN
704 select SYS_SUPPORTS_BIG_ENDIAN
705 select TOSHIBA_BOARDS
706 help
707 This Toshiba board is based on the TX4938 processor. Say Y here to
708 support this machine type
709
710endchoice
1da177e4 711
5e83d430
RB
712source "arch/mips/ddb5xxx/Kconfig"
713source "arch/mips/gt64120/ev64120/Kconfig"
714source "arch/mips/jazz/Kconfig"
715source "arch/mips/ite-boards/Kconfig"
716source "arch/mips/lasat/Kconfig"
717source "arch/mips/momentum/Kconfig"
718source "arch/mips/pmc-sierra/Kconfig"
29c48699 719source "arch/mips/sgi-ip27/Kconfig"
38b18f72 720source "arch/mips/sibyte/Kconfig"
5e83d430 721source "arch/mips/tx4927/Kconfig"
23fbee9d 722source "arch/mips/tx4938/Kconfig"
5e83d430 723source "arch/mips/vr41xx/Kconfig"
bdf21b18 724source "arch/mips/philips/pnx8550/common/Kconfig"
38b18f72 725
5e83d430
RB
726endmenu
727
1da177e4
LT
728config RWSEM_GENERIC_SPINLOCK
729 bool
730 default y
731
732config RWSEM_XCHGADD_ALGORITHM
733 bool
734
735config GENERIC_CALIBRATE_DELAY
736 bool
737 default y
738
1da177e4
LT
739#
740# Select some configuration options automatically based on user selections.
741#
742config ARC
743 bool
1da177e4 744
61ed242d
RB
745config ARCH_MAY_HAVE_PC_FDC
746 bool
747
4ce588cd 748config DMA_COHERENT
1da177e4
LT
749 bool
750
4ce588cd 751config DMA_IP27
1da177e4
LT
752 bool
753
4ce588cd
RB
754config DMA_IP32
755 bool
756 select DMA_NEED_PCI_MAP_STATE
757
758config DMA_NONCOHERENT
759 bool
760 select DMA_NEED_PCI_MAP_STATE
761
762config DMA_NEED_PCI_MAP_STATE
1da177e4
LT
763 bool
764
5e83d430
RB
765config OWN_DMA
766 bool
767
1da177e4
LT
768config EARLY_PRINTK
769 bool
1da177e4
LT
770
771config GENERIC_ISA_DMA
772 bool
1da177e4
LT
773
774config I8259
775 bool
1da177e4
LT
776
777config LIMITED_DMA
778 bool
779 select HIGHMEM
797798c1 780 select SYS_SUPPORTS_HIGHMEM
1da177e4
LT
781
782config MIPS_BONITO64
783 bool
1da177e4
LT
784
785config MIPS_MSC
786 bool
1da177e4
LT
787
788config MIPS_NILE4
789 bool
1da177e4
LT
790
791config MIPS_DISABLE_OBSOLETE_IDE
792 bool
793
5e83d430
RB
794#
795# Endianess selection. Suffiently obscure so many users don't know what to
796# answer,so we try hard to limit the available choices. Also the use of a
797# choice statement should be more obvious to the user.
798#
799choice
800 prompt "Endianess selection"
1da177e4
LT
801 help
802 Some MIPS machines can be configured for either little or big endian
5e83d430
RB
803 byte order. These modes require different kernels and a different
804 Linux distribution. In general there is one prefered byteorder for a
805 particular system but some systems are just as commonly used in the
806 one or the other endianess.
807
808config CPU_BIG_ENDIAN
809 bool "Big endian"
810 depends on SYS_SUPPORTS_BIG_ENDIAN
811
812config CPU_LITTLE_ENDIAN
813 bool "Little endian"
814 depends on SYS_SUPPORTS_LITTLE_ENDIAN
815 help
816
817endchoice
818
819config SYS_SUPPORTS_BIG_ENDIAN
820 bool
821
822config SYS_SUPPORTS_LITTLE_ENDIAN
823 bool
1da177e4
LT
824
825config IRQ_CPU
826 bool
827
828config IRQ_CPU_RM7K
829 bool
830
5e83d430
RB
831config IRQ_CPU_RM9K
832 bool
833
1da177e4
LT
834config IRQ_MV64340
835 bool
836
837config DDB5XXX_COMMON
838 bool
1da177e4
LT
839
840config MIPS_BOARDS_GEN
841 bool
1da177e4
LT
842
843config MIPS_GT64111
844 bool
1da177e4
LT
845
846config MIPS_GT64120
847 bool
1da177e4
LT
848
849config MIPS_TX3927
850 bool
1da177e4 851 select HAS_TXX9_SERIAL
1da177e4
LT
852
853config PCI_MARVELL
854 bool
855
856config ITE_BOARD_GEN
857 bool
5e83d430
RB
858
859config SOC_AU1000
860 bool
861 select SOC_AU1X00
862
863config SOC_AU1100
864 bool
865 select SOC_AU1X00
866
867config SOC_AU1500
868 bool
869 select SOC_AU1X00
870
871config SOC_AU1550
872 bool
873 select SOC_AU1X00
874
875config SOC_AU1200
876 bool
877 select SOC_AU1X00
878
879config SOC_AU1X00
880 bool
881 select SYS_SUPPORTS_32BIT_KERNEL
1da177e4 882
bdf21b18
PP
883config PNX8550
884 bool
885 select SOC_PNX8550
886
887config SOC_PNX8550
888 bool
889 select SYS_SUPPORTS_32BIT_KERNEL
890 select DMA_NONCOHERENT
891 select HW_HAS_PCI
892
1da177e4
LT
893config SWAP_IO_SPACE
894 bool
895
896#
897# Unfortunately not all GT64120 systems run the chip at the same clock.
898# As the user for the clock rate and try to minimize the available options.
899#
900choice
901 prompt "Galileo Chip Clock"
902 #default SYSCLK_83 if MIPS_EV64120
903 depends on MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
904 default SYSCLK_83 if MIPS_EV64120
905 default SYSCLK_100 if MOMENCO_OCELOT || MOMENCO_OCELOT_G
906
907config SYSCLK_75
908 bool "75" if MIPS_EV64120
909
910config SYSCLK_83
911 bool "83.3" if MIPS_EV64120
912
913config SYSCLK_100
914 bool "100" if MIPS_EV64120 || MOMENCO_OCELOT || MOMENCO_OCELOT_G
915
916endchoice
917
5e83d430
RB
918config ARC32
919 bool
920
1da177e4
LT
921config AU1X00_USB_DEVICE
922 bool
923 depends on MIPS_PB1500 || MIPS_PB1100 || MIPS_PB1000
924 default n
925
926config MIPS_GT96100
927 bool
5e83d430 928 select MIPS_GT64120
1da177e4
LT
929
930config IT8172_CIR
931 bool
932 depends on MIPS_ITE8172 || MIPS_IVR
933 default y
934
935config IT8712
936 bool
937 depends on MIPS_ITE8172
938 default y
939
940config BOOT_ELF32
941 bool
1da177e4
LT
942
943config MIPS_L1_CACHE_SHIFT
944 int
945 default "4" if MACH_DECSTATION
946 default "7" if SGI_IP27
947 default "5"
948
1da177e4
LT
949config HAVE_STD_PC_SERIAL_PORT
950 bool
951
1da177e4
LT
952config ARC_CONSOLE
953 bool "ARC console support"
954 depends on SGI_IP22 || SNI_RM200_PCI
955
956config ARC_MEMORY
957 bool
958 depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP32
959 default y
960
961config ARC_PROMLIB
962 bool
963 depends on MACH_JAZZ || SNI_RM200_PCI || SGI_IP22 || SGI_IP32
964 default y
965
966config ARC64
967 bool
1da177e4
LT
968
969config BOOT_ELF64
970 bool
1da177e4 971
1da177e4
LT
972config TOSHIBA_BOARDS
973 bool
1da177e4
LT
974
975menu "CPU selection"
976
977choice
978 prompt "CPU type"
979 default CPU_R4X00
980
6e760c8d
RB
981config CPU_MIPS32_R1
982 bool "MIPS32 Release 1"
6e760c8d 983 select CPU_HAS_PREFETCH
797798c1 984 select CPU_SUPPORTS_32BIT_KERNEL
1e5f1caa 985 help
5e83d430 986 Choose this option to build a kernel for release 1 or later of the
1e5f1caa
RB
987 MIPS32 architecture. Most modern embedded systems with a 32-bit
988 MIPS processor are based on a MIPS32 processor. If you know the
989 specific type of processor in your system, choose those that one
990 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
991 Release 2 of the MIPS32 architecture is available since several
992 years so chances are you even have a MIPS32 Release 2 processor
993 in which case you should choose CPU_MIPS32_R2 instead for better
994 performance.
995
996config CPU_MIPS32_R2
997 bool "MIPS32 Release 2"
1e5f1caa 998 select CPU_HAS_PREFETCH
797798c1 999 select CPU_SUPPORTS_32BIT_KERNEL
6e760c8d 1000 help
5e83d430 1001 Choose this option to build a kernel for release 2 or later of the
6e760c8d
RB
1002 MIPS32 architecture. Most modern embedded systems with a 32-bit
1003 MIPS processor are based on a MIPS32 processor. If you know the
1004 specific type of processor in your system, choose those that one
1005 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1006
1007config CPU_MIPS64_R1
1008 bool "MIPS64 Release 1"
797798c1 1009 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1010 select CPU_SUPPORTS_32BIT_KERNEL
1011 select CPU_SUPPORTS_64BIT_KERNEL
6e760c8d
RB
1012 help
1013 Choose this option to build a kernel for release 1 or later of the
1014 MIPS64 architecture. Many modern embedded systems with a 64-bit
1015 MIPS processor are based on a MIPS64 processor. If you know the
1016 specific type of processor in your system, choose those that one
1017 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1e5f1caa
RB
1018 Release 2 of the MIPS64 architecture is available since several
1019 years so chances are you even have a MIPS64 Release 2 processor
1020 in which case you should choose CPU_MIPS64_R2 instead for better
1021 performance.
1022
1023config CPU_MIPS64_R2
1024 bool "MIPS64 Release 2"
797798c1 1025 select CPU_HAS_PREFETCH
1e5f1caa
RB
1026 select CPU_SUPPORTS_32BIT_KERNEL
1027 select CPU_SUPPORTS_64BIT_KERNEL
1e5f1caa
RB
1028 help
1029 Choose this option to build a kernel for release 2 or later of the
1030 MIPS64 architecture. Many modern embedded systems with a 64-bit
1031 MIPS processor are based on a MIPS64 processor. If you know the
1032 specific type of processor in your system, choose those that one
1033 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1da177e4
LT
1034
1035config CPU_R3000
1036 bool "R3000"
ed5ba2fb 1037 select CPU_SUPPORTS_32BIT_KERNEL
797798c1 1038 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1039 help
1040 Please make sure to pick the right CPU type. Linux/MIPS is not
1041 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1042 *not* work on R4000 machines and vice versa. However, since most
1043 of the supported machines have an R4000 (or similar) CPU, R4x00
1044 might be a safe bet. If the resulting kernel does not work,
1045 try to recompile with R3000.
1046
1047config CPU_TX39XX
1048 bool "R39XX"
ed5ba2fb 1049 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1050
1051config CPU_VR41XX
1052 bool "R41xx"
ed5ba2fb
YY
1053 select CPU_SUPPORTS_32BIT_KERNEL
1054 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4 1055 help
5e83d430 1056 The options selects support for the NEC VR4100 series of processors.
1da177e4
LT
1057 Only choose this option if you have one of these processors as a
1058 kernel built with this option will not run on any other type of
1059 processor or vice versa.
1060
1061config CPU_R4300
1062 bool "R4300"
ed5ba2fb
YY
1063 select CPU_SUPPORTS_32BIT_KERNEL
1064 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1065 help
1066 MIPS Technologies R4300-series processors.
1067
1068config CPU_R4X00
1069 bool "R4x00"
ed5ba2fb
YY
1070 select CPU_SUPPORTS_32BIT_KERNEL
1071 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1072 help
1073 MIPS Technologies R4000-series processors other than 4300, including
1074 the R4000, R4400, R4600, and 4700.
1075
1076config CPU_TX49XX
1077 bool "R49XX"
ed5ba2fb
YY
1078 select CPU_SUPPORTS_32BIT_KERNEL
1079 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1080
1081config CPU_R5000
1082 bool "R5000"
ed5ba2fb
YY
1083 select CPU_SUPPORTS_32BIT_KERNEL
1084 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1085 help
1086 MIPS Technologies R5000-series processors other than the Nevada.
1087
1088config CPU_R5432
1089 bool "R5432"
5e83d430
RB
1090 select CPU_SUPPORTS_32BIT_KERNEL
1091 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1092
1093config CPU_R6000
1094 bool "R6000"
ed5ba2fb
YY
1095 depends on EXPERIMENTAL
1096 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1097 help
1098 MIPS Technologies R6000 and R6000A series processors. Note these
1099 processors are extremly rare and the support for them is incomplete.
1100
1101config CPU_NEVADA
1102 bool "RM52xx"
ed5ba2fb
YY
1103 select CPU_SUPPORTS_32BIT_KERNEL
1104 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1105 help
1106 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1107
1108config CPU_R8000
1109 bool "R8000"
ed5ba2fb 1110 depends on EXPERIMENTAL
5e83d430 1111 select CPU_HAS_PREFETCH
ed5ba2fb 1112 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1113 help
1114 MIPS Technologies R8000 processors. Note these processors are
1115 uncommon and the support for them is incomplete.
1116
1117config CPU_R10000
1118 bool "R10000"
5e83d430 1119 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1120 select CPU_SUPPORTS_32BIT_KERNEL
1121 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1122 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1123 help
1124 MIPS Technologies R10000-series processors.
1125
1126config CPU_RM7000
1127 bool "RM7000"
5e83d430 1128 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1129 select CPU_SUPPORTS_32BIT_KERNEL
1130 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1131 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1132
1133config CPU_RM9000
1134 bool "RM9000"
5e83d430 1135 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1136 select CPU_SUPPORTS_32BIT_KERNEL
1137 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1138 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1139
1140config CPU_SB1
1141 bool "SB1"
ed5ba2fb
YY
1142 select CPU_SUPPORTS_32BIT_KERNEL
1143 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1144 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1145
1146endchoice
1147
5e83d430
RB
1148endmenu
1149
1150#
1151# These two indicate any levelof the MIPS32 and MIPS64 architecture
1152#
1153config CPU_MIPS32
1154 bool
1155 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1156
1157config CPU_MIPS64
1158 bool
1159 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1160
1161#
1162# These two indicate the revision of the architecture, either 32 bot 64 bit.
1163#
1164config CPU_MIPSR1
1165 bool
1166 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1167
1168config CPU_MIPSR2
1169 bool
1170 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1171
1172config SYS_SUPPORTS_32BIT_KERNEL
1173 bool
1174config SYS_SUPPORTS_64BIT_KERNEL
1175 bool
1176config CPU_SUPPORTS_32BIT_KERNEL
1177 bool
1178config CPU_SUPPORTS_64BIT_KERNEL
1179 bool
1180
1181menu "Kernel type"
1182
1183choice
1184
1185 prompt "Kernel code model"
1186 help
1187 You should only select this option if you have a workload that
1188 actually benefits from 64-bit processing or if your machine has
1189 large memory. You will only be presented a single option in this
1190 menu if your system does not support both 32-bit and 64-bit kernels.
1191
1192config 32BIT
1193 bool "32-bit kernel"
1194 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1195 select TRAD_SIGNALS
1196 help
1197 Select this option if you want to build a 32-bit kernel.
1198config 64BIT
1199 bool "64-bit kernel"
1200 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1201 help
1202 Select this option if you want to build a 64-bit kernel.
1203
1204endchoice
1205
1da177e4
LT
1206choice
1207 prompt "Kernel page size"
1208 default PAGE_SIZE_4KB
1209
1210config PAGE_SIZE_4KB
1211 bool "4kB"
1212 help
1213 This option select the standard 4kB Linux page size. On some
1214 R3000-family processors this is the only available page size. Using
1215 4kB page size will minimize memory consumption and is therefore
1216 recommended for low memory systems.
1217
1218config PAGE_SIZE_8KB
1219 bool "8kB"
1220 depends on EXPERIMENTAL && CPU_R8000
1221 help
1222 Using 8kB page size will result in higher performance kernel at
1223 the price of higher memory consumption. This option is available
1224 only on the R8000 processor. Not that at the time of this writing
1225 this option is still high experimental; there are also issues with
1226 compatibility of user applications.
1227
1228config PAGE_SIZE_16KB
1229 bool "16kB"
1230 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1231 help
1232 Using 16kB 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
1238config PAGE_SIZE_64KB
1239 bool "64kB"
1240 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1241 help
1242 Using 64kB page size will result in higher performance kernel at
1243 the price of higher memory consumption. This option is available on
1244 all non-R3000 family processor. Not that at the time of this
1245 writing this option is still high experimental; there are also
1246 issues with compatibility of user applications.
1247
1248endchoice
1249
1250config BOARD_SCACHE
1251 bool
1252
1253config IP22_CPU_SCACHE
1254 bool
1255 select BOARD_SCACHE
1256
1257config R5000_CPU_SCACHE
1258 bool
1259 select BOARD_SCACHE
1260
1261config RM7000_CPU_SCACHE
1262 bool
1263 select BOARD_SCACHE
1264
1265config SIBYTE_DMA_PAGEOPS
1266 bool "Use DMA to clear/copy pages"
1267 depends on CPU_SB1
1268 help
1269 Instead of using the CPU to zero and copy pages, use a Data Mover
1270 channel. These DMA channels are otherwise unused by the standard
1271 SiByte Linux port. Seems to give a small performance benefit.
1272
1273config CPU_HAS_PREFETCH
c8094b53 1274 bool
1da177e4 1275
e01402b1
RB
1276config MIPS_MT
1277 bool "Enable MIPS MT"
1278
340ee4b9
RB
1279choice
1280 prompt "MIPS MT options"
1281 depends on MIPS_MT
1282
1283config MIPS_MT_SMP
1284 bool "Use 1 TC on each available VPE for SMP"
1285 select SMP
1286
e01402b1
RB
1287config MIPS_VPE_LOADER
1288 bool "VPE loader support."
1289 depends on MIPS_MT
1290 help
1291 Includes a loader for loading an elf relocatable object
1292 onto another VPE and running it.
1293
340ee4b9
RB
1294endchoice
1295
e01402b1
RB
1296config MIPS_VPE_LOADER_TOM
1297 bool "Load VPE program into memory hidden from linux"
1298 depends on MIPS_VPE_LOADER
1299 default y
1300 help
1301 The loader can use memory that is present but has been hidden from
1302 Linux using the kernel command line option "mem=xxMB". It's up to
1303 you to ensure the amount you put in the option and the space your
1304 program requires is less or equal to the amount physically present.
1305
1306# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1307config MIPS_VPE_APSP_API
5e83d430
RB
1308 bool "Enable support for AP/SP API (RTLX)"
1309 depends on MIPS_VPE_LOADER
1310 help
e01402b1 1311
1da177e4
LT
1312config SB1_PASS_1_WORKAROUNDS
1313 bool
1314 depends on CPU_SB1_PASS_1
1315 default y
1316
1317config SB1_PASS_2_WORKAROUNDS
1318 bool
1319 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1320 default y
1321
1322config SB1_PASS_2_1_WORKAROUNDS
1323 bool
1324 depends on CPU_SB1 && CPU_SB1_PASS_2
1325 default y
1326
1327config 64BIT_PHYS_ADDR
1328 bool "Support for 64-bit physical address space"
6e760c8d 1329 depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32_R1 || CPU_MIPS64_R1) && 32BIT
1da177e4
LT
1330
1331config CPU_ADVANCED
1332 bool "Override CPU Options"
875d43e7 1333 depends on 32BIT
1da177e4
LT
1334 help
1335 Saying yes here allows you to select support for various features
1336 your CPU may or may not have. Most people should say N here.
1337
1338config CPU_HAS_LLSC
1339 bool "ll/sc Instructions available" if CPU_ADVANCED
1340 default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX
1341 help
1342 MIPS R4000 series and later provide the Load Linked (ll)
1343 and Store Conditional (sc) instructions. More information is
1344 available at <http://www.go-ecs.com/mips/miptek1.htm>.
1345
1346 Say Y here if your CPU has the ll and sc instructions. Say Y here
1347 for better performance, N if you don't know. You must say Y here
1348 for multiprocessor machines.
1349
1350config CPU_HAS_LLDSCD
1351 bool "lld/scd Instructions available" if CPU_ADVANCED
6e760c8d 1352 default y if !CPU_ADVANCED && !CPU_R3000 && !CPU_VR41XX && !CPU_TX39XX && !CPU_MIPS32_R1
1da177e4
LT
1353 help
1354 Say Y here if your CPU has the lld and scd instructions, the 64-bit
1355 equivalents of ll and sc. Say Y here for better performance, N if
1356 you don't know. You must say Y here for multiprocessor machines.
1357
1358config CPU_HAS_WB
1359 bool "Writeback Buffer available" if CPU_ADVANCED
1360 default y if !CPU_ADVANCED && CPU_R3000 && MACH_DECSTATION
1361 help
1362 Say N here for slightly better performance. You must say Y here for
1363 machines which require flushing of write buffers in software. Saying
1364 Y is the safe option; N may result in kernel malfunction and crashes.
1365
e01402b1
RB
1366menu "MIPSR2 Interrupt handling"
1367 depends on CPU_MIPSR2 && CPU_ADVANCED
1368
1369config CPU_MIPSR2_IRQ_VI
1370 bool "Vectored interrupt mode"
1371 help
1372 Vectored interrupt mode allowing faster dispatching of interrupts.
1373 The board support code needs to be written to take advantage of this
1374 mode. Compatibility code is included to allow the kernel to run on
1375 a CPU that does not support vectored interrupts. It's safe to
1376 say Y here.
1377
1378config CPU_MIPSR2_IRQ_EI
1379 bool "External interrupt controller mode"
1380 help
1381 Extended interrupt mode takes advantage of an external interrupt
1382 controller to allow fast dispatching from many possible interrupt
1383 sources. Say N unless you know that external interrupt support is
1384 required.
1385
1386config CPU_MIPSR2_SRS
1387 bool "Make shadow set registers available for interrupt handlers"
1388 depends on CPU_MIPSR2_IRQ_VI || CPU_MIPSR2_IRQ_EI
1389 help
1390 Allow the kernel to use shadow register sets for fast interrupts.
1391 Interrupt handlers must be specially written to use shadow sets.
1392 Say N unless you know that shadow register set upport is needed.
1393endmenu
1394
1da177e4
LT
1395config CPU_HAS_SYNC
1396 bool
1397 depends on !CPU_R3000
1398 default y
1399
797798c1
RB
1400#
1401# Use the generic interrupt handling code in kernel/irq/:
1402#
1403config GENERIC_HARDIRQS
1404 bool
1405 default y
1406
1407config GENERIC_IRQ_PROBE
1408 bool
1409 default y
1410
1da177e4
LT
1411#
1412# - Highmem only makes sense for the 32-bit kernel.
1413# - The current highmem code will only work properly on physically indexed
1414# caches such as R3000, SB1, R7000 or those that look like they're virtually
1415# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1416# moment we protect the user and offer the highmem option only on machines
1417# where it's known to be safe. This will not offer highmem on a few systems
1418# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1419# indexed CPUs but we're playing safe.
797798c1
RB
1420# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1421# know they might have memory configurations that could make use of highmem
1422# support.
1da177e4
LT
1423#
1424config HIGHMEM
1425 bool "High Memory Support"
797798c1
RB
1426 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1427
1428config CPU_SUPPORTS_HIGHMEM
1429 bool
1430
1431config SYS_SUPPORTS_HIGHMEM
1432 bool
1da177e4 1433
b4819b59
YY
1434config ARCH_FLATMEM_ENABLE
1435 def_bool y
1436 depends on !NUMA
1437
1438source "mm/Kconfig"
1439
1da177e4
LT
1440config SMP
1441 bool "Multi-Processing support"
f137e463 1442 depends on CPU_RM9000 || ((SIBYTE_BCM1x80 || SIBYTE_BCM1x55 || SIBYTE_SB1250) && !SIBYTE_STANDALONE) || SGI_IP27 || MIPS_MT_SMP
1da177e4
LT
1443 ---help---
1444 This enables support for systems with more than one CPU. If you have
1445 a system with only one CPU, like most personal computers, say N. If
1446 you have a system with more than one CPU, say Y.
1447
1448 If you say N here, the kernel will run on single and multiprocessor
1449 machines, but will use only one CPU of a multiprocessor machine. If
1450 you say Y here, the kernel will run on many, but not all,
1451 singleprocessor machines. On a singleprocessor machine, the kernel
1452 will run faster if you say N here.
1453
1454 People using multiprocessor machines who say Y here should also say
1455 Y to "Enhanced Real Time Clock Support", below.
1456
1457 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1458 available at <http://www.tldp.org/docs.html#howto>.
1459
1460 If you don't know what to do here, say N.
1461
1462config NR_CPUS
1463 int "Maximum number of CPUs (2-64)"
1464 range 2 64
1465 depends on SMP
1466 default "64" if SGI_IP27
1467 default "2"
1468 help
1469 This allows you to specify the maximum number of CPUs which this
1470 kernel will support. The maximum supported value is 32 for 32-bit
1471 kernel and 64 for 64-bit kernels; the minimum value which makes
1472 sense is 2.
1473
1474 This is purely to save memory - each supported CPU adds
1475 approximately eight kilobytes to the kernel image.
1476
e80de850 1477source "kernel/Kconfig.preempt"
1da177e4
LT
1478
1479config RTC_DS1742
1480 bool "DS1742 BRAM/RTC support"
1481 depends on TOSHIBA_JMR3927 || TOSHIBA_RBTX4927
1482
1483config MIPS_INSANE_LARGE
1484 bool "Support for large 64-bit configurations"
875d43e7 1485 depends on CPU_R10000 && 64BIT
1da177e4
LT
1486 help
1487 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1488 previous 64-bit processors which only supported 40 bit / 1TB. If you
1489 need processes of more than 1TB virtual address space, say Y here.
1490 This will result in additional memory usage, so it is not
1491 recommended for normal users.
1492
5e83d430
RB
1493endmenu
1494
1da177e4
LT
1495config RWSEM_GENERIC_SPINLOCK
1496 bool
1497 default y
1498
1da177e4
LT
1499menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1500
5e83d430
RB
1501config HW_HAS_EISA
1502 bool
1da177e4
LT
1503config HW_HAS_PCI
1504 bool
1505
1506config PCI
1507 bool "Support for PCI controller"
1508 depends on HW_HAS_PCI
1509 help
1510 Find out whether you have a PCI motherboard. PCI is the name of a
1511 bus system, i.e. the way the CPU talks to the other stuff inside
1512 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1513 say Y, otherwise N.
1514
1515 The PCI-HOWTO, available from
1516 <http://www.tldp.org/docs.html#howto>, contains valuable
1517 information about which PCI hardware does work under Linux and which
1518 doesn't.
1519
1520config PCI_DOMAINS
1521 bool
1522 depends on PCI
1523
1524source "drivers/pci/Kconfig"
1525
1526#
1527# ISA support is now enabled via select. Too many systems still have the one
1528# or other ISA chip on the board that users don't know about so don't expect
1529# users to choose the right thing ...
1530#
1531config ISA
1532 bool
1533
1534config EISA
1535 bool "EISA support"
5e83d430 1536 depends on HW_HAS_EISA
1da177e4
LT
1537 select ISA
1538 ---help---
1539 The Extended Industry Standard Architecture (EISA) bus was
1540 developed as an open alternative to the IBM MicroChannel bus.
1541
1542 The EISA bus provided some of the features of the IBM MicroChannel
1543 bus while maintaining backward compatibility with cards made for
1544 the older ISA bus. The EISA bus saw limited use between 1988 and
1545 1995 when it was made obsolete by the PCI bus.
1546
1547 Say Y here if you are building a kernel for an EISA-based machine.
1548
1549 Otherwise, say N.
1550
1551source "drivers/eisa/Kconfig"
1552
1553config TC
1554 bool "TURBOchannel support"
1555 depends on MACH_DECSTATION
1556 help
1557 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1558 processors. Documentation on writing device drivers for TurboChannel
1559 is available at:
1560 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1561
1562#config ACCESSBUS
1563# bool "Access.Bus support"
1564# depends on TC
1565
1566config MMU
1567 bool
1568 default y
1569
1da177e4
LT
1570source "drivers/pcmcia/Kconfig"
1571
1572source "drivers/pci/hotplug/Kconfig"
1573
1574endmenu
1575
1576menu "Executable file formats"
1577
1578source "fs/Kconfig.binfmt"
1579
1580config TRAD_SIGNALS
1581 bool
1da177e4
LT
1582
1583config BUILD_ELF64
1584 bool "Use 64-bit ELF format for building"
875d43e7 1585 depends on 64BIT
1da177e4
LT
1586 help
1587 A 64-bit kernel is usually built using the 64-bit ELF binary object
1588 format as it's one that allows arbitrary 64-bit constructs. For
1589 kernels that are loaded within the KSEG compatibility segments the
1590 32-bit ELF format can optionally be used resulting in a somewhat
1591 smaller binary, but this option is not explicitly supported by the
1592 toolchain and since binutils 2.14 it does not even work at all.
1593
1594 Say Y to use the 64-bit format or N to use the 32-bit one.
1595
1596 If unsure say Y.
1597
1598config BINFMT_IRIX
1599 bool "Include IRIX binary compatibility"
5e83d430 1600 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1da177e4
LT
1601
1602config MIPS32_COMPAT
1603 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
875d43e7 1604 depends on 64BIT
1da177e4
LT
1605 help
1606 Select this option if you want Linux/MIPS 32-bit binary
1607 compatibility. Since all software available for Linux/MIPS is
1608 currently 32-bit you should say Y here.
1609
1610config COMPAT
1611 bool
1612 depends on MIPS32_COMPAT
1613 default y
1614
1615config MIPS32_O32
1616 bool "Kernel support for o32 binaries"
1617 depends on MIPS32_COMPAT
1618 help
1619 Select this option if you want to run o32 binaries. These are pure
1620 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1621 existing binaries are in this format.
1622
1623 If unsure, say Y.
1624
1625config MIPS32_N32
1626 bool "Kernel support for n32 binaries"
1627 depends on MIPS32_COMPAT
1628 help
1629 Select this option if you want to run n32 binaries. These are
1630 64-bit binaries using 32-bit quantities for addressing and certain
1631 data that would normally be 64-bit. They are used in special
1632 cases.
1633
1634 If unsure, say N.
1635
1636config BINFMT_ELF32
1637 bool
1638 default y if MIPS32_O32 || MIPS32_N32
1639
127c6f66
RB
1640config SECCOMP
1641 bool "Enable seccomp to safely compute untrusted bytecode"
1642 depends on PROC_FS && BROKEN
1643 default y
1644 help
1645 This kernel feature is useful for number crunching applications
1646 that may need to compute untrusted bytecode during their
1647 execution. By using pipes or other transports made available to
1648 the process as file descriptors supporting the read/write
1649 syscalls, it's possible to isolate those applications in
1650 their own address space using seccomp. Once seccomp is
1651 enabled via /proc/<pid>/seccomp, it cannot be disabled
1652 and the task is only allowed to execute a few safe syscalls
1653 defined by each seccomp mode.
1654
1655 If unsure, say Y. Only embedded should say N here.
1656
1da177e4
LT
1657config PM
1658 bool "Power Management support (EXPERIMENTAL)"
5e83d430 1659 depends on EXPERIMENTAL && SOC_AU1X00
1da177e4
LT
1660
1661endmenu
1662
d5950b43
SR
1663source "net/Kconfig"
1664
1da177e4
LT
1665source "drivers/Kconfig"
1666
1667source "fs/Kconfig"
1668
5e83d430
RB
1669source "arch/mips/oprofile/Kconfig"
1670
1da177e4
LT
1671source "arch/mips/Kconfig.debug"
1672
1673source "security/Kconfig"
1674
1675source "crypto/Kconfig"
1676
1677source "lib/Kconfig"