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