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