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