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