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