]> bbs.cooldavid.org Git - net-next-2.6.git/blame - arch/mips/Kconfig
[MIPS] The irq_chip for TX39/TX49 SoCs
[net-next-2.6.git] / arch / mips / Kconfig
CommitLineData
1da177e4
LT
1config MIPS
2 bool
3 default y
4 # Horrible source of confusion. Die, die, die ...
5 select EMBEDDED
6
875d43e7
RB
7mainmenu "Linux/MIPS Kernel Configuration"
8
1da177e4
LT
9menu "Machine selection"
10
5ac6da66
CL
11config ZONE_DMA
12 bool
5ac6da66 13
5e83d430
RB
14choice
15 prompt "System type"
16 default SGI_IP22
1da177e4 17
c3543e25
YY
18config MACH_ALCHEMY
19 bool "Alchemy processor based machines"
1da177e4 20
35189fad 21config BASLER_EXCITE
be91589e 22 bool "Basler eXcite smart camera"
35189fad
RB
23 select DMA_COHERENT
24 select HW_HAS_PCI
25 select IRQ_CPU
26 select IRQ_CPU_RM7K
27 select IRQ_CPU_RM9K
663c3d90 28 select MIPS_RM9122
35189fad
RB
29 select SYS_HAS_CPU_RM9000
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_64BIT_KERNEL
32 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 33 select SYS_SUPPORTS_KGDB
35189fad
RB
34 help
35 The eXcite is a smart camera platform manufactured by
be91589e 36 Basler Vision Technologies AG.
35189fad
RB
37
38config BASLER_EXCITE_PROTOTYPE
39 bool "Support for pre-release units"
40 depends on BASLER_EXCITE
41 default n
42 help
43 Pre-series (prototype) units are different from later ones in
44 some ways. Select this option if you have one of these. Please
45 note that a kernel built with this option selected will not be
46 able to run on normal units.
47
1da177e4 48config MIPS_COBALT
3fa986fa 49 bool "Cobalt Server"
1da177e4
LT
50 select DMA_NONCOHERENT
51 select HW_HAS_PCI
52 select I8259
53 select IRQ_CPU
252161ec 54 select PCI_GT64XXX_PCI0
7cf8053b 55 select SYS_HAS_CPU_NEVADA
0a22e0d4 56 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
57 select SYS_SUPPORTS_32BIT_KERNEL
58 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5e83d430 59 select SYS_SUPPORTS_LITTLE_ENDIAN
9fd32cfb 60 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4
LT
61
62config MACH_DECSTATION
3fa986fa 63 bool "DECstations"
1da177e4
LT
64 select BOOT_ELF32
65 select DMA_NONCOHERENT
d388d685 66 select NO_IOPORT
1da177e4 67 select IRQ_CPU
7cf8053b
RB
68 select SYS_HAS_CPU_R3000
69 select SYS_HAS_CPU_R4X00
ed5ba2fb
YY
70 select SYS_SUPPORTS_32BIT_KERNEL
71 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5e83d430 72 select SYS_SUPPORTS_LITTLE_ENDIAN
1723b4a3
AN
73 select SYS_SUPPORTS_128HZ
74 select SYS_SUPPORTS_256HZ
75 select SYS_SUPPORTS_1024HZ
5e83d430 76 help
1da177e4
LT
77 This enables support for DEC's MIPS based workstations. For details
78 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
79 DECstation porting pages on <http://decstation.unix-ag.org/>.
80
81 If you have one of the following DECstation Models you definitely
82 want to choose R4xx0 for the CPU Type:
83
84 DECstation 5000/50
85 DECstation 5000/150
86 DECstation 5000/260
87 DECsystem 5900/260
88
89 otherwise choose R3000.
90
5e83d430 91config MACH_JAZZ
3fa986fa 92 bool "Jazz family of machines"
5e83d430
RB
93 select ARC
94 select ARC32
95 select ARCH_MAY_HAVE_PC_FDC
96 select GENERIC_ISA_DMA
97 select I8259
98 select ISA
de61b542 99 select PCSPEAKER
7cf8053b 100 select SYS_HAS_CPU_R4X00
5e83d430
RB
101 select SYS_SUPPORTS_32BIT_KERNEL
102 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1723b4a3 103 select SYS_SUPPORTS_100HZ
9fd32cfb 104 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4 105 help
5e83d430
RB
106 This a family of machines based on the MIPS R4030 chipset which was
107 used by several vendors to build RISC/os and Windows NT workstations.
108 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
109 Olivetti M700-10 workstations.
110
ade299d8
YY
111config LEMOTE_FULONG
112 bool "Lemote Fulong mini-PC"
113 select ARCH_SPARSEMEM_ENABLE
114 select SYS_HAS_CPU_LOONGSON2
115 select DMA_NONCOHERENT
116 select BOOT_ELF32
117 select BOARD_SCACHE
118 select HAVE_STD_PC_SERIAL_PORT
119 select HW_HAS_PCI
120 select I8259
121 select ISA
122 select IRQ_CPU
123 select SYS_SUPPORTS_32BIT_KERNEL
124 select SYS_SUPPORTS_64BIT_KERNEL
125 select SYS_SUPPORTS_LITTLE_ENDIAN
126 select SYS_SUPPORTS_HIGHMEM
127 select SYS_HAS_EARLY_PRINTK
128 select GENERIC_HARDIRQS_NO__DO_IRQ
129 select CPU_HAS_WB
130 help
131 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
132 an FPGA northbridge
133
1da177e4 134config MIPS_ATLAS
3fa986fa 135 bool "MIPS Atlas board"
1da177e4
LT
136 select BOOT_ELF32
137 select DMA_NONCOHERENT
36a88530 138 select SYS_HAS_EARLY_PRINTK
5e83d430 139 select IRQ_CPU
1da177e4 140 select HW_HAS_PCI
5e83d430
RB
141 select MIPS_BOARDS_GEN
142 select MIPS_BONITO64
252161ec 143 select PCI_GT64XXX_PCI0
5e83d430 144 select MIPS_MSC
f4b7cdb4 145 select RM7000_CPU_SCACHE
1da177e4 146 select SWAP_IO_SPACE
7cf8053b
RB
147 select SYS_HAS_CPU_MIPS32_R1
148 select SYS_HAS_CPU_MIPS32_R2
149 select SYS_HAS_CPU_MIPS64_R1
150 select SYS_HAS_CPU_NEVADA
151 select SYS_HAS_CPU_RM7000
ed5ba2fb
YY
152 select SYS_SUPPORTS_32BIT_KERNEL
153 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430
RB
154 select SYS_SUPPORTS_BIG_ENDIAN
155 select SYS_SUPPORTS_LITTLE_ENDIAN
f41ae0b2 156 select SYS_SUPPORTS_MULTITHREADING if EXPERIMENTAL
9693a853 157 select SYS_SUPPORTS_SMARTMIPS
e77c232c 158 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4 159 help
f638d197 160 This enables support for the MIPS Technologies Atlas evaluation
1da177e4
LT
161 board.
162
163config MIPS_MALTA
3fa986fa 164 bool "MIPS Malta board"
61ed242d 165 select ARCH_MAY_HAVE_PC_FDC
1da177e4 166 select BOOT_ELF32
1da177e4
LT
167 select DMA_NONCOHERENT
168 select GENERIC_ISA_DMA
aa414dff 169 select IRQ_CPU
1da177e4
LT
170 select HW_HAS_PCI
171 select I8259
5e83d430
RB
172 select MIPS_BOARDS_GEN
173 select MIPS_BONITO64
9318c51a 174 select MIPS_CPU_SCACHE
252161ec 175 select PCI_GT64XXX_PCI0
5e83d430 176 select MIPS_MSC
1da177e4 177 select SWAP_IO_SPACE
7cf8053b
RB
178 select SYS_HAS_CPU_MIPS32_R1
179 select SYS_HAS_CPU_MIPS32_R2
180 select SYS_HAS_CPU_MIPS64_R1
181 select SYS_HAS_CPU_NEVADA
182 select SYS_HAS_CPU_RM7000
36a88530 183 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
184 select SYS_SUPPORTS_32BIT_KERNEL
185 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430
RB
186 select SYS_SUPPORTS_BIG_ENDIAN
187 select SYS_SUPPORTS_LITTLE_ENDIAN
f41ae0b2 188 select SYS_SUPPORTS_MULTITHREADING
9693a853 189 select SYS_SUPPORTS_SMARTMIPS
1da177e4 190 help
f638d197 191 This enables support for the MIPS Technologies Malta evaluation
1da177e4
LT
192 board.
193
194config MIPS_SEAD
3fa986fa 195 bool "MIPS SEAD board (EXPERIMENTAL)"
1da177e4
LT
196 depends on EXPERIMENTAL
197 select IRQ_CPU
198 select DMA_NONCOHERENT
36a88530 199 select SYS_HAS_EARLY_PRINTK
5e83d430 200 select MIPS_BOARDS_GEN
7cf8053b
RB
201 select SYS_HAS_CPU_MIPS32_R1
202 select SYS_HAS_CPU_MIPS32_R2
203 select SYS_HAS_CPU_MIPS64_R1
ed5ba2fb 204 select SYS_SUPPORTS_32BIT_KERNEL
5e83d430
RB
205 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
206 select SYS_SUPPORTS_BIG_ENDIAN
207 select SYS_SUPPORTS_LITTLE_ENDIAN
9693a853 208 select SYS_SUPPORTS_SMARTMIPS
f638d197
MR
209 help
210 This enables support for the MIPS Technologies SEAD evaluation
211 board.
1da177e4 212
5e83d430 213config MIPS_SIM
3fa986fa 214 bool 'MIPS simulator (MIPSsim)'
1da177e4 215 select DMA_NONCOHERENT
36a88530 216 select SYS_HAS_EARLY_PRINTK
1da177e4 217 select IRQ_CPU
9267a30d 218 select BOOT_RAW
7cf8053b
RB
219 select SYS_HAS_CPU_MIPS32_R1
220 select SYS_HAS_CPU_MIPS32_R2
36a88530 221 select SYS_HAS_EARLY_PRINTK
ed5ba2fb 222 select SYS_SUPPORTS_32BIT_KERNEL
5e83d430 223 select SYS_SUPPORTS_BIG_ENDIAN
f6e2373a 224 select SYS_SUPPORTS_MULTITHREADING
5e83d430 225 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 226 help
5e83d430
RB
227 This option enables support for MIPS Technologies MIPSsim software
228 emulator.
1da177e4 229
ade299d8
YY
230config MARKEINS
231 bool "NEC EMMA2RH Mark-eins"
232 select DMA_NONCOHERENT
233 select HW_HAS_PCI
234 select IRQ_CPU
235 select SWAP_IO_SPACE
236 select SYS_SUPPORTS_32BIT_KERNEL
237 select SYS_SUPPORTS_BIG_ENDIAN
238 select SYS_SUPPORTS_LITTLE_ENDIAN
239 select SYS_HAS_CPU_R5000
240 help
241 This enables support for the R5432-based NEC Mark-eins
242 boards with R5500 CPU.
243
5e83d430 244config MACH_VR41XX
74142d65 245 bool "NEC VR4100 series based machines"
7cf8053b 246 select SYS_HAS_CPU_VR41XX
9fd32cfb 247 select GENERIC_HARDIRQS_NO__DO_IRQ
5e83d430 248
ade299d8
YY
249config PNX8550_JBS
250 bool "Philips PNX8550 based JBS board"
251 select PNX8550
252 select SYS_SUPPORTS_LITTLE_ENDIAN
253
254config PNX8550_STB810
255 bool "Philips PNX8550 based STB810 board"
256 select PNX8550
257 select SYS_SUPPORTS_LITTLE_ENDIAN
258
9267a30d
MSJ
259config PMC_MSP
260 bool "PMC-Sierra MSP chipsets"
261 depends on EXPERIMENTAL
262 select DMA_NONCOHERENT
263 select SWAP_IO_SPACE
264 select NO_EXCEPT_FILL
265 select BOOT_RAW
266 select SYS_HAS_CPU_MIPS32_R1
267 select SYS_HAS_CPU_MIPS32_R2
268 select SYS_SUPPORTS_32BIT_KERNEL
269 select SYS_SUPPORTS_BIG_ENDIAN
270 select SYS_SUPPORTS_KGDB
271 select IRQ_CPU
272 select SERIAL_8250
273 select SERIAL_8250_CONSOLE
274 help
275 This adds support for the PMC-Sierra family of Multi-Service
276 Processor System-On-A-Chips. These parts include a number
277 of integrated peripherals, interfaces and DSPs in addition to
278 a variety of MIPS cores.
279
5e83d430 280config PMC_YOSEMITE
3fa986fa 281 bool "PMC-Sierra Yosemite eval board"
5e83d430
RB
282 select DMA_COHERENT
283 select HW_HAS_PCI
284 select IRQ_CPU
285 select IRQ_CPU_RM7K
286 select IRQ_CPU_RM9K
287 select SWAP_IO_SPACE
7cf8053b 288 select SYS_HAS_CPU_RM9000
36a88530 289 select SYS_HAS_EARLY_PRINTK
5e83d430
RB
290 select SYS_SUPPORTS_32BIT_KERNEL
291 select SYS_SUPPORTS_64BIT_KERNEL
292 select SYS_SUPPORTS_BIG_ENDIAN
293 select SYS_SUPPORTS_HIGHMEM
cc801077 294 select SYS_SUPPORTS_KGDB
e73ea273 295 select SYS_SUPPORTS_SMP
5e83d430
RB
296 help
297 Yosemite is an evaluation board for the RM9000x2 processor
298 manufactured by PMC-Sierra.
1da177e4 299
07119621 300config QEMU
3fa986fa 301 bool "Qemu"
07119621
RB
302 select DMA_COHERENT
303 select GENERIC_ISA_DMA
304 select HAVE_STD_PC_SERIAL_PORT
305 select I8259
306 select ISA
de61b542 307 select PCSPEAKER
07119621 308 select SWAP_IO_SPACE
7cf8053b 309 select SYS_HAS_CPU_MIPS32_R1
07119621
RB
310 select SYS_SUPPORTS_32BIT_KERNEL
311 select SYS_SUPPORTS_BIG_ENDIAN
c8cc9618 312 select SYS_SUPPORTS_LITTLE_ENDIAN
b1c6cd42 313 select ARCH_SPARSEMEM_ENABLE
9fd32cfb 314 select GENERIC_HARDIRQS_NO__DO_IRQ
72ede9b1
AN
315 select NR_CPUS_DEFAULT_1
316 select SYS_SUPPORTS_SMP
07119621 317 help
5e83d430
RB
318 Qemu is a software emulator which among other architectures also
319 can simulate a MIPS32 4Kc system. This patch adds support for the
320 system architecture that currently is being simulated by Qemu. It
321 will eventually be removed again when Qemu has the capability to
322 simulate actual MIPS hardware platforms. More information on Qemu
323 can be found at http://www.linux-mips.org/wiki/Qemu.
07119621 324
1da177e4 325config SGI_IP22
3fa986fa 326 bool "SGI IP22 (Indy/Indigo2)"
1da177e4
LT
327 select ARC
328 select ARC32
329 select BOOT_ELF32
330 select DMA_NONCOHERENT
5e83d430 331 select HW_HAS_EISA
1da177e4
LT
332 select IP22_CPU_SCACHE
333 select IRQ_CPU
aa414dff 334 select GENERIC_ISA_DMA_SUPPORT_BROKEN
1da177e4 335 select SWAP_IO_SPACE
7cf8053b
RB
336 select SYS_HAS_CPU_R4X00
337 select SYS_HAS_CPU_R5000
36a88530 338 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
339 select SYS_SUPPORTS_32BIT_KERNEL
340 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 341 select SYS_SUPPORTS_BIG_ENDIAN
1da177e4
LT
342 help
343 This are the SGI Indy, Challenge S and Indigo2, as well as certain
344 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
345 that runs on these, say Y here.
346
347config SGI_IP27
3fa986fa 348 bool "SGI IP27 (Origin200/2000)"
1da177e4
LT
349 select ARC
350 select ARC64
5e83d430 351 select BOOT_ELF64
1da177e4 352 select DMA_IP27
36a88530 353 select SYS_HAS_EARLY_PRINTK
1da177e4 354 select HW_HAS_PCI
130e2fb7 355 select NR_CPUS_DEFAULT_64
1da177e4 356 select PCI_DOMAINS
7cf8053b 357 select SYS_HAS_CPU_R10000
ed5ba2fb 358 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 359 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 360 select SYS_SUPPORTS_KGDB
d8cb4e11 361 select SYS_SUPPORTS_NUMA
1a5c5de1 362 select SYS_SUPPORTS_SMP
e77c232c 363 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4
LT
364 help
365 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
366 workstations. To compile a Linux kernel that runs on these, say Y
367 here.
368
1da177e4 369config SGI_IP32
cfd2afc0 370 bool "SGI IP32 (O2)"
1da177e4
LT
371 select ARC
372 select ARC32
373 select BOOT_ELF32
1da177e4
LT
374 select DMA_NONCOHERENT
375 select HW_HAS_PCI
376 select R5000_CPU_SCACHE
377 select RM7000_CPU_SCACHE
7cf8053b
RB
378 select SYS_HAS_CPU_R5000
379 select SYS_HAS_CPU_R10000 if BROKEN
380 select SYS_HAS_CPU_RM7000
dd2f18fe 381 select SYS_HAS_CPU_NEVADA
ed5ba2fb 382 select SYS_SUPPORTS_64BIT_KERNEL
23fbee9d 383 select SYS_SUPPORTS_BIG_ENDIAN
23fbee9d 384 help
5e83d430 385 If you want this kernel to run on SGI O2 workstation, say Y here.
1da177e4 386
ade299d8
YY
387config SIBYTE_CRHINE
388 bool "Sibyte BCM91120C-CRhine"
389 depends on EXPERIMENTAL
9a6dcea1
AI
390 select BOOT_ELF32
391 select DMA_COHERENT
ade299d8 392 select SIBYTE_BCM1120
9a6dcea1 393 select SWAP_IO_SPACE
7cf8053b 394 select SYS_HAS_CPU_SB1
9a6dcea1
AI
395 select SYS_SUPPORTS_BIG_ENDIAN
396 select SYS_SUPPORTS_LITTLE_ENDIAN
397
ade299d8
YY
398config SIBYTE_CARMEL
399 bool "Sibyte BCM91120x-Carmel"
400 depends on EXPERIMENTAL
5e83d430 401 select BOOT_ELF32
1da177e4 402 select DMA_COHERENT
ade299d8 403 select SIBYTE_BCM1120
5e83d430 404 select SWAP_IO_SPACE
7cf8053b 405 select SYS_HAS_CPU_SB1
81731f79 406 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430 407 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 408
ade299d8
YY
409config SIBYTE_CRHONE
410 bool "Sibyte BCM91125C-CRhone"
5e83d430
RB
411 depends on EXPERIMENTAL
412 select BOOT_ELF32
413 select DMA_COHERENT
ade299d8 414 select SIBYTE_BCM1125
5e83d430 415 select SWAP_IO_SPACE
7cf8053b 416 select SYS_HAS_CPU_SB1
5e83d430 417 select SYS_SUPPORTS_BIG_ENDIAN
ade299d8 418 select SYS_SUPPORTS_HIGHMEM
5e83d430 419 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 420
5e83d430 421config SIBYTE_RHONE
3fa986fa 422 bool "Sibyte BCM91125E-Rhone"
5e83d430
RB
423 depends on EXPERIMENTAL
424 select BOOT_ELF32
425 select DMA_COHERENT
426 select SIBYTE_BCM1125H
427 select SWAP_IO_SPACE
7cf8053b 428 select SYS_HAS_CPU_SB1
5e83d430
RB
429 select SYS_SUPPORTS_BIG_ENDIAN
430 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 431
ade299d8
YY
432config SIBYTE_SWARM
433 bool "Sibyte BCM91250A-SWARM"
5e83d430 434 select BOOT_ELF32
26a940e2 435 select DMA_COHERENT
ade299d8
YY
436 select NR_CPUS_DEFAULT_2
437 select SIBYTE_SB1250
5e83d430 438 select SWAP_IO_SPACE
7cf8053b 439 select SYS_HAS_CPU_SB1
5e83d430 440 select SYS_SUPPORTS_BIG_ENDIAN
ade299d8
YY
441 select SYS_SUPPORTS_HIGHMEM
442 select SYS_SUPPORTS_KGDB
e3ad1c23
PP
443 select SYS_SUPPORTS_LITTLE_ENDIAN
444
ade299d8
YY
445config SIBYTE_LITTLESUR
446 bool "Sibyte BCM91250C2-LittleSur"
5e83d430
RB
447 depends on EXPERIMENTAL
448 select BOOT_ELF32
449 select DMA_COHERENT
130e2fb7 450 select NR_CPUS_DEFAULT_2
5e83d430
RB
451 select SIBYTE_SB1250
452 select SWAP_IO_SPACE
7cf8053b 453 select SYS_HAS_CPU_SB1
5e83d430
RB
454 select SYS_SUPPORTS_BIG_ENDIAN
455 select SYS_SUPPORTS_HIGHMEM
456 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 457
ade299d8
YY
458config SIBYTE_SENTOSA
459 bool "Sibyte BCM91250E-Sentosa"
5e83d430
RB
460 depends on EXPERIMENTAL
461 select BOOT_ELF32
462 select DMA_COHERENT
130e2fb7 463 select NR_CPUS_DEFAULT_2
5e83d430
RB
464 select SIBYTE_SB1250
465 select SWAP_IO_SPACE
7cf8053b 466 select SYS_HAS_CPU_SB1
5e83d430 467 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430 468 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 469
ade299d8
YY
470config SIBYTE_PTSWARM
471 bool "Sibyte BCM91250PT-PTSWARM"
5e83d430
RB
472 depends on EXPERIMENTAL
473 select BOOT_ELF32
474 select DMA_COHERENT
ade299d8
YY
475 select NR_CPUS_DEFAULT_2
476 select SIBYTE_SB1250
5e83d430 477 select SWAP_IO_SPACE
7cf8053b 478 select SYS_HAS_CPU_SB1
5e83d430 479 select SYS_SUPPORTS_BIG_ENDIAN
ade299d8 480 select SYS_SUPPORTS_HIGHMEM
5e83d430 481 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 482
ade299d8
YY
483config SIBYTE_BIGSUR
484 bool "Sibyte BCM91480B-BigSur"
5e83d430
RB
485 select BOOT_ELF32
486 select DMA_COHERENT
ade299d8
YY
487 select NR_CPUS_DEFAULT_4
488 select PCI_DOMAINS
489 select SIBYTE_BCM1x80
5e83d430 490 select SWAP_IO_SPACE
7cf8053b 491 select SYS_HAS_CPU_SB1
5e83d430 492 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430 493 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 494
14b36af4
TB
495config SNI_RM
496 bool "SNI RM200/300/400"
4a0312fc
TB
497 select ARC if CPU_LITTLE_ENDIAN
498 select ARC32 if CPU_LITTLE_ENDIAN
61ed242d 499 select ARCH_MAY_HAVE_PC_FDC
1da177e4
LT
500 select BOOT_ELF32
501 select DMA_NONCOHERENT
502 select GENERIC_ISA_DMA
5e83d430 503 select HW_HAS_EISA
1da177e4 504 select HW_HAS_PCI
c066a32a 505 select IRQ_CPU
1da177e4
LT
506 select I8259
507 select ISA
de61b542 508 select PCSPEAKER
4a0312fc 509 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
7cf8053b 510 select SYS_HAS_CPU_R4X00
4a0312fc 511 select SYS_HAS_CPU_R5000
c066a32a 512 select SYS_HAS_CPU_R10000
4a0312fc 513 select R5000_CPU_SCACHE
36a88530 514 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
515 select SYS_SUPPORTS_32BIT_KERNEL
516 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
4a0312fc 517 select SYS_SUPPORTS_BIG_ENDIAN
797798c1 518 select SYS_SUPPORTS_HIGHMEM
5e83d430 519 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 520 help
14b36af4
TB
521 The SNI RM200/300/400 are MIPS-based machines manufactured by
522 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
1da177e4
LT
523 Technology and now in turn merged with Fujitsu. Say Y here to
524 support this machine type.
525
5e83d430 526config TOSHIBA_JMR3927
3fa986fa 527 bool "Toshiba JMR-TX3927 board"
5e83d430
RB
528 select DMA_NONCOHERENT
529 select HW_HAS_PCI
530 select MIPS_TX3927
531 select SWAP_IO_SPACE
7cf8053b 532 select SYS_HAS_CPU_TX39XX
5e83d430 533 select SYS_SUPPORTS_32BIT_KERNEL
6a2603a2 534 select SYS_SUPPORTS_LITTLE_ENDIAN
5e83d430 535 select SYS_SUPPORTS_BIG_ENDIAN
2127435e 536 select GENERIC_HARDIRQS_NO__DO_IRQ
5e83d430 537
1da177e4 538config TOSHIBA_RBTX4927
08a91283 539 bool "Toshiba RBTX49[23]7 board"
1da177e4
LT
540 select DMA_NONCOHERENT
541 select HAS_TXX9_SERIAL
542 select HW_HAS_PCI
543 select I8259
1da177e4 544 select SWAP_IO_SPACE
7cf8053b 545 select SYS_HAS_CPU_TX49XX
ed5ba2fb
YY
546 select SYS_SUPPORTS_32BIT_KERNEL
547 select SYS_SUPPORTS_64BIT_KERNEL
6a2603a2 548 select SYS_SUPPORTS_LITTLE_ENDIAN
5e83d430 549 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 550 select SYS_SUPPORTS_KGDB
9fd32cfb 551 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4
LT
552 help
553 This Toshiba board is based on the TX4927 processor. Say Y here to
554 support this machine type
555
5e83d430 556config TOSHIBA_RBTX4938
3fa986fa 557 bool "Toshiba RBTX4938 board"
5e83d430
RB
558 select HAVE_STD_PC_SERIAL_PORT
559 select DMA_NONCOHERENT
560 select GENERIC_ISA_DMA
561 select HAS_TXX9_SERIAL
562 select HW_HAS_PCI
563 select I8259
5e83d430 564 select SWAP_IO_SPACE
7cf8053b 565 select SYS_HAS_CPU_TX49XX
5e83d430
RB
566 select SYS_SUPPORTS_32BIT_KERNEL
567 select SYS_SUPPORTS_LITTLE_ENDIAN
568 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 569 select SYS_SUPPORTS_KGDB
9fd32cfb 570 select GENERIC_HARDIRQS_NO__DO_IRQ
3896b054 571 select GENERIC_GPIO
5e83d430
RB
572 help
573 This Toshiba board is based on the TX4938 processor. Say Y here to
574 support this machine type
575
ade299d8
YY
576config WR_PPMC
577 bool "Wind River PPMC board"
578 select IRQ_CPU
579 select BOOT_ELF32
580 select DMA_NONCOHERENT
581 select HW_HAS_PCI
582 select PCI_GT64XXX_PCI0
583 select SWAP_IO_SPACE
584 select SYS_HAS_CPU_MIPS32_R1
585 select SYS_HAS_CPU_MIPS32_R2
586 select SYS_HAS_CPU_MIPS64_R1
587 select SYS_HAS_CPU_NEVADA
588 select SYS_HAS_CPU_RM7000
589 select SYS_SUPPORTS_32BIT_KERNEL
590 select SYS_SUPPORTS_64BIT_KERNEL
591 select SYS_SUPPORTS_BIG_ENDIAN
592 select SYS_SUPPORTS_LITTLE_ENDIAN
593 help
594 This enables support for the Wind River MIPS32 4KC PPMC evaluation
595 board, which is based on GT64120 bridge chip.
596
5e83d430 597endchoice
1da177e4 598
c3543e25 599source "arch/mips/au1000/Kconfig"
5e83d430 600source "arch/mips/jazz/Kconfig"
5e83d430 601source "arch/mips/pmc-sierra/Kconfig"
29c48699 602source "arch/mips/sgi-ip27/Kconfig"
38b18f72 603source "arch/mips/sibyte/Kconfig"
5e83d430 604source "arch/mips/tx4927/Kconfig"
23fbee9d 605source "arch/mips/tx4938/Kconfig"
5e83d430 606source "arch/mips/vr41xx/Kconfig"
38b18f72 607
5e83d430
RB
608endmenu
609
1da177e4
LT
610config RWSEM_GENERIC_SPINLOCK
611 bool
612 default y
613
614config RWSEM_XCHGADD_ALGORITHM
615 bool
616
f0d1b0b3
DH
617config ARCH_HAS_ILOG2_U32
618 bool
619 default n
620
621config ARCH_HAS_ILOG2_U64
622 bool
623 default n
624
3c9ee7ef
AM
625config GENERIC_FIND_NEXT_BIT
626 bool
627 default y
628
629config GENERIC_HWEIGHT
630 bool
631 default y
632
1da177e4
LT
633config GENERIC_CALIBRATE_DELAY
634 bool
635 default y
636
8db02010
RB
637config GENERIC_TIME
638 bool
639 default y
640
1cc89038
AN
641config SCHED_NO_NO_OMIT_FRAME_POINTER
642 bool
643 default y
644
e77c232c
FBH
645config GENERIC_HARDIRQS_NO__DO_IRQ
646 bool
647 default n
648
1da177e4
LT
649#
650# Select some configuration options automatically based on user selections.
651#
652config ARC
653 bool
1da177e4 654
61ed242d
RB
655config ARCH_MAY_HAVE_PC_FDC
656 bool
657
9267a30d
MSJ
658config BOOT_RAW
659 bool
660
4ce588cd 661config DMA_COHERENT
1da177e4
LT
662 bool
663
4ce588cd 664config DMA_IP27
1da177e4
LT
665 bool
666
4ce588cd
RB
667config DMA_IP32
668 bool
669 select DMA_NEED_PCI_MAP_STATE
670
671config DMA_NONCOHERENT
672 bool
673 select DMA_NEED_PCI_MAP_STATE
674
675config DMA_NEED_PCI_MAP_STATE
1da177e4
LT
676 bool
677
678config EARLY_PRINTK
36a88530
RB
679 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
680 depends on SYS_HAS_EARLY_PRINTK
681 default y
682 help
683 This option enables special console drivers which allow the kernel
684 to print messages very early in the bootup process.
685
686 This is useful for kernel debugging when your machine crashes very
490dcc4d
RD
687 early before the console code is initialized. For normal operation,
688 it is not recommended because it looks ugly on some machines and
689 doesn't cooperate with an X server. You should normally say N here,
36a88530
RB
690 unless you want to debug such a crash.
691
692config SYS_HAS_EARLY_PRINTK
1da177e4 693 bool
1da177e4
LT
694
695config GENERIC_ISA_DMA
696 bool
05502339 697 select ZONE_DMA
1da177e4
LT
698
699config I8259
700 bool
1da177e4 701
1da177e4
LT
702config MIPS_BONITO64
703 bool
1da177e4
LT
704
705config MIPS_MSC
706 bool
1da177e4 707
1da177e4
LT
708config MIPS_DISABLE_OBSOLETE_IDE
709 bool
710
d388d685
MR
711config NO_IOPORT
712 def_bool n
713
aa414dff
RB
714config GENERIC_ISA_DMA_SUPPORT_BROKEN
715 bool
05502339 716 select ZONE_DMA
aa414dff 717
09663335
YY
718config GENERIC_GPIO
719 bool
720
5e83d430 721#
3cb2fccc 722# Endianess selection. Sufficiently obscure so many users don't know what to
5e83d430
RB
723# answer,so we try hard to limit the available choices. Also the use of a
724# choice statement should be more obvious to the user.
725#
726choice
727 prompt "Endianess selection"
1da177e4
LT
728 help
729 Some MIPS machines can be configured for either little or big endian
5e83d430 730 byte order. These modes require different kernels and a different
3cb2fccc 731 Linux distribution. In general there is one preferred byteorder for a
5e83d430 732 particular system but some systems are just as commonly used in the
3dde6ad8 733 one or the other endianness.
5e83d430
RB
734
735config CPU_BIG_ENDIAN
736 bool "Big endian"
737 depends on SYS_SUPPORTS_BIG_ENDIAN
738
739config CPU_LITTLE_ENDIAN
740 bool "Little endian"
741 depends on SYS_SUPPORTS_LITTLE_ENDIAN
742 help
743
744endchoice
745
2116245e
RB
746config SYS_SUPPORTS_APM_EMULATION
747 bool
748
5e83d430
RB
749config SYS_SUPPORTS_BIG_ENDIAN
750 bool
751
752config SYS_SUPPORTS_LITTLE_ENDIAN
753 bool
1da177e4
LT
754
755config IRQ_CPU
756 bool
757
758config IRQ_CPU_RM7K
759 bool
760
5e83d430
RB
761config IRQ_CPU_RM9K
762 bool
763
9267a30d
MSJ
764config IRQ_MSP_SLP
765 bool
766
767config IRQ_MSP_CIC
768 bool
769
8420fd00
AN
770config IRQ_TXX9
771 bool
772
1da177e4
LT
773config MIPS_BOARDS_GEN
774 bool
1da177e4 775
252161ec 776config PCI_GT64XXX_PCI0
1da177e4 777 bool
1da177e4 778
9267a30d
MSJ
779config NO_EXCEPT_FILL
780 bool
781
1da177e4
LT
782config MIPS_TX3927
783 bool
1da177e4 784 select HAS_TXX9_SERIAL
1da177e4 785
663c3d90 786config MIPS_RM9122
787 bool
788 select SERIAL_RM9000
663c3d90 789
bdf21b18
PP
790config PNX8550
791 bool
792 select SOC_PNX8550
793
794config SOC_PNX8550
795 bool
bdf21b18
PP
796 select DMA_NONCOHERENT
797 select HW_HAS_PCI
b8c2a77c 798 select SYS_HAS_CPU_MIPS32_R1
36a88530 799 select SYS_HAS_EARLY_PRINTK
7cf8053b 800 select SYS_SUPPORTS_32BIT_KERNEL
e77c232c 801 select GENERIC_HARDIRQS_NO__DO_IRQ
cc801077 802 select SYS_SUPPORTS_KGDB
4ead1681 803 select GENERIC_GPIO
bdf21b18 804
1da177e4
LT
805config SWAP_IO_SPACE
806 bool
807
355c471f 808config EMMA2RH
809 bool
810 depends on MARKEINS
811 default y
812
663c3d90 813config SERIAL_RM9000
814 bool
815
1da177e4
LT
816#
817# Unfortunately not all GT64120 systems run the chip at the same clock.
818# As the user for the clock rate and try to minimize the available options.
819#
820choice
821 prompt "Galileo Chip Clock"
6b5bf509 822 depends on MOMENCO_OCELOT
1e54f778 823 default SYSCLK_100 if MOMENCO_OCELOT
1da177e4 824
1da177e4 825config SYSCLK_100
6b5bf509 826 bool "100" if MOMENCO_OCELOT
1da177e4
LT
827
828endchoice
829
5e83d430
RB
830config ARC32
831 bool
832
1da177e4
LT
833config BOOT_ELF32
834 bool
1da177e4
LT
835
836config MIPS_L1_CACHE_SHIFT
837 int
06cf5583
TB
838 default "4" if MACH_DECSTATION
839 default "7" if SGI_IP27 || SNI_RM
9267a30d 840 default "4" if PMC_MSP4200_EVAL
1da177e4
LT
841 default "5"
842
1da177e4
LT
843config HAVE_STD_PC_SERIAL_PORT
844 bool
845
1da177e4
LT
846config ARC_CONSOLE
847 bool "ARC console support"
36a88530 848 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
1da177e4
LT
849
850config ARC_MEMORY
851 bool
14b36af4 852 depends on MACH_JAZZ || SNI_RM || SGI_IP32
1da177e4
LT
853 default y
854
855config ARC_PROMLIB
856 bool
14b36af4 857 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
1da177e4
LT
858 default y
859
860config ARC64
861 bool
1da177e4
LT
862
863config BOOT_ELF64
864 bool
1da177e4 865
1da177e4
LT
866menu "CPU selection"
867
868choice
869 prompt "CPU type"
870 default CPU_R4X00
871
2a21c730
FZ
872config CPU_LOONGSON2
873 bool "Loongson 2"
874 depends on SYS_HAS_CPU_LOONGSON2
875 select CPU_SUPPORTS_32BIT_KERNEL
876 select CPU_SUPPORTS_64BIT_KERNEL
877 select CPU_SUPPORTS_HIGHMEM
878 help
879 The Loongson 2E processor implements the MIPS III instruction set
880 with many extensions.
881
6e760c8d
RB
882config CPU_MIPS32_R1
883 bool "MIPS32 Release 1"
7cf8053b 884 depends on SYS_HAS_CPU_MIPS32_R1
f7062ddb 885 select CPU_HAS_LLSC
6e760c8d 886 select CPU_HAS_PREFETCH
797798c1 887 select CPU_SUPPORTS_32BIT_KERNEL
ec28f306 888 select CPU_SUPPORTS_HIGHMEM
1e5f1caa 889 help
5e83d430 890 Choose this option to build a kernel for release 1 or later of the
1e5f1caa
RB
891 MIPS32 architecture. Most modern embedded systems with a 32-bit
892 MIPS processor are based on a MIPS32 processor. If you know the
893 specific type of processor in your system, choose those that one
894 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
895 Release 2 of the MIPS32 architecture is available since several
896 years so chances are you even have a MIPS32 Release 2 processor
897 in which case you should choose CPU_MIPS32_R2 instead for better
898 performance.
899
900config CPU_MIPS32_R2
901 bool "MIPS32 Release 2"
7cf8053b 902 depends on SYS_HAS_CPU_MIPS32_R2
f7062ddb 903 select CPU_HAS_LLSC
1e5f1caa 904 select CPU_HAS_PREFETCH
797798c1 905 select CPU_SUPPORTS_32BIT_KERNEL
ec28f306 906 select CPU_SUPPORTS_HIGHMEM
6e760c8d 907 help
5e83d430 908 Choose this option to build a kernel for release 2 or later of the
6e760c8d
RB
909 MIPS32 architecture. Most modern embedded systems with a 32-bit
910 MIPS processor are based on a MIPS32 processor. If you know the
911 specific type of processor in your system, choose those that one
912 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
913
914config CPU_MIPS64_R1
915 bool "MIPS64 Release 1"
7cf8053b 916 depends on SYS_HAS_CPU_MIPS64_R1
f7062ddb 917 select CPU_HAS_LLSC
797798c1 918 select CPU_HAS_PREFETCH
ed5ba2fb
YY
919 select CPU_SUPPORTS_32BIT_KERNEL
920 select CPU_SUPPORTS_64BIT_KERNEL
ec28f306 921 select CPU_SUPPORTS_HIGHMEM
6e760c8d
RB
922 help
923 Choose this option to build a kernel for release 1 or later of the
924 MIPS64 architecture. Many modern embedded systems with a 64-bit
925 MIPS processor are based on a MIPS64 processor. If you know the
926 specific type of processor in your system, choose those that one
927 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1e5f1caa
RB
928 Release 2 of the MIPS64 architecture is available since several
929 years so chances are you even have a MIPS64 Release 2 processor
930 in which case you should choose CPU_MIPS64_R2 instead for better
931 performance.
932
933config CPU_MIPS64_R2
934 bool "MIPS64 Release 2"
7cf8053b 935 depends on SYS_HAS_CPU_MIPS64_R2
f7062ddb 936 select CPU_HAS_LLSC
797798c1 937 select CPU_HAS_PREFETCH
1e5f1caa
RB
938 select CPU_SUPPORTS_32BIT_KERNEL
939 select CPU_SUPPORTS_64BIT_KERNEL
ec28f306 940 select CPU_SUPPORTS_HIGHMEM
1e5f1caa
RB
941 help
942 Choose this option to build a kernel for release 2 or later of the
943 MIPS64 architecture. Many modern embedded systems with a 64-bit
944 MIPS processor are based on a MIPS64 processor. If you know the
945 specific type of processor in your system, choose those that one
946 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1da177e4
LT
947
948config CPU_R3000
949 bool "R3000"
7cf8053b 950 depends on SYS_HAS_CPU_R3000
f7062ddb 951 select CPU_HAS_WB
ed5ba2fb 952 select CPU_SUPPORTS_32BIT_KERNEL
797798c1 953 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
954 help
955 Please make sure to pick the right CPU type. Linux/MIPS is not
956 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
957 *not* work on R4000 machines and vice versa. However, since most
958 of the supported machines have an R4000 (or similar) CPU, R4x00
959 might be a safe bet. If the resulting kernel does not work,
960 try to recompile with R3000.
961
962config CPU_TX39XX
963 bool "R39XX"
7cf8053b 964 depends on SYS_HAS_CPU_TX39XX
ed5ba2fb 965 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
966
967config CPU_VR41XX
968 bool "R41xx"
7cf8053b 969 depends on SYS_HAS_CPU_VR41XX
ed5ba2fb
YY
970 select CPU_SUPPORTS_32BIT_KERNEL
971 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4 972 help
5e83d430 973 The options selects support for the NEC VR4100 series of processors.
1da177e4
LT
974 Only choose this option if you have one of these processors as a
975 kernel built with this option will not run on any other type of
976 processor or vice versa.
977
978config CPU_R4300
979 bool "R4300"
7cf8053b 980 depends on SYS_HAS_CPU_R4300
f7062ddb 981 select CPU_HAS_LLSC
ed5ba2fb
YY
982 select CPU_SUPPORTS_32BIT_KERNEL
983 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
984 help
985 MIPS Technologies R4300-series processors.
986
987config CPU_R4X00
988 bool "R4x00"
7cf8053b 989 depends on SYS_HAS_CPU_R4X00
f7062ddb 990 select CPU_HAS_LLSC
ed5ba2fb
YY
991 select CPU_SUPPORTS_32BIT_KERNEL
992 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
993 help
994 MIPS Technologies R4000-series processors other than 4300, including
995 the R4000, R4400, R4600, and 4700.
996
997config CPU_TX49XX
998 bool "R49XX"
7cf8053b 999 depends on SYS_HAS_CPU_TX49XX
f7062ddb 1000 select CPU_HAS_LLSC
de862b48 1001 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1002 select CPU_SUPPORTS_32BIT_KERNEL
1003 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1004
1005config CPU_R5000
1006 bool "R5000"
7cf8053b 1007 depends on SYS_HAS_CPU_R5000
f7062ddb 1008 select CPU_HAS_LLSC
ed5ba2fb
YY
1009 select CPU_SUPPORTS_32BIT_KERNEL
1010 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1011 help
1012 MIPS Technologies R5000-series processors other than the Nevada.
1013
1014config CPU_R5432
1015 bool "R5432"
7cf8053b 1016 depends on SYS_HAS_CPU_R5432
f7062ddb 1017 select CPU_HAS_LLSC
5e83d430
RB
1018 select CPU_SUPPORTS_32BIT_KERNEL
1019 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1020
1021config CPU_R6000
1022 bool "R6000"
ed5ba2fb 1023 depends on EXPERIMENTAL
f7062ddb 1024 select CPU_HAS_LLSC
7cf8053b 1025 depends on SYS_HAS_CPU_R6000
ed5ba2fb 1026 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1027 help
1028 MIPS Technologies R6000 and R6000A series processors. Note these
c09b47d8 1029 processors are extremely rare and the support for them is incomplete.
1da177e4
LT
1030
1031config CPU_NEVADA
1032 bool "RM52xx"
7cf8053b 1033 depends on SYS_HAS_CPU_NEVADA
f7062ddb 1034 select CPU_HAS_LLSC
ed5ba2fb
YY
1035 select CPU_SUPPORTS_32BIT_KERNEL
1036 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1037 help
1038 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1039
1040config CPU_R8000
1041 bool "R8000"
ed5ba2fb 1042 depends on EXPERIMENTAL
7cf8053b 1043 depends on SYS_HAS_CPU_R8000
f7062ddb 1044 select CPU_HAS_LLSC
5e83d430 1045 select CPU_HAS_PREFETCH
ed5ba2fb 1046 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1047 help
1048 MIPS Technologies R8000 processors. Note these processors are
1049 uncommon and the support for them is incomplete.
1050
1051config CPU_R10000
1052 bool "R10000"
7cf8053b 1053 depends on SYS_HAS_CPU_R10000
f7062ddb 1054 select CPU_HAS_LLSC
5e83d430 1055 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1056 select CPU_SUPPORTS_32BIT_KERNEL
1057 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1058 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1059 help
1060 MIPS Technologies R10000-series processors.
1061
1062config CPU_RM7000
1063 bool "RM7000"
7cf8053b 1064 depends on SYS_HAS_CPU_RM7000
f7062ddb 1065 select CPU_HAS_LLSC
5e83d430 1066 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1067 select CPU_SUPPORTS_32BIT_KERNEL
1068 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1069 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1070
1071config CPU_RM9000
1072 bool "RM9000"
7cf8053b 1073 depends on SYS_HAS_CPU_RM9000
f7062ddb 1074 select CPU_HAS_LLSC
5e83d430 1075 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1076 select CPU_SUPPORTS_32BIT_KERNEL
1077 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1078 select CPU_SUPPORTS_HIGHMEM
0004a9df 1079 select WEAK_ORDERING
1da177e4
LT
1080
1081config CPU_SB1
1082 bool "SB1"
7cf8053b 1083 depends on SYS_HAS_CPU_SB1
f7062ddb 1084 select CPU_HAS_LLSC
ed5ba2fb
YY
1085 select CPU_SUPPORTS_32BIT_KERNEL
1086 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1087 select CPU_SUPPORTS_HIGHMEM
0004a9df 1088 select WEAK_ORDERING
1da177e4
LT
1089
1090endchoice
1091
2a21c730
FZ
1092config SYS_HAS_CPU_LOONGSON2
1093 bool
1094
7cf8053b
RB
1095config SYS_HAS_CPU_MIPS32_R1
1096 bool
1097
1098config SYS_HAS_CPU_MIPS32_R2
1099 bool
1100
1101config SYS_HAS_CPU_MIPS64_R1
1102 bool
1103
1104config SYS_HAS_CPU_MIPS64_R2
1105 bool
1106
1107config SYS_HAS_CPU_R3000
1108 bool
1109
1110config SYS_HAS_CPU_TX39XX
1111 bool
1112
1113config SYS_HAS_CPU_VR41XX
1114 bool
1115
1116config SYS_HAS_CPU_R4300
1117 bool
1118
1119config SYS_HAS_CPU_R4X00
1120 bool
1121
1122config SYS_HAS_CPU_TX49XX
1123 bool
1124
1125config SYS_HAS_CPU_R5000
1126 bool
1127
1128config SYS_HAS_CPU_R5432
1129 bool
1130
1131config SYS_HAS_CPU_R6000
1132 bool
1133
1134config SYS_HAS_CPU_NEVADA
1135 bool
1136
1137config SYS_HAS_CPU_R8000
1138 bool
1139
1140config SYS_HAS_CPU_R10000
1141 bool
1142
1143config SYS_HAS_CPU_RM7000
1144 bool
1145
1146config SYS_HAS_CPU_RM9000
1147 bool
1148
1149config SYS_HAS_CPU_SB1
1150 bool
1151
17099b11
RB
1152#
1153# CPU may reorder R->R, R->W, W->R, W->W
1154# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1155#
0004a9df
RB
1156config WEAK_ORDERING
1157 bool
17099b11
RB
1158
1159#
1160# CPU may reorder reads and writes beyond LL/SC
1161# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1162#
1163config WEAK_REORDERING_BEYOND_LLSC
1164 bool
5e83d430
RB
1165endmenu
1166
1167#
c09b47d8 1168# These two indicate any level of the MIPS32 and MIPS64 architecture
5e83d430
RB
1169#
1170config CPU_MIPS32
1171 bool
1172 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1173
1174config CPU_MIPS64
1175 bool
1176 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1177
1178#
c09b47d8 1179# These two indicate the revision of the architecture, either Release 1 or Release 2
5e83d430
RB
1180#
1181config CPU_MIPSR1
1182 bool
1183 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1184
1185config CPU_MIPSR2
1186 bool
1187 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1188
1189config SYS_SUPPORTS_32BIT_KERNEL
1190 bool
1191config SYS_SUPPORTS_64BIT_KERNEL
1192 bool
1193config CPU_SUPPORTS_32BIT_KERNEL
1194 bool
1195config CPU_SUPPORTS_64BIT_KERNEL
1196 bool
1197
1198menu "Kernel type"
1199
1200choice
1201
1202 prompt "Kernel code model"
1203 help
1204 You should only select this option if you have a workload that
1205 actually benefits from 64-bit processing or if your machine has
1206 large memory. You will only be presented a single option in this
1207 menu if your system does not support both 32-bit and 64-bit kernels.
1208
1209config 32BIT
1210 bool "32-bit kernel"
1211 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1212 select TRAD_SIGNALS
1213 help
1214 Select this option if you want to build a 32-bit kernel.
1215config 64BIT
1216 bool "64-bit kernel"
1217 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1218 help
1219 Select this option if you want to build a 64-bit kernel.
1220
1221endchoice
1222
1da177e4
LT
1223choice
1224 prompt "Kernel page size"
1225 default PAGE_SIZE_4KB
1226
1227config PAGE_SIZE_4KB
1228 bool "4kB"
1229 help
1230 This option select the standard 4kB Linux page size. On some
1231 R3000-family processors this is the only available page size. Using
1232 4kB page size will minimize memory consumption and is therefore
1233 recommended for low memory systems.
1234
1235config PAGE_SIZE_8KB
1236 bool "8kB"
1237 depends on EXPERIMENTAL && CPU_R8000
1238 help
1239 Using 8kB page size will result in higher performance kernel at
1240 the price of higher memory consumption. This option is available
1241 only on the R8000 processor. Not that at the time of this writing
1242 this option is still high experimental; there are also issues with
1243 compatibility of user applications.
1244
1245config PAGE_SIZE_16KB
1246 bool "16kB"
714bfad6 1247 depends on !CPU_R3000 && !CPU_TX39XX
1da177e4
LT
1248 help
1249 Using 16kB page size will result in higher performance kernel at
1250 the price of higher memory consumption. This option is available on
714bfad6
RB
1251 all non-R3000 family processors. Note that you will need a suitable
1252 Linux distribution to support this.
1da177e4
LT
1253
1254config PAGE_SIZE_64KB
1255 bool "64kB"
1256 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1257 help
1258 Using 64kB page size will result in higher performance kernel at
1259 the price of higher memory consumption. This option is available on
1260 all non-R3000 family processor. Not that at the time of this
714bfad6 1261 writing this option is still high experimental.
1da177e4
LT
1262
1263endchoice
1264
1265config BOARD_SCACHE
1266 bool
1267
1268config IP22_CPU_SCACHE
1269 bool
1270 select BOARD_SCACHE
1271
9318c51a
CD
1272#
1273# Support for a MIPS32 / MIPS64 style S-caches
1274#
1275config MIPS_CPU_SCACHE
1276 bool
1277 select BOARD_SCACHE
1278
1da177e4
LT
1279config R5000_CPU_SCACHE
1280 bool
1281 select BOARD_SCACHE
1282
1283config RM7000_CPU_SCACHE
1284 bool
1285 select BOARD_SCACHE
1286
1287config SIBYTE_DMA_PAGEOPS
1288 bool "Use DMA to clear/copy pages"
1289 depends on CPU_SB1
1290 help
1291 Instead of using the CPU to zero and copy pages, use a Data Mover
1292 channel. These DMA channels are otherwise unused by the standard
1293 SiByte Linux port. Seems to give a small performance benefit.
1294
1295config CPU_HAS_PREFETCH
c8094b53 1296 bool
1da177e4 1297
340ee4b9
RB
1298choice
1299 prompt "MIPS MT options"
f41ae0b2
RB
1300
1301config MIPS_MT_DISABLED
1302 bool "Disable multithreading support."
1303 help
1304 Use this option if your workload can't take advantage of
1305 MIPS hardware multithreading support. On systems that don't have
1306 the option of an MT-enabled processor this option will be the only
1307 option in this menu.
340ee4b9 1308
59d6ab86
RB
1309config MIPS_MT_SMP
1310 bool "Use 1 TC on each available VPE for SMP"
f41ae0b2 1311 depends on SYS_SUPPORTS_MULTITHREADING
f7062ddb 1312 select CPU_MIPSR2_IRQ_VI
d725cf38 1313 select CPU_MIPSR2_IRQ_EI
f7062ddb 1314 select CPU_MIPSR2_SRS
f41ae0b2 1315 select MIPS_MT
f510aa3b 1316 select NR_CPUS_DEFAULT_2
41c594ab 1317 select SMP
73b76c78 1318 select SYS_SUPPORTS_SMP
f41ae0b2 1319 help
59d6ab86
RB
1320 This is a kernel model which is also known a VSMP or lately
1321 has been marketesed into SMVP.
41c594ab 1322
59d6ab86
RB
1323config MIPS_MT_SMTC
1324 bool "SMTC: Use all TCs on all VPEs for SMP"
1325 depends on CPU_MIPS32_R2
1326 #depends on CPU_MIPS64_R2 # once there is hardware ...
f41ae0b2
RB
1327 depends on SYS_SUPPORTS_MULTITHREADING
1328 select CPU_MIPSR2_IRQ_VI
d725cf38 1329 select CPU_MIPSR2_IRQ_EI
f41ae0b2
RB
1330 select CPU_MIPSR2_SRS
1331 select MIPS_MT
130e2fb7 1332 select NR_CPUS_DEFAULT_8
340ee4b9 1333 select SMP
73b76c78 1334 select SYS_SUPPORTS_SMP
f41ae0b2 1335 help
59d6ab86
RB
1336 This is a kernel model which is known a SMTC or lately has been
1337 marketesed into SMVP.
340ee4b9 1338
340ee4b9
RB
1339endchoice
1340
f41ae0b2
RB
1341config MIPS_MT
1342 bool
1343
1344config SYS_SUPPORTS_MULTITHREADING
1345 bool
1346
f088fc84
RB
1347config MIPS_MT_FPAFF
1348 bool "Dynamic FPU affinity for FP-intensive threads"
f088fc84 1349 default y
07cc0c9e
RB
1350 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1351
1352config MIPS_VPE_LOADER
1353 bool "VPE loader support."
1354 depends on SYS_SUPPORTS_MULTITHREADING
1355 select CPU_MIPSR2_IRQ_VI
1356 select CPU_MIPSR2_IRQ_EI
1357 select CPU_MIPSR2_SRS
1358 select MIPS_MT
1359 help
1360 Includes a loader for loading an elf relocatable object
1361 onto another VPE and running it.
f088fc84 1362
ac8be955
RB
1363config MIPS_MT_SMTC_INSTANT_REPLAY
1364 bool "Low-latency Dispatch of Deferred SMTC IPIs"
619af723 1365 depends on MIPS_MT_SMTC && !PREEMPT
ac8be955
RB
1366 default y
1367 help
1368 SMTC pseudo-interrupts between TCs are deferred and queued
1369 if the target TC is interrupt-inhibited (IXMT). In the first
1370 SMTC prototypes, these queued IPIs were serviced on return
1371 to user mode, or on entry into the kernel idle loop. The
1372 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1373 processing, which adds runtime overhead (hence the option to turn
1374 it off), but ensures that IPIs are handled promptly even under
1375 heavy I/O interrupt load.
1376
0db34215
KK
1377config MIPS_MT_SMTC_IM_BACKSTOP
1378 bool "Use per-TC register bits as backstop for inhibited IM bits"
1379 depends on MIPS_MT_SMTC
1380 default y
1381 help
1382 To support multiple TC microthreads acting as "CPUs" within
1383 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1384 during interrupt handling. To support legacy drivers and interrupt
1385 controller management code, SMTC has a "backstop" to track and
1386 if necessary restore the interrupt mask. This has some performance
1387 impact on interrupt service overhead. Disable it only if you know
1388 what you are doing.
1389
e01402b1
RB
1390config MIPS_VPE_LOADER_TOM
1391 bool "Load VPE program into memory hidden from linux"
1392 depends on MIPS_VPE_LOADER
1393 default y
1394 help
1395 The loader can use memory that is present but has been hidden from
1396 Linux using the kernel command line option "mem=xxMB". It's up to
1397 you to ensure the amount you put in the option and the space your
1398 program requires is less or equal to the amount physically present.
1399
1400# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1401config MIPS_VPE_APSP_API
5e83d430
RB
1402 bool "Enable support for AP/SP API (RTLX)"
1403 depends on MIPS_VPE_LOADER
1404 help
e01402b1 1405
2600990e
RB
1406config MIPS_APSP_KSPD
1407 bool "Enable KSPD"
1408 depends on MIPS_VPE_APSP_API
1409 default y
1410 help
1411 KSPD is a kernel daemon that accepts syscall requests from the SP
1412 side, actions them and returns the results. It also handles the
1413 "exit" syscall notifying other kernel modules the SP program is
1414 exiting. You probably want to say yes here.
1415
1da177e4
LT
1416config SB1_PASS_1_WORKAROUNDS
1417 bool
1418 depends on CPU_SB1_PASS_1
1419 default y
1420
1421config SB1_PASS_2_WORKAROUNDS
1422 bool
1423 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1424 default y
1425
1426config SB1_PASS_2_1_WORKAROUNDS
1427 bool
1428 depends on CPU_SB1 && CPU_SB1_PASS_2
1429 default y
1430
1431config 64BIT_PHYS_ADDR
d806cb2b 1432 bool
1da177e4 1433
1da177e4 1434config CPU_HAS_LLSC
f7062ddb 1435 bool
1da177e4 1436
9693a853
FBH
1437config CPU_HAS_SMARTMIPS
1438 depends on SYS_SUPPORTS_SMARTMIPS
1439 bool "Support for the SmartMIPS ASE"
1440 help
1441 SmartMIPS is a extension of the MIPS32 architecture aimed at
1442 increased security at both hardware and software level for
1443 smartcards. Enabling this option will allow proper use of the
1444 SmartMIPS instructions by Linux applications. However a kernel with
1445 this option will not work on a MIPS core without SmartMIPS core. If
1446 you don't know you probably don't have SmartMIPS and should say N
1447 here.
1448
1da177e4 1449config CPU_HAS_WB
f7062ddb 1450 bool
e01402b1 1451
2a21c730
FZ
1452config 64BIT_CONTEXT
1453 bool "Save 64bit integer registers"
1454 depends on 32BIT && CPU_LOONGSON2
1455 help
1456 Loongson2 CPU is 64bit , when used in 32BIT mode, its integer
1457 registers can still be accessed as 64bit, mainly for multimedia
1458 instructions. We must have all 64bit save/restored to make sure
1459 those instructions to get correct result.
1460
f41ae0b2
RB
1461#
1462# Vectored interrupt mode is an R2 feature
1463#
e01402b1 1464config CPU_MIPSR2_IRQ_VI
f41ae0b2 1465 bool
e01402b1 1466
f41ae0b2
RB
1467#
1468# Extended interrupt mode is an R2 feature
1469#
e01402b1 1470config CPU_MIPSR2_IRQ_EI
f41ae0b2 1471 bool
e01402b1 1472
f41ae0b2
RB
1473#
1474# Shadow registers are an R2 feature
1475#
e01402b1 1476config CPU_MIPSR2_SRS
f41ae0b2 1477 bool
e01402b1 1478
1da177e4
LT
1479config CPU_HAS_SYNC
1480 bool
1481 depends on !CPU_R3000
1482 default y
1483
797798c1
RB
1484#
1485# Use the generic interrupt handling code in kernel/irq/:
1486#
1487config GENERIC_HARDIRQS
1488 bool
1489 default y
1490
1491config GENERIC_IRQ_PROBE
1492 bool
1493 default y
1494
0d7012a9 1495config IRQ_PER_CPU
0d7012a9 1496 bool
0d7012a9 1497
1da177e4
LT
1498#
1499# - Highmem only makes sense for the 32-bit kernel.
1500# - The current highmem code will only work properly on physically indexed
1501# caches such as R3000, SB1, R7000 or those that look like they're virtually
1502# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1503# moment we protect the user and offer the highmem option only on machines
1504# where it's known to be safe. This will not offer highmem on a few systems
1505# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1506# indexed CPUs but we're playing safe.
797798c1
RB
1507# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1508# know they might have memory configurations that could make use of highmem
1509# support.
1da177e4
LT
1510#
1511config HIGHMEM
1512 bool "High Memory Support"
797798c1
RB
1513 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1514
1515config CPU_SUPPORTS_HIGHMEM
1516 bool
1517
1518config SYS_SUPPORTS_HIGHMEM
1519 bool
1da177e4 1520
9693a853
FBH
1521config SYS_SUPPORTS_SMARTMIPS
1522 bool
1523
b4819b59
YY
1524config ARCH_FLATMEM_ENABLE
1525 def_bool y
1526 depends on !NUMA
1527
d8cb4e11
RB
1528config ARCH_DISCONTIGMEM_ENABLE
1529 bool
1530 default y if SGI_IP27
1531 help
3dde6ad8 1532 Say Y to support efficient handling of discontiguous physical memory,
d8cb4e11
RB
1533 for architectures which are either NUMA (Non-Uniform Memory Access)
1534 or have huge holes in the physical address space for other reasons.
1535 See <file:Documentation/vm/numa> for more.
1536
31473747
AN
1537config ARCH_SPARSEMEM_ENABLE
1538 bool
7de58fab 1539 select SPARSEMEM_STATIC
31473747 1540
d8cb4e11
RB
1541config NUMA
1542 bool "NUMA Support"
1543 depends on SYS_SUPPORTS_NUMA
1544 help
1545 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
1546 Access). This option improves performance on systems with more
1547 than two nodes; on two node systems it is generally better to
1548 leave it disabled; on single node systems disable this option
1549 disabled.
1550
1551config SYS_SUPPORTS_NUMA
1552 bool
1553
c80d79d7
YG
1554config NODES_SHIFT
1555 int
1556 default "6"
1557 depends on NEED_MULTIPLE_NODES
1558
b4819b59
YY
1559source "mm/Kconfig"
1560
1da177e4
LT
1561config SMP
1562 bool "Multi-Processing support"
e73ea273 1563 depends on SYS_SUPPORTS_SMP
b4b30a5a 1564 select IRQ_PER_CPU
e73ea273 1565 help
1da177e4
LT
1566 This enables support for systems with more than one CPU. If you have
1567 a system with only one CPU, like most personal computers, say N. If
1568 you have a system with more than one CPU, say Y.
1569
1570 If you say N here, the kernel will run on single and multiprocessor
1571 machines, but will use only one CPU of a multiprocessor machine. If
1572 you say Y here, the kernel will run on many, but not all,
1573 singleprocessor machines. On a singleprocessor machine, the kernel
1574 will run faster if you say N here.
1575
1576 People using multiprocessor machines who say Y here should also say
1577 Y to "Enhanced Real Time Clock Support", below.
1578
1579 See also the <file:Documentation/smp.txt> and the SMP-HOWTO
1580 available at <http://www.tldp.org/docs.html#howto>.
1581
1582 If you don't know what to do here, say N.
1583
e73ea273
RB
1584config SYS_SUPPORTS_SMP
1585 bool
1586
72ede9b1
AN
1587config NR_CPUS_DEFAULT_1
1588 bool
1589
130e2fb7
RB
1590config NR_CPUS_DEFAULT_2
1591 bool
1592
1593config NR_CPUS_DEFAULT_4
1594 bool
1595
1596config NR_CPUS_DEFAULT_8
1597 bool
1598
1599config NR_CPUS_DEFAULT_16
1600 bool
1601
1602config NR_CPUS_DEFAULT_32
1603 bool
1604
1605config NR_CPUS_DEFAULT_64
1606 bool
1607
1da177e4
LT
1608config NR_CPUS
1609 int "Maximum number of CPUs (2-64)"
72ede9b1 1610 range 1 64 if NR_CPUS_DEFAULT_1
1da177e4 1611 depends on SMP
72ede9b1 1612 default "1" if NR_CPUS_DEFAULT_1
130e2fb7
RB
1613 default "2" if NR_CPUS_DEFAULT_2
1614 default "4" if NR_CPUS_DEFAULT_4
1615 default "8" if NR_CPUS_DEFAULT_8
1616 default "16" if NR_CPUS_DEFAULT_16
1617 default "32" if NR_CPUS_DEFAULT_32
1618 default "64" if NR_CPUS_DEFAULT_64
1da177e4
LT
1619 help
1620 This allows you to specify the maximum number of CPUs which this
1621 kernel will support. The maximum supported value is 32 for 32-bit
1622 kernel and 64 for 64-bit kernels; the minimum value which makes
72ede9b1
AN
1623 sense is 1 for Qemu (useful only for kernel debugging purposes)
1624 and 2 for all others.
1da177e4
LT
1625
1626 This is purely to save memory - each supported CPU adds
72ede9b1
AN
1627 approximately eight kilobytes to the kernel image. For best
1628 performance should round up your number of processors to the next
1629 power of two.
1da177e4 1630
1723b4a3
AN
1631#
1632# Timer Interrupt Frequency Configuration
1633#
1634
1635choice
1636 prompt "Timer frequency"
1637 default HZ_250
1638 help
1639 Allows the configuration of the timer frequency.
1640
1641 config HZ_48
1642 bool "48 HZ" if SYS_SUPPORTS_48HZ
1643
1644 config HZ_100
1645 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
1646
1647 config HZ_128
1648 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
1649
1650 config HZ_250
1651 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
1652
1653 config HZ_256
1654 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
1655
1656 config HZ_1000
1657 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
1658
1659 config HZ_1024
1660 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
1661
1662endchoice
1663
1664config SYS_SUPPORTS_48HZ
1665 bool
1666
1667config SYS_SUPPORTS_100HZ
1668 bool
1669
1670config SYS_SUPPORTS_128HZ
1671 bool
1672
1673config SYS_SUPPORTS_250HZ
1674 bool
1675
1676config SYS_SUPPORTS_256HZ
1677 bool
1678
1679config SYS_SUPPORTS_1000HZ
1680 bool
1681
1682config SYS_SUPPORTS_1024HZ
1683 bool
1684
1685config SYS_SUPPORTS_ARBIT_HZ
1686 bool
1687 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
1688 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
1689 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
1690 !SYS_SUPPORTS_1024HZ
1691
1692config HZ
1693 int
1694 default 48 if HZ_48
1695 default 100 if HZ_100
1696 default 128 if HZ_128
1697 default 250 if HZ_250
1698 default 256 if HZ_256
1699 default 1000 if HZ_1000
1700 default 1024 if HZ_1024
1701
e80de850 1702source "kernel/Kconfig.preempt"
1da177e4 1703
1da177e4
LT
1704config MIPS_INSANE_LARGE
1705 bool "Support for large 64-bit configurations"
875d43e7 1706 depends on CPU_R10000 && 64BIT
1da177e4
LT
1707 help
1708 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
1709 previous 64-bit processors which only supported 40 bit / 1TB. If you
1710 need processes of more than 1TB virtual address space, say Y here.
1711 This will result in additional memory usage, so it is not
1712 recommended for normal users.
1713
ea6e942b
AN
1714config KEXEC
1715 bool "Kexec system call (EXPERIMENTAL)"
1716 depends on EXPERIMENTAL
1717 help
1718 kexec is a system call that implements the ability to shutdown your
1719 current kernel, and to start another kernel. It is like a reboot
3dde6ad8 1720 but it is independent of the system firmware. And like a reboot
ea6e942b
AN
1721 you can start any kernel with it, not just Linux.
1722
1723 The name comes from the similiarity to the exec system call.
1724
1725 It is an ongoing process to be certain the hardware in a machine
1726 is properly shutdown, so do not be surprised if this code does not
1727 initially work for you. It may help to enable device hotplugging
1728 support. As of this writing the exact hardware interface is
1729 strongly in flux, so no good recommendation can be made.
1730
1731config SECCOMP
1732 bool "Enable seccomp to safely compute untrusted bytecode"
293c5bd1 1733 depends on PROC_FS
ea6e942b
AN
1734 default y
1735 help
1736 This kernel feature is useful for number crunching applications
1737 that may need to compute untrusted bytecode during their
1738 execution. By using pipes or other transports made available to
1739 the process as file descriptors supporting the read/write
1740 syscalls, it's possible to isolate those applications in
1741 their own address space using seccomp. Once seccomp is
1742 enabled via /proc/<pid>/seccomp, it cannot be disabled
1743 and the task is only allowed to execute a few safe syscalls
1744 defined by each seccomp mode.
1745
1746 If unsure, say Y. Only embedded should say N here.
1747
5e83d430
RB
1748endmenu
1749
1da177e4
LT
1750config RWSEM_GENERIC_SPINLOCK
1751 bool
1752 default y
1753
1df0f0ff
AN
1754config LOCKDEP_SUPPORT
1755 bool
1756 default y
1757
1758config STACKTRACE_SUPPORT
1759 bool
1760 default y
1761
b6c3539b
RB
1762source "init/Kconfig"
1763
1da177e4
LT
1764menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
1765
5e83d430
RB
1766config HW_HAS_EISA
1767 bool
1da177e4
LT
1768config HW_HAS_PCI
1769 bool
1770
1771config PCI
1772 bool "Support for PCI controller"
1773 depends on HW_HAS_PCI
1774 help
1775 Find out whether you have a PCI motherboard. PCI is the name of a
1776 bus system, i.e. the way the CPU talks to the other stuff inside
1777 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1778 say Y, otherwise N.
1779
1780 The PCI-HOWTO, available from
1781 <http://www.tldp.org/docs.html#howto>, contains valuable
1782 information about which PCI hardware does work under Linux and which
1783 doesn't.
1784
1785config PCI_DOMAINS
1786 bool
1787 depends on PCI
1788
1789source "drivers/pci/Kconfig"
1790
1791#
1792# ISA support is now enabled via select. Too many systems still have the one
1793# or other ISA chip on the board that users don't know about so don't expect
1794# users to choose the right thing ...
1795#
1796config ISA
1797 bool
1798
1799config EISA
1800 bool "EISA support"
5e83d430 1801 depends on HW_HAS_EISA
1da177e4 1802 select ISA
aa414dff 1803 select GENERIC_ISA_DMA
1da177e4
LT
1804 ---help---
1805 The Extended Industry Standard Architecture (EISA) bus was
1806 developed as an open alternative to the IBM MicroChannel bus.
1807
1808 The EISA bus provided some of the features of the IBM MicroChannel
1809 bus while maintaining backward compatibility with cards made for
1810 the older ISA bus. The EISA bus saw limited use between 1988 and
1811 1995 when it was made obsolete by the PCI bus.
1812
1813 Say Y here if you are building a kernel for an EISA-based machine.
1814
1815 Otherwise, say N.
1816
1817source "drivers/eisa/Kconfig"
1818
1819config TC
1820 bool "TURBOchannel support"
1821 depends on MACH_DECSTATION
1822 help
1823 TurboChannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
1824 processors. Documentation on writing device drivers for TurboChannel
1825 is available at:
1826 <http://www.cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3HD-TET1_html/TITLE.html>.
1827
1828#config ACCESSBUS
1829# bool "Access.Bus support"
1830# depends on TC
1831
1832config MMU
1833 bool
1834 default y
1835
de61b542 1836config PCSPEAKER
e5c6c8e4
MN
1837 bool
1838
1da177e4
LT
1839source "drivers/pcmcia/Kconfig"
1840
1841source "drivers/pci/hotplug/Kconfig"
1842
1843endmenu
1844
1845menu "Executable file formats"
1846
1847source "fs/Kconfig.binfmt"
1848
1849config TRAD_SIGNALS
1850 bool
1da177e4
LT
1851
1852config BUILD_ELF64
1853 bool "Use 64-bit ELF format for building"
875d43e7 1854 depends on 64BIT
1da177e4
LT
1855 help
1856 A 64-bit kernel is usually built using the 64-bit ELF binary object
1857 format as it's one that allows arbitrary 64-bit constructs. For
1858 kernels that are loaded within the KSEG compatibility segments the
1859 32-bit ELF format can optionally be used resulting in a somewhat
1860 smaller binary, but this option is not explicitly supported by the
1861 toolchain and since binutils 2.14 it does not even work at all.
1862
1863 Say Y to use the 64-bit format or N to use the 32-bit one.
1864
1865 If unsure say Y.
1866
1867config BINFMT_IRIX
1868 bool "Include IRIX binary compatibility"
5e83d430 1869 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1da177e4
LT
1870
1871config MIPS32_COMPAT
1872 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
875d43e7 1873 depends on 64BIT
1da177e4
LT
1874 help
1875 Select this option if you want Linux/MIPS 32-bit binary
1876 compatibility. Since all software available for Linux/MIPS is
1877 currently 32-bit you should say Y here.
1878
1879config COMPAT
1880 bool
1881 depends on MIPS32_COMPAT
1882 default y
1883
05e43966
AN
1884config SYSVIPC_COMPAT
1885 bool
1886 depends on COMPAT && SYSVIPC
1887 default y
1888
1da177e4
LT
1889config MIPS32_O32
1890 bool "Kernel support for o32 binaries"
1891 depends on MIPS32_COMPAT
1892 help
1893 Select this option if you want to run o32 binaries. These are pure
1894 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1895 existing binaries are in this format.
1896
1897 If unsure, say Y.
1898
1899config MIPS32_N32
1900 bool "Kernel support for n32 binaries"
1901 depends on MIPS32_COMPAT
1902 help
1903 Select this option if you want to run n32 binaries. These are
1904 64-bit binaries using 32-bit quantities for addressing and certain
1905 data that would normally be 64-bit. They are used in special
1906 cases.
1907
1908 If unsure, say N.
1909
1910config BINFMT_ELF32
1911 bool
1912 default y if MIPS32_O32 || MIPS32_N32
1913
2116245e
RB
1914endmenu
1915
1916menu "Power management options"
1917
1918source "kernel/power/Kconfig"
952fa954 1919
1da177e4
LT
1920endmenu
1921
d5950b43
SR
1922source "net/Kconfig"
1923
1da177e4
LT
1924source "drivers/Kconfig"
1925
1926source "fs/Kconfig"
1927
5e83d430
RB
1928source "arch/mips/oprofile/Kconfig"
1929
1da177e4
LT
1930source "arch/mips/Kconfig.debug"
1931
1932source "security/Kconfig"
1933
1934source "crypto/Kconfig"
1935
1936source "lib/Kconfig"