[MIPS] Fix RBTX49x7 board name
[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
42d226c7
ST
18config LEMOTE_FULONG
19 bool "Lemote Fulong mini-PC"
20 select ARCH_SPARSEMEM_ENABLE
21 select SYS_HAS_CPU_LOONGSON2
22 select DMA_NONCOHERENT
23 select BOOT_ELF32
24 select BOARD_SCACHE
25 select HAVE_STD_PC_SERIAL_PORT
26 select HW_HAS_PCI
27 select I8259
28 select ISA
29 select IRQ_CPU
30 select SYS_SUPPORTS_32BIT_KERNEL
31 select SYS_SUPPORTS_64BIT_KERNEL
32 select SYS_SUPPORTS_LITTLE_ENDIAN
33 select SYS_SUPPORTS_HIGHMEM
34 select SYS_HAS_EARLY_PRINTK
35 select GENERIC_HARDIRQS_NO__DO_IRQ
36 select CPU_HAS_WB
37 help
38 Lemote Fulong mini-PC board based on the Chinese Loongson-2E CPU and
39 an FPGA northbridge
40
c3543e25
YY
41config MACH_ALCHEMY
42 bool "Alchemy processor based machines"
1da177e4 43
35189fad 44config BASLER_EXCITE
be91589e 45 bool "Basler eXcite smart camera"
35189fad
RB
46 select DMA_COHERENT
47 select HW_HAS_PCI
48 select IRQ_CPU
49 select IRQ_CPU_RM7K
50 select IRQ_CPU_RM9K
663c3d90 51 select MIPS_RM9122
35189fad
RB
52 select SYS_HAS_CPU_RM9000
53 select SYS_SUPPORTS_32BIT_KERNEL
54 select SYS_SUPPORTS_64BIT_KERNEL
55 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 56 select SYS_SUPPORTS_KGDB
35189fad
RB
57 help
58 The eXcite is a smart camera platform manufactured by
be91589e 59 Basler Vision Technologies AG.
35189fad
RB
60
61config BASLER_EXCITE_PROTOTYPE
62 bool "Support for pre-release units"
63 depends on BASLER_EXCITE
64 default n
65 help
66 Pre-series (prototype) units are different from later ones in
67 some ways. Select this option if you have one of these. Please
68 note that a kernel built with this option selected will not be
69 able to run on normal units.
70
1da177e4 71config MIPS_COBALT
3fa986fa 72 bool "Cobalt Server"
1da177e4
LT
73 select DMA_NONCOHERENT
74 select HW_HAS_PCI
75 select I8259
76 select IRQ_CPU
252161ec 77 select PCI_GT64XXX_PCI0
7cf8053b 78 select SYS_HAS_CPU_NEVADA
0a22e0d4 79 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
80 select SYS_SUPPORTS_32BIT_KERNEL
81 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5e83d430 82 select SYS_SUPPORTS_LITTLE_ENDIAN
9fd32cfb 83 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4
LT
84
85config MACH_DECSTATION
3fa986fa 86 bool "DECstations"
1da177e4
LT
87 select BOOT_ELF32
88 select DMA_NONCOHERENT
d388d685 89 select NO_IOPORT
1da177e4 90 select IRQ_CPU
7cf8053b
RB
91 select SYS_HAS_CPU_R3000
92 select SYS_HAS_CPU_R4X00
ed5ba2fb
YY
93 select SYS_SUPPORTS_32BIT_KERNEL
94 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5e83d430 95 select SYS_SUPPORTS_LITTLE_ENDIAN
1723b4a3
AN
96 select SYS_SUPPORTS_128HZ
97 select SYS_SUPPORTS_256HZ
98 select SYS_SUPPORTS_1024HZ
5e83d430 99 help
1da177e4
LT
100 This enables support for DEC's MIPS based workstations. For details
101 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
102 DECstation porting pages on <http://decstation.unix-ag.org/>.
103
104 If you have one of the following DECstation Models you definitely
105 want to choose R4xx0 for the CPU Type:
106
107 DECstation 5000/50
108 DECstation 5000/150
109 DECstation 5000/260
110 DECsystem 5900/260
111
112 otherwise choose R3000.
113
5e83d430 114config MACH_JAZZ
3fa986fa 115 bool "Jazz family of machines"
5e83d430
RB
116 select ARC
117 select ARC32
118 select ARCH_MAY_HAVE_PC_FDC
119 select GENERIC_ISA_DMA
120 select I8259
121 select ISA
de61b542 122 select PCSPEAKER
7cf8053b 123 select SYS_HAS_CPU_R4X00
5e83d430
RB
124 select SYS_SUPPORTS_32BIT_KERNEL
125 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1723b4a3 126 select SYS_SUPPORTS_100HZ
9fd32cfb 127 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4 128 help
5e83d430
RB
129 This a family of machines based on the MIPS R4030 chipset which was
130 used by several vendors to build RISC/os and Windows NT workstations.
131 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
132 Olivetti M700-10 workstations.
133
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
a240a469 213config WR_PPMC
9247857f 214 bool "Wind River PPMC board"
a240a469
MZ
215 select IRQ_CPU
216 select BOOT_ELF32
217 select DMA_NONCOHERENT
218 select HW_HAS_PCI
252161ec 219 select PCI_GT64XXX_PCI0
a240a469
MZ
220 select SWAP_IO_SPACE
221 select SYS_HAS_CPU_MIPS32_R1
222 select SYS_HAS_CPU_MIPS32_R2
223 select SYS_HAS_CPU_MIPS64_R1
224 select SYS_HAS_CPU_NEVADA
225 select SYS_HAS_CPU_RM7000
226 select SYS_SUPPORTS_32BIT_KERNEL
227 select SYS_SUPPORTS_64BIT_KERNEL
228 select SYS_SUPPORTS_BIG_ENDIAN
229 select SYS_SUPPORTS_LITTLE_ENDIAN
230 help
231 This enables support for the Wind River MIPS32 4KC PPMC evaluation
232 board, which is based on GT64120 bridge chip.
233
5e83d430 234config MIPS_SIM
3fa986fa 235 bool 'MIPS simulator (MIPSsim)'
1da177e4 236 select DMA_NONCOHERENT
36a88530 237 select SYS_HAS_EARLY_PRINTK
1da177e4 238 select IRQ_CPU
9267a30d 239 select BOOT_RAW
7cf8053b
RB
240 select SYS_HAS_CPU_MIPS32_R1
241 select SYS_HAS_CPU_MIPS32_R2
36a88530 242 select SYS_HAS_EARLY_PRINTK
ed5ba2fb 243 select SYS_SUPPORTS_32BIT_KERNEL
5e83d430 244 select SYS_SUPPORTS_BIG_ENDIAN
f6e2373a 245 select SYS_SUPPORTS_MULTITHREADING
5e83d430 246 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 247 help
5e83d430
RB
248 This option enables support for MIPS Technologies MIPSsim software
249 emulator.
1da177e4 250
5e83d430 251config MOMENCO_OCELOT
3fa986fa 252 bool "Momentum Ocelot board"
1da177e4
LT
253 select DMA_NONCOHERENT
254 select HW_HAS_PCI
255 select IRQ_CPU
5e83d430 256 select IRQ_CPU_RM7K
252161ec 257 select PCI_GT64XXX_PCI0
1da177e4
LT
258 select RM7000_CPU_SCACHE
259 select SWAP_IO_SPACE
7cf8053b 260 select SYS_HAS_CPU_RM7000
ed5ba2fb
YY
261 select SYS_SUPPORTS_32BIT_KERNEL
262 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 263 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 264 select SYS_SUPPORTS_KGDB
1da177e4
LT
265 help
266 The Ocelot is a MIPS-based Single Board Computer (SBC) made by
267 Momentum Computer <http://www.momenco.com/>.
268
bdf21b18 269config PNX8550_JBS
3fa986fa 270 bool "Philips PNX8550 based JBS board"
bdf21b18
PP
271 select PNX8550
272 select SYS_SUPPORTS_LITTLE_ENDIAN
f0647a52
VW
273
274config PNX8550_STB810
e460b73c 275 bool "Philips PNX8550 based STB810 board"
f0647a52
VW
276 select PNX8550
277 select SYS_SUPPORTS_LITTLE_ENDIAN
bdf21b18 278
1da177e4 279config DDB5477
3fa986fa 280 bool "NEC DDB Vrc-5477"
5e83d430 281 select DDB5XXX_COMMON
1da177e4
LT
282 select DMA_NONCOHERENT
283 select HW_HAS_PCI
284 select I8259
285 select IRQ_CPU
7cf8053b 286 select SYS_HAS_CPU_R5432
ed5ba2fb
YY
287 select SYS_SUPPORTS_32BIT_KERNEL
288 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
cc801077
RB
289 select SYS_SUPPORTS_KGDB
290 select SYS_SUPPORTS_KGDB
5e83d430 291 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4
LT
292 help
293 This enables support for the R5432-based NEC DDB Vrc-5477,
294 or Rockhopper/SolutionGear boards with R5432/R5500 CPUs.
295
296 Features : kernel debugging, serial terminal, NFS root fs, on-board
297 ether port USB, AC97, PCI, etc.
298
5e83d430 299config MACH_VR41XX
74142d65 300 bool "NEC VR4100 series based machines"
7cf8053b 301 select SYS_HAS_CPU_VR41XX
9fd32cfb 302 select GENERIC_HARDIRQS_NO__DO_IRQ
5e83d430 303
9267a30d
MSJ
304config PMC_MSP
305 bool "PMC-Sierra MSP chipsets"
306 depends on EXPERIMENTAL
307 select DMA_NONCOHERENT
308 select SWAP_IO_SPACE
309 select NO_EXCEPT_FILL
310 select BOOT_RAW
311 select SYS_HAS_CPU_MIPS32_R1
312 select SYS_HAS_CPU_MIPS32_R2
313 select SYS_SUPPORTS_32BIT_KERNEL
314 select SYS_SUPPORTS_BIG_ENDIAN
315 select SYS_SUPPORTS_KGDB
316 select IRQ_CPU
317 select SERIAL_8250
318 select SERIAL_8250_CONSOLE
319 help
320 This adds support for the PMC-Sierra family of Multi-Service
321 Processor System-On-A-Chips. These parts include a number
322 of integrated peripherals, interfaces and DSPs in addition to
323 a variety of MIPS cores.
324
5e83d430 325config PMC_YOSEMITE
3fa986fa 326 bool "PMC-Sierra Yosemite eval board"
5e83d430
RB
327 select DMA_COHERENT
328 select HW_HAS_PCI
329 select IRQ_CPU
330 select IRQ_CPU_RM7K
331 select IRQ_CPU_RM9K
332 select SWAP_IO_SPACE
7cf8053b 333 select SYS_HAS_CPU_RM9000
36a88530 334 select SYS_HAS_EARLY_PRINTK
5e83d430
RB
335 select SYS_SUPPORTS_32BIT_KERNEL
336 select SYS_SUPPORTS_64BIT_KERNEL
337 select SYS_SUPPORTS_BIG_ENDIAN
338 select SYS_SUPPORTS_HIGHMEM
cc801077 339 select SYS_SUPPORTS_KGDB
e73ea273 340 select SYS_SUPPORTS_SMP
5e83d430
RB
341 help
342 Yosemite is an evaluation board for the RM9000x2 processor
343 manufactured by PMC-Sierra.
1da177e4 344
07119621 345config QEMU
3fa986fa 346 bool "Qemu"
07119621
RB
347 select DMA_COHERENT
348 select GENERIC_ISA_DMA
349 select HAVE_STD_PC_SERIAL_PORT
350 select I8259
351 select ISA
de61b542 352 select PCSPEAKER
07119621 353 select SWAP_IO_SPACE
7cf8053b 354 select SYS_HAS_CPU_MIPS32_R1
07119621
RB
355 select SYS_SUPPORTS_32BIT_KERNEL
356 select SYS_SUPPORTS_BIG_ENDIAN
c8cc9618 357 select SYS_SUPPORTS_LITTLE_ENDIAN
b1c6cd42 358 select ARCH_SPARSEMEM_ENABLE
9fd32cfb 359 select GENERIC_HARDIRQS_NO__DO_IRQ
72ede9b1
AN
360 select NR_CPUS_DEFAULT_1
361 select SYS_SUPPORTS_SMP
07119621 362 help
5e83d430
RB
363 Qemu is a software emulator which among other architectures also
364 can simulate a MIPS32 4Kc system. This patch adds support for the
365 system architecture that currently is being simulated by Qemu. It
366 will eventually be removed again when Qemu has the capability to
367 simulate actual MIPS hardware platforms. More information on Qemu
368 can be found at http://www.linux-mips.org/wiki/Qemu.
07119621 369
355c471f 370config MARKEINS
e460b73c 371 bool "NEC EMMA2RH Mark-eins"
355c471f 372 select DMA_NONCOHERENT
373 select HW_HAS_PCI
374 select IRQ_CPU
375 select SWAP_IO_SPACE
376 select SYS_SUPPORTS_32BIT_KERNEL
377 select SYS_SUPPORTS_BIG_ENDIAN
378 select SYS_SUPPORTS_LITTLE_ENDIAN
379 select SYS_HAS_CPU_R5000
380 help
381 This enables support for the R5432-based NEC Mark-eins
382 boards with R5500 CPU.
383
1da177e4 384config SGI_IP22
3fa986fa 385 bool "SGI IP22 (Indy/Indigo2)"
1da177e4
LT
386 select ARC
387 select ARC32
388 select BOOT_ELF32
389 select DMA_NONCOHERENT
5e83d430 390 select HW_HAS_EISA
1da177e4
LT
391 select IP22_CPU_SCACHE
392 select IRQ_CPU
aa414dff 393 select GENERIC_ISA_DMA_SUPPORT_BROKEN
1da177e4 394 select SWAP_IO_SPACE
7cf8053b
RB
395 select SYS_HAS_CPU_R4X00
396 select SYS_HAS_CPU_R5000
36a88530 397 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
398 select SYS_SUPPORTS_32BIT_KERNEL
399 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 400 select SYS_SUPPORTS_BIG_ENDIAN
1da177e4
LT
401 help
402 This are the SGI Indy, Challenge S and Indigo2, as well as certain
403 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
404 that runs on these, say Y here.
405
406config SGI_IP27
3fa986fa 407 bool "SGI IP27 (Origin200/2000)"
1da177e4
LT
408 select ARC
409 select ARC64
5e83d430 410 select BOOT_ELF64
1da177e4 411 select DMA_IP27
36a88530 412 select SYS_HAS_EARLY_PRINTK
1da177e4 413 select HW_HAS_PCI
130e2fb7 414 select NR_CPUS_DEFAULT_64
1da177e4 415 select PCI_DOMAINS
7cf8053b 416 select SYS_HAS_CPU_R10000
ed5ba2fb 417 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 418 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 419 select SYS_SUPPORTS_KGDB
d8cb4e11 420 select SYS_SUPPORTS_NUMA
1a5c5de1 421 select SYS_SUPPORTS_SMP
e77c232c 422 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4
LT
423 help
424 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
425 workstations. To compile a Linux kernel that runs on these, say Y
426 here.
427
1da177e4 428config SGI_IP32
cfd2afc0 429 bool "SGI IP32 (O2)"
1da177e4
LT
430 select ARC
431 select ARC32
432 select BOOT_ELF32
1da177e4
LT
433 select DMA_NONCOHERENT
434 select HW_HAS_PCI
435 select R5000_CPU_SCACHE
436 select RM7000_CPU_SCACHE
7cf8053b
RB
437 select SYS_HAS_CPU_R5000
438 select SYS_HAS_CPU_R10000 if BROKEN
439 select SYS_HAS_CPU_RM7000
dd2f18fe 440 select SYS_HAS_CPU_NEVADA
ed5ba2fb 441 select SYS_SUPPORTS_64BIT_KERNEL
23fbee9d 442 select SYS_SUPPORTS_BIG_ENDIAN
23fbee9d 443 help
5e83d430 444 If you want this kernel to run on SGI O2 workstation, say Y here.
1da177e4 445
9a6dcea1 446config SIBYTE_BIGSUR
3fa986fa 447 bool "Sibyte BCM91480B-BigSur"
9a6dcea1
AI
448 select BOOT_ELF32
449 select DMA_COHERENT
130e2fb7 450 select NR_CPUS_DEFAULT_4
7cf8053b 451 select PCI_DOMAINS
9a6dcea1
AI
452 select SIBYTE_BCM1x80
453 select SWAP_IO_SPACE
7cf8053b 454 select SYS_HAS_CPU_SB1
9a6dcea1
AI
455 select SYS_SUPPORTS_BIG_ENDIAN
456 select SYS_SUPPORTS_LITTLE_ENDIAN
457
5e83d430 458config SIBYTE_SWARM
3fa986fa 459 bool "Sibyte BCM91250A-SWARM"
5e83d430 460 select BOOT_ELF32
1da177e4 461 select DMA_COHERENT
130e2fb7 462 select NR_CPUS_DEFAULT_2
5e83d430
RB
463 select SIBYTE_SB1250
464 select SWAP_IO_SPACE
7cf8053b 465 select SYS_HAS_CPU_SB1
81731f79 466 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430 467 select SYS_SUPPORTS_HIGHMEM
cc801077 468 select SYS_SUPPORTS_KGDB
5e83d430 469 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 470
5e83d430 471config SIBYTE_SENTOSA
3fa986fa 472 bool "Sibyte BCM91250E-Sentosa"
5e83d430
RB
473 depends on EXPERIMENTAL
474 select BOOT_ELF32
475 select DMA_COHERENT
130e2fb7 476 select NR_CPUS_DEFAULT_2
5e83d430
RB
477 select SIBYTE_SB1250
478 select SWAP_IO_SPACE
7cf8053b 479 select SYS_HAS_CPU_SB1
5e83d430
RB
480 select SYS_SUPPORTS_BIG_ENDIAN
481 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 482
5e83d430 483config SIBYTE_RHONE
3fa986fa 484 bool "Sibyte BCM91125E-Rhone"
5e83d430
RB
485 depends on EXPERIMENTAL
486 select BOOT_ELF32
487 select DMA_COHERENT
488 select SIBYTE_BCM1125H
489 select SWAP_IO_SPACE
7cf8053b 490 select SYS_HAS_CPU_SB1
5e83d430
RB
491 select SYS_SUPPORTS_BIG_ENDIAN
492 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 493
5e83d430 494config SIBYTE_CARMEL
3fa986fa 495 bool "Sibyte BCM91120x-Carmel"
5e83d430
RB
496 depends on EXPERIMENTAL
497 select BOOT_ELF32
26a940e2 498 select DMA_COHERENT
5e83d430
RB
499 select SIBYTE_BCM1120
500 select SWAP_IO_SPACE
7cf8053b 501 select SYS_HAS_CPU_SB1
5e83d430 502 select SYS_SUPPORTS_BIG_ENDIAN
e3ad1c23
PP
503 select SYS_SUPPORTS_LITTLE_ENDIAN
504
5e83d430 505config SIBYTE_PTSWARM
3fa986fa 506 bool "Sibyte BCM91250PT-PTSWARM"
5e83d430
RB
507 depends on EXPERIMENTAL
508 select BOOT_ELF32
509 select DMA_COHERENT
130e2fb7 510 select NR_CPUS_DEFAULT_2
5e83d430
RB
511 select SIBYTE_SB1250
512 select SWAP_IO_SPACE
7cf8053b 513 select SYS_HAS_CPU_SB1
5e83d430
RB
514 select SYS_SUPPORTS_BIG_ENDIAN
515 select SYS_SUPPORTS_HIGHMEM
516 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 517
5e83d430 518config SIBYTE_LITTLESUR
3fa986fa 519 bool "Sibyte BCM91250C2-LittleSur"
5e83d430
RB
520 depends on EXPERIMENTAL
521 select BOOT_ELF32
522 select DMA_COHERENT
130e2fb7 523 select NR_CPUS_DEFAULT_2
5e83d430
RB
524 select SIBYTE_SB1250
525 select SWAP_IO_SPACE
7cf8053b 526 select SYS_HAS_CPU_SB1
5e83d430
RB
527 select SYS_SUPPORTS_BIG_ENDIAN
528 select SYS_SUPPORTS_HIGHMEM
529 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 530
5e83d430 531config SIBYTE_CRHINE
3fa986fa 532 bool "Sibyte BCM91120C-CRhine"
5e83d430
RB
533 depends on EXPERIMENTAL
534 select BOOT_ELF32
535 select DMA_COHERENT
536 select SIBYTE_BCM1120
537 select SWAP_IO_SPACE
7cf8053b 538 select SYS_HAS_CPU_SB1
5e83d430
RB
539 select SYS_SUPPORTS_BIG_ENDIAN
540 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 541
5e83d430 542config SIBYTE_CRHONE
3fa986fa 543 bool "Sibyte BCM91125C-CRhone"
5e83d430
RB
544 depends on EXPERIMENTAL
545 select BOOT_ELF32
546 select DMA_COHERENT
547 select SIBYTE_BCM1125
548 select SWAP_IO_SPACE
7cf8053b 549 select SYS_HAS_CPU_SB1
5e83d430
RB
550 select SYS_SUPPORTS_BIG_ENDIAN
551 select SYS_SUPPORTS_HIGHMEM
552 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 553
14b36af4
TB
554config SNI_RM
555 bool "SNI RM200/300/400"
4a0312fc
TB
556 select ARC if CPU_LITTLE_ENDIAN
557 select ARC32 if CPU_LITTLE_ENDIAN
61ed242d 558 select ARCH_MAY_HAVE_PC_FDC
1da177e4
LT
559 select BOOT_ELF32
560 select DMA_NONCOHERENT
561 select GENERIC_ISA_DMA
5e83d430 562 select HW_HAS_EISA
1da177e4 563 select HW_HAS_PCI
c066a32a 564 select IRQ_CPU
1da177e4
LT
565 select I8259
566 select ISA
de61b542 567 select PCSPEAKER
4a0312fc 568 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
7cf8053b 569 select SYS_HAS_CPU_R4X00
4a0312fc 570 select SYS_HAS_CPU_R5000
c066a32a 571 select SYS_HAS_CPU_R10000
4a0312fc 572 select R5000_CPU_SCACHE
36a88530 573 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
574 select SYS_SUPPORTS_32BIT_KERNEL
575 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
4a0312fc 576 select SYS_SUPPORTS_BIG_ENDIAN
797798c1 577 select SYS_SUPPORTS_HIGHMEM
5e83d430 578 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 579 help
14b36af4
TB
580 The SNI RM200/300/400 are MIPS-based machines manufactured by
581 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
1da177e4
LT
582 Technology and now in turn merged with Fujitsu. Say Y here to
583 support this machine type.
584
5e83d430 585config TOSHIBA_JMR3927
3fa986fa 586 bool "Toshiba JMR-TX3927 board"
5e83d430
RB
587 select DMA_NONCOHERENT
588 select HW_HAS_PCI
589 select MIPS_TX3927
590 select SWAP_IO_SPACE
7cf8053b 591 select SYS_HAS_CPU_TX39XX
5e83d430 592 select SYS_SUPPORTS_32BIT_KERNEL
6a2603a2 593 select SYS_SUPPORTS_LITTLE_ENDIAN
5e83d430 594 select SYS_SUPPORTS_BIG_ENDIAN
2127435e 595 select GENERIC_HARDIRQS_NO__DO_IRQ
5e83d430 596
1da177e4 597config TOSHIBA_RBTX4927
08a91283 598 bool "Toshiba RBTX49[23]7 board"
1da177e4
LT
599 select DMA_NONCOHERENT
600 select HAS_TXX9_SERIAL
601 select HW_HAS_PCI
602 select I8259
1da177e4 603 select SWAP_IO_SPACE
7cf8053b 604 select SYS_HAS_CPU_TX49XX
ed5ba2fb
YY
605 select SYS_SUPPORTS_32BIT_KERNEL
606 select SYS_SUPPORTS_64BIT_KERNEL
6a2603a2 607 select SYS_SUPPORTS_LITTLE_ENDIAN
5e83d430 608 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 609 select SYS_SUPPORTS_KGDB
9fd32cfb 610 select GENERIC_HARDIRQS_NO__DO_IRQ
1da177e4
LT
611 help
612 This Toshiba board is based on the TX4927 processor. Say Y here to
613 support this machine type
614
5e83d430 615config TOSHIBA_RBTX4938
3fa986fa 616 bool "Toshiba RBTX4938 board"
5e83d430
RB
617 select HAVE_STD_PC_SERIAL_PORT
618 select DMA_NONCOHERENT
619 select GENERIC_ISA_DMA
620 select HAS_TXX9_SERIAL
621 select HW_HAS_PCI
622 select I8259
5e83d430 623 select SWAP_IO_SPACE
7cf8053b 624 select SYS_HAS_CPU_TX49XX
5e83d430
RB
625 select SYS_SUPPORTS_32BIT_KERNEL
626 select SYS_SUPPORTS_LITTLE_ENDIAN
627 select SYS_SUPPORTS_BIG_ENDIAN
cc801077 628 select SYS_SUPPORTS_KGDB
9fd32cfb 629 select GENERIC_HARDIRQS_NO__DO_IRQ
3896b054 630 select GENERIC_GPIO
5e83d430
RB
631 help
632 This Toshiba board is based on the TX4938 processor. Say Y here to
633 support this machine type
634
635endchoice
1da177e4 636
c3543e25 637source "arch/mips/au1000/Kconfig"
5e83d430 638source "arch/mips/ddb5xxx/Kconfig"
5e83d430 639source "arch/mips/jazz/Kconfig"
5e83d430 640source "arch/mips/pmc-sierra/Kconfig"
29c48699 641source "arch/mips/sgi-ip27/Kconfig"
38b18f72 642source "arch/mips/sibyte/Kconfig"
5e83d430 643source "arch/mips/tx4927/Kconfig"
23fbee9d 644source "arch/mips/tx4938/Kconfig"
5e83d430 645source "arch/mips/vr41xx/Kconfig"
bdf21b18 646source "arch/mips/philips/pnx8550/common/Kconfig"
38b18f72 647
5e83d430
RB
648endmenu
649
1da177e4
LT
650config RWSEM_GENERIC_SPINLOCK
651 bool
652 default y
653
654config RWSEM_XCHGADD_ALGORITHM
655 bool
656
f0d1b0b3
DH
657config ARCH_HAS_ILOG2_U32
658 bool
659 default n
660
661config ARCH_HAS_ILOG2_U64
662 bool
663 default n
664
3c9ee7ef
AM
665config GENERIC_FIND_NEXT_BIT
666 bool
667 default y
668
669config GENERIC_HWEIGHT
670 bool
671 default y
672
1da177e4
LT
673config GENERIC_CALIBRATE_DELAY
674 bool
675 default y
676
8db02010
RB
677config GENERIC_TIME
678 bool
679 default y
680
1cc89038
AN
681config SCHED_NO_NO_OMIT_FRAME_POINTER
682 bool
683 default y
684
e77c232c
FBH
685config GENERIC_HARDIRQS_NO__DO_IRQ
686 bool
687 default n
688
1da177e4
LT
689#
690# Select some configuration options automatically based on user selections.
691#
692config ARC
693 bool
1da177e4 694
61ed242d
RB
695config ARCH_MAY_HAVE_PC_FDC
696 bool
697
9267a30d
MSJ
698config BOOT_RAW
699 bool
700
4ce588cd 701config DMA_COHERENT
1da177e4
LT
702 bool
703
4ce588cd 704config DMA_IP27
1da177e4
LT
705 bool
706
4ce588cd
RB
707config DMA_IP32
708 bool
709 select DMA_NEED_PCI_MAP_STATE
710
711config DMA_NONCOHERENT
712 bool
713 select DMA_NEED_PCI_MAP_STATE
714
715config DMA_NEED_PCI_MAP_STATE
1da177e4
LT
716 bool
717
718config EARLY_PRINTK
36a88530
RB
719 bool "Early printk" if EMBEDDED && DEBUG_KERNEL
720 depends on SYS_HAS_EARLY_PRINTK
721 default y
722 help
723 This option enables special console drivers which allow the kernel
724 to print messages very early in the bootup process.
725
726 This is useful for kernel debugging when your machine crashes very
490dcc4d
RD
727 early before the console code is initialized. For normal operation,
728 it is not recommended because it looks ugly on some machines and
729 doesn't cooperate with an X server. You should normally say N here,
36a88530
RB
730 unless you want to debug such a crash.
731
732config SYS_HAS_EARLY_PRINTK
1da177e4 733 bool
1da177e4
LT
734
735config GENERIC_ISA_DMA
736 bool
05502339 737 select ZONE_DMA
1da177e4
LT
738
739config I8259
740 bool
1da177e4 741
1da177e4
LT
742config MIPS_BONITO64
743 bool
1da177e4
LT
744
745config MIPS_MSC
746 bool
1da177e4 747
1da177e4
LT
748config MIPS_DISABLE_OBSOLETE_IDE
749 bool
750
d388d685
MR
751config NO_IOPORT
752 def_bool n
753
aa414dff
RB
754config GENERIC_ISA_DMA_SUPPORT_BROKEN
755 bool
05502339 756 select ZONE_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
1da177e4
LT
810config DDB5XXX_COMMON
811 bool
cc801077 812 select SYS_SUPPORTS_KGDB
1da177e4
LT
813
814config MIPS_BOARDS_GEN
815 bool
1da177e4 816
252161ec 817config PCI_GT64XXX_PCI0
1da177e4 818 bool
1da177e4 819
9267a30d
MSJ
820config NO_EXCEPT_FILL
821 bool
822
1da177e4
LT
823config MIPS_TX3927
824 bool
1da177e4 825 select HAS_TXX9_SERIAL
1da177e4 826
663c3d90 827config MIPS_RM9122
828 bool
829 select SERIAL_RM9000
663c3d90 830
bdf21b18
PP
831config PNX8550
832 bool
833 select SOC_PNX8550
834
835config SOC_PNX8550
836 bool
bdf21b18
PP
837 select DMA_NONCOHERENT
838 select HW_HAS_PCI
b8c2a77c 839 select SYS_HAS_CPU_MIPS32_R1
36a88530 840 select SYS_HAS_EARLY_PRINTK
7cf8053b 841 select SYS_SUPPORTS_32BIT_KERNEL
e77c232c 842 select GENERIC_HARDIRQS_NO__DO_IRQ
cc801077 843 select SYS_SUPPORTS_KGDB
4ead1681 844 select GENERIC_GPIO
bdf21b18 845
1da177e4
LT
846config SWAP_IO_SPACE
847 bool
848
355c471f 849config EMMA2RH
850 bool
851 depends on MARKEINS
852 default y
853
663c3d90 854config SERIAL_RM9000
855 bool
856
1da177e4
LT
857#
858# Unfortunately not all GT64120 systems run the chip at the same clock.
859# As the user for the clock rate and try to minimize the available options.
860#
861choice
862 prompt "Galileo Chip Clock"
6b5bf509 863 depends on MOMENCO_OCELOT
1e54f778 864 default SYSCLK_100 if MOMENCO_OCELOT
1da177e4 865
1da177e4 866config SYSCLK_100
6b5bf509 867 bool "100" if MOMENCO_OCELOT
1da177e4
LT
868
869endchoice
870
5e83d430
RB
871config ARC32
872 bool
873
1da177e4
LT
874config BOOT_ELF32
875 bool
1da177e4
LT
876
877config MIPS_L1_CACHE_SHIFT
878 int
06cf5583
TB
879 default "4" if MACH_DECSTATION
880 default "7" if SGI_IP27 || SNI_RM
9267a30d 881 default "4" if PMC_MSP4200_EVAL
1da177e4
LT
882 default "5"
883
1da177e4
LT
884config HAVE_STD_PC_SERIAL_PORT
885 bool
886
1da177e4
LT
887config ARC_CONSOLE
888 bool "ARC console support"
36a88530 889 depends on SGI_IP22 || (SNI_RM && CPU_LITTLE_ENDIAN)
1da177e4
LT
890
891config ARC_MEMORY
892 bool
14b36af4 893 depends on MACH_JAZZ || SNI_RM || SGI_IP32
1da177e4
LT
894 default y
895
896config ARC_PROMLIB
897 bool
14b36af4 898 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP32
1da177e4
LT
899 default y
900
901config ARC64
902 bool
1da177e4
LT
903
904config BOOT_ELF64
905 bool
1da177e4 906
1da177e4
LT
907menu "CPU selection"
908
909choice
910 prompt "CPU type"
911 default CPU_R4X00
912
2a21c730
FZ
913config CPU_LOONGSON2
914 bool "Loongson 2"
915 depends on SYS_HAS_CPU_LOONGSON2
916 select CPU_SUPPORTS_32BIT_KERNEL
917 select CPU_SUPPORTS_64BIT_KERNEL
918 select CPU_SUPPORTS_HIGHMEM
919 help
920 The Loongson 2E processor implements the MIPS III instruction set
921 with many extensions.
922
6e760c8d
RB
923config CPU_MIPS32_R1
924 bool "MIPS32 Release 1"
7cf8053b 925 depends on SYS_HAS_CPU_MIPS32_R1
f7062ddb 926 select CPU_HAS_LLSC
6e760c8d 927 select CPU_HAS_PREFETCH
797798c1 928 select CPU_SUPPORTS_32BIT_KERNEL
ec28f306 929 select CPU_SUPPORTS_HIGHMEM
1e5f1caa 930 help
5e83d430 931 Choose this option to build a kernel for release 1 or later of the
1e5f1caa
RB
932 MIPS32 architecture. Most modern embedded systems with a 32-bit
933 MIPS processor are based on a MIPS32 processor. If you know the
934 specific type of processor in your system, choose those that one
935 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
936 Release 2 of the MIPS32 architecture is available since several
937 years so chances are you even have a MIPS32 Release 2 processor
938 in which case you should choose CPU_MIPS32_R2 instead for better
939 performance.
940
941config CPU_MIPS32_R2
942 bool "MIPS32 Release 2"
7cf8053b 943 depends on SYS_HAS_CPU_MIPS32_R2
f7062ddb 944 select CPU_HAS_LLSC
1e5f1caa 945 select CPU_HAS_PREFETCH
797798c1 946 select CPU_SUPPORTS_32BIT_KERNEL
ec28f306 947 select CPU_SUPPORTS_HIGHMEM
6e760c8d 948 help
5e83d430 949 Choose this option to build a kernel for release 2 or later of the
6e760c8d
RB
950 MIPS32 architecture. Most modern embedded systems with a 32-bit
951 MIPS processor are based on a MIPS32 processor. If you know the
952 specific type of processor in your system, choose those that one
953 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
954
955config CPU_MIPS64_R1
956 bool "MIPS64 Release 1"
7cf8053b 957 depends on SYS_HAS_CPU_MIPS64_R1
f7062ddb 958 select CPU_HAS_LLSC
797798c1 959 select CPU_HAS_PREFETCH
ed5ba2fb
YY
960 select CPU_SUPPORTS_32BIT_KERNEL
961 select CPU_SUPPORTS_64BIT_KERNEL
ec28f306 962 select CPU_SUPPORTS_HIGHMEM
6e760c8d
RB
963 help
964 Choose this option to build a kernel for release 1 or later of the
965 MIPS64 architecture. Many modern embedded systems with a 64-bit
966 MIPS processor are based on a MIPS64 processor. If you know the
967 specific type of processor in your system, choose those that one
968 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1e5f1caa
RB
969 Release 2 of the MIPS64 architecture is available since several
970 years so chances are you even have a MIPS64 Release 2 processor
971 in which case you should choose CPU_MIPS64_R2 instead for better
972 performance.
973
974config CPU_MIPS64_R2
975 bool "MIPS64 Release 2"
7cf8053b 976 depends on SYS_HAS_CPU_MIPS64_R2
f7062ddb 977 select CPU_HAS_LLSC
797798c1 978 select CPU_HAS_PREFETCH
1e5f1caa
RB
979 select CPU_SUPPORTS_32BIT_KERNEL
980 select CPU_SUPPORTS_64BIT_KERNEL
ec28f306 981 select CPU_SUPPORTS_HIGHMEM
1e5f1caa
RB
982 help
983 Choose this option to build a kernel for release 2 or later of the
984 MIPS64 architecture. Many modern embedded systems with a 64-bit
985 MIPS processor are based on a MIPS64 processor. If you know the
986 specific type of processor in your system, choose those that one
987 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1da177e4
LT
988
989config CPU_R3000
990 bool "R3000"
7cf8053b 991 depends on SYS_HAS_CPU_R3000
f7062ddb 992 select CPU_HAS_WB
ed5ba2fb 993 select CPU_SUPPORTS_32BIT_KERNEL
797798c1 994 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
995 help
996 Please make sure to pick the right CPU type. Linux/MIPS is not
997 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
998 *not* work on R4000 machines and vice versa. However, since most
999 of the supported machines have an R4000 (or similar) CPU, R4x00
1000 might be a safe bet. If the resulting kernel does not work,
1001 try to recompile with R3000.
1002
1003config CPU_TX39XX
1004 bool "R39XX"
7cf8053b 1005 depends on SYS_HAS_CPU_TX39XX
ed5ba2fb 1006 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1007
1008config CPU_VR41XX
1009 bool "R41xx"
7cf8053b 1010 depends on SYS_HAS_CPU_VR41XX
ed5ba2fb
YY
1011 select CPU_SUPPORTS_32BIT_KERNEL
1012 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4 1013 help
5e83d430 1014 The options selects support for the NEC VR4100 series of processors.
1da177e4
LT
1015 Only choose this option if you have one of these processors as a
1016 kernel built with this option will not run on any other type of
1017 processor or vice versa.
1018
1019config CPU_R4300
1020 bool "R4300"
7cf8053b 1021 depends on SYS_HAS_CPU_R4300
f7062ddb 1022 select CPU_HAS_LLSC
ed5ba2fb
YY
1023 select CPU_SUPPORTS_32BIT_KERNEL
1024 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1025 help
1026 MIPS Technologies R4300-series processors.
1027
1028config CPU_R4X00
1029 bool "R4x00"
7cf8053b 1030 depends on SYS_HAS_CPU_R4X00
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 MIPS Technologies R4000-series processors other than 4300, including
1036 the R4000, R4400, R4600, and 4700.
1037
1038config CPU_TX49XX
1039 bool "R49XX"
7cf8053b 1040 depends on SYS_HAS_CPU_TX49XX
f7062ddb 1041 select CPU_HAS_LLSC
de862b48 1042 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1043 select CPU_SUPPORTS_32BIT_KERNEL
1044 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1045
1046config CPU_R5000
1047 bool "R5000"
7cf8053b 1048 depends on SYS_HAS_CPU_R5000
f7062ddb 1049 select CPU_HAS_LLSC
ed5ba2fb
YY
1050 select CPU_SUPPORTS_32BIT_KERNEL
1051 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1052 help
1053 MIPS Technologies R5000-series processors other than the Nevada.
1054
1055config CPU_R5432
1056 bool "R5432"
7cf8053b 1057 depends on SYS_HAS_CPU_R5432
f7062ddb 1058 select CPU_HAS_LLSC
5e83d430
RB
1059 select CPU_SUPPORTS_32BIT_KERNEL
1060 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1061
1062config CPU_R6000
1063 bool "R6000"
ed5ba2fb 1064 depends on EXPERIMENTAL
f7062ddb 1065 select CPU_HAS_LLSC
7cf8053b 1066 depends on SYS_HAS_CPU_R6000
ed5ba2fb 1067 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1068 help
1069 MIPS Technologies R6000 and R6000A series processors. Note these
c09b47d8 1070 processors are extremely rare and the support for them is incomplete.
1da177e4
LT
1071
1072config CPU_NEVADA
1073 bool "RM52xx"
7cf8053b 1074 depends on SYS_HAS_CPU_NEVADA
f7062ddb 1075 select CPU_HAS_LLSC
ed5ba2fb
YY
1076 select CPU_SUPPORTS_32BIT_KERNEL
1077 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1078 help
1079 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1080
1081config CPU_R8000
1082 bool "R8000"
ed5ba2fb 1083 depends on EXPERIMENTAL
7cf8053b 1084 depends on SYS_HAS_CPU_R8000
f7062ddb 1085 select CPU_HAS_LLSC
5e83d430 1086 select CPU_HAS_PREFETCH
ed5ba2fb 1087 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1088 help
1089 MIPS Technologies R8000 processors. Note these processors are
1090 uncommon and the support for them is incomplete.
1091
1092config CPU_R10000
1093 bool "R10000"
7cf8053b 1094 depends on SYS_HAS_CPU_R10000
f7062ddb 1095 select CPU_HAS_LLSC
5e83d430 1096 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1097 select CPU_SUPPORTS_32BIT_KERNEL
1098 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1099 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1100 help
1101 MIPS Technologies R10000-series processors.
1102
1103config CPU_RM7000
1104 bool "RM7000"
7cf8053b 1105 depends on SYS_HAS_CPU_RM7000
f7062ddb 1106 select CPU_HAS_LLSC
5e83d430 1107 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1108 select CPU_SUPPORTS_32BIT_KERNEL
1109 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1110 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1111
1112config CPU_RM9000
1113 bool "RM9000"
7cf8053b 1114 depends on SYS_HAS_CPU_RM9000
f7062ddb 1115 select CPU_HAS_LLSC
5e83d430 1116 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1117 select CPU_SUPPORTS_32BIT_KERNEL
1118 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1119 select CPU_SUPPORTS_HIGHMEM
0004a9df 1120 select WEAK_ORDERING
1da177e4
LT
1121
1122config CPU_SB1
1123 bool "SB1"
7cf8053b 1124 depends on SYS_HAS_CPU_SB1
f7062ddb 1125 select CPU_HAS_LLSC
ed5ba2fb
YY
1126 select CPU_SUPPORTS_32BIT_KERNEL
1127 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1128 select CPU_SUPPORTS_HIGHMEM
0004a9df 1129 select WEAK_ORDERING
1da177e4
LT
1130
1131endchoice
1132
2a21c730
FZ
1133config SYS_HAS_CPU_LOONGSON2
1134 bool
1135
7cf8053b
RB
1136config SYS_HAS_CPU_MIPS32_R1
1137 bool
1138
1139config SYS_HAS_CPU_MIPS32_R2
1140 bool
1141
1142config SYS_HAS_CPU_MIPS64_R1
1143 bool
1144
1145config SYS_HAS_CPU_MIPS64_R2
1146 bool
1147
1148config SYS_HAS_CPU_R3000
1149 bool
1150
1151config SYS_HAS_CPU_TX39XX
1152 bool
1153
1154config SYS_HAS_CPU_VR41XX
1155 bool
1156
1157config SYS_HAS_CPU_R4300
1158 bool
1159
1160config SYS_HAS_CPU_R4X00
1161 bool
1162
1163config SYS_HAS_CPU_TX49XX
1164 bool
1165
1166config SYS_HAS_CPU_R5000
1167 bool
1168
1169config SYS_HAS_CPU_R5432
1170 bool
1171
1172config SYS_HAS_CPU_R6000
1173 bool
1174
1175config SYS_HAS_CPU_NEVADA
1176 bool
1177
1178config SYS_HAS_CPU_R8000
1179 bool
1180
1181config SYS_HAS_CPU_R10000
1182 bool
1183
1184config SYS_HAS_CPU_RM7000
1185 bool
1186
1187config SYS_HAS_CPU_RM9000
1188 bool
1189
1190config SYS_HAS_CPU_SB1
1191 bool
1192
17099b11
RB
1193#
1194# CPU may reorder R->R, R->W, W->R, W->W
1195# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1196#
0004a9df
RB
1197config WEAK_ORDERING
1198 bool
17099b11
RB
1199
1200#
1201# CPU may reorder reads and writes beyond LL/SC
1202# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1203#
1204config WEAK_REORDERING_BEYOND_LLSC
1205 bool
5e83d430
RB
1206endmenu
1207
1208#
c09b47d8 1209# These two indicate any level of the MIPS32 and MIPS64 architecture
5e83d430
RB
1210#
1211config CPU_MIPS32
1212 bool
1213 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1214
1215config CPU_MIPS64
1216 bool
1217 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1218
1219#
c09b47d8 1220# These two indicate the revision of the architecture, either Release 1 or Release 2
5e83d430
RB
1221#
1222config CPU_MIPSR1
1223 bool
1224 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1225
1226config CPU_MIPSR2
1227 bool
1228 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2
1229
1230config SYS_SUPPORTS_32BIT_KERNEL
1231 bool
1232config SYS_SUPPORTS_64BIT_KERNEL
1233 bool
1234config CPU_SUPPORTS_32BIT_KERNEL
1235 bool
1236config CPU_SUPPORTS_64BIT_KERNEL
1237 bool
1238
1239menu "Kernel type"
1240
1241choice
1242
1243 prompt "Kernel code model"
1244 help
1245 You should only select this option if you have a workload that
1246 actually benefits from 64-bit processing or if your machine has
1247 large memory. You will only be presented a single option in this
1248 menu if your system does not support both 32-bit and 64-bit kernels.
1249
1250config 32BIT
1251 bool "32-bit kernel"
1252 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1253 select TRAD_SIGNALS
1254 help
1255 Select this option if you want to build a 32-bit kernel.
1256config 64BIT
1257 bool "64-bit kernel"
1258 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
1259 help
1260 Select this option if you want to build a 64-bit kernel.
1261
1262endchoice
1263
1da177e4
LT
1264choice
1265 prompt "Kernel page size"
1266 default PAGE_SIZE_4KB
1267
1268config PAGE_SIZE_4KB
1269 bool "4kB"
1270 help
1271 This option select the standard 4kB Linux page size. On some
1272 R3000-family processors this is the only available page size. Using
1273 4kB page size will minimize memory consumption and is therefore
1274 recommended for low memory systems.
1275
1276config PAGE_SIZE_8KB
1277 bool "8kB"
1278 depends on EXPERIMENTAL && CPU_R8000
1279 help
1280 Using 8kB page size will result in higher performance kernel at
1281 the price of higher memory consumption. This option is available
1282 only on the R8000 processor. Not that at the time of this writing
1283 this option is still high experimental; there are also issues with
1284 compatibility of user applications.
1285
1286config PAGE_SIZE_16KB
1287 bool "16kB"
714bfad6 1288 depends on !CPU_R3000 && !CPU_TX39XX
1da177e4
LT
1289 help
1290 Using 16kB page size will result in higher performance kernel at
1291 the price of higher memory consumption. This option is available on
714bfad6
RB
1292 all non-R3000 family processors. Note that you will need a suitable
1293 Linux distribution to support this.
1da177e4
LT
1294
1295config PAGE_SIZE_64KB
1296 bool "64kB"
1297 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1298 help
1299 Using 64kB page size will result in higher performance kernel at
1300 the price of higher memory consumption. This option is available on
1301 all non-R3000 family processor. Not that at the time of this
714bfad6 1302 writing this option is still high experimental.
1da177e4
LT
1303
1304endchoice
1305
1306config BOARD_SCACHE
1307 bool
1308
1309config IP22_CPU_SCACHE
1310 bool
1311 select BOARD_SCACHE
1312
9318c51a
CD
1313#
1314# Support for a MIPS32 / MIPS64 style S-caches
1315#
1316config MIPS_CPU_SCACHE
1317 bool
1318 select BOARD_SCACHE
1319
1da177e4
LT
1320config R5000_CPU_SCACHE
1321 bool
1322 select BOARD_SCACHE
1323
1324config RM7000_CPU_SCACHE
1325 bool
1326 select BOARD_SCACHE
1327
1328config SIBYTE_DMA_PAGEOPS
1329 bool "Use DMA to clear/copy pages"
1330 depends on CPU_SB1
1331 help
1332 Instead of using the CPU to zero and copy pages, use a Data Mover
1333 channel. These DMA channels are otherwise unused by the standard
1334 SiByte Linux port. Seems to give a small performance benefit.
1335
1336config CPU_HAS_PREFETCH
c8094b53 1337 bool
1da177e4 1338
340ee4b9
RB
1339choice
1340 prompt "MIPS MT options"
f41ae0b2
RB
1341
1342config MIPS_MT_DISABLED
1343 bool "Disable multithreading support."
1344 help
1345 Use this option if your workload can't take advantage of
1346 MIPS hardware multithreading support. On systems that don't have
1347 the option of an MT-enabled processor this option will be the only
1348 option in this menu.
340ee4b9 1349
59d6ab86
RB
1350config MIPS_MT_SMP
1351 bool "Use 1 TC on each available VPE for SMP"
f41ae0b2 1352 depends on SYS_SUPPORTS_MULTITHREADING
f7062ddb 1353 select CPU_MIPSR2_IRQ_VI
d725cf38 1354 select CPU_MIPSR2_IRQ_EI
f7062ddb 1355 select CPU_MIPSR2_SRS
f41ae0b2 1356 select MIPS_MT
f510aa3b 1357 select NR_CPUS_DEFAULT_2
41c594ab 1358 select SMP
73b76c78 1359 select SYS_SUPPORTS_SMP
f41ae0b2 1360 help
59d6ab86
RB
1361 This is a kernel model which is also known a VSMP or lately
1362 has been marketesed into SMVP.
41c594ab 1363
59d6ab86
RB
1364config MIPS_MT_SMTC
1365 bool "SMTC: Use all TCs on all VPEs for SMP"
1366 depends on CPU_MIPS32_R2
1367 #depends on CPU_MIPS64_R2 # once there is hardware ...
f41ae0b2
RB
1368 depends on SYS_SUPPORTS_MULTITHREADING
1369 select CPU_MIPSR2_IRQ_VI
d725cf38 1370 select CPU_MIPSR2_IRQ_EI
f41ae0b2
RB
1371 select CPU_MIPSR2_SRS
1372 select MIPS_MT
130e2fb7 1373 select NR_CPUS_DEFAULT_8
340ee4b9 1374 select SMP
73b76c78 1375 select SYS_SUPPORTS_SMP
f41ae0b2 1376 help
59d6ab86
RB
1377 This is a kernel model which is known a SMTC or lately has been
1378 marketesed into SMVP.
340ee4b9 1379
e01402b1
RB
1380config MIPS_VPE_LOADER
1381 bool "VPE loader support."
f41ae0b2 1382 depends on SYS_SUPPORTS_MULTITHREADING
d725cf38
CD
1383 select CPU_MIPSR2_IRQ_VI
1384 select CPU_MIPSR2_IRQ_EI
b0c10b9f 1385 select CPU_MIPSR2_SRS
f41ae0b2 1386 select MIPS_MT
e01402b1
RB
1387 help
1388 Includes a loader for loading an elf relocatable object
1389 onto another VPE and running it.
1390
340ee4b9
RB
1391endchoice
1392
f41ae0b2
RB
1393config MIPS_MT
1394 bool
1395
1396config SYS_SUPPORTS_MULTITHREADING
1397 bool
1398
f088fc84
RB
1399config MIPS_MT_FPAFF
1400 bool "Dynamic FPU affinity for FP-intensive threads"
1401 depends on MIPS_MT
1402 default y
1403
ac8be955
RB
1404config MIPS_MT_SMTC_INSTANT_REPLAY
1405 bool "Low-latency Dispatch of Deferred SMTC IPIs"
619af723 1406 depends on MIPS_MT_SMTC && !PREEMPT
ac8be955
RB
1407 default y
1408 help
1409 SMTC pseudo-interrupts between TCs are deferred and queued
1410 if the target TC is interrupt-inhibited (IXMT). In the first
1411 SMTC prototypes, these queued IPIs were serviced on return
1412 to user mode, or on entry into the kernel idle loop. The
1413 INSTANT_REPLAY option dispatches them as part of local_irq_restore()
1414 processing, which adds runtime overhead (hence the option to turn
1415 it off), but ensures that IPIs are handled promptly even under
1416 heavy I/O interrupt load.
1417
0db34215
KK
1418config MIPS_MT_SMTC_IM_BACKSTOP
1419 bool "Use per-TC register bits as backstop for inhibited IM bits"
1420 depends on MIPS_MT_SMTC
1421 default y
1422 help
1423 To support multiple TC microthreads acting as "CPUs" within
1424 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1425 during interrupt handling. To support legacy drivers and interrupt
1426 controller management code, SMTC has a "backstop" to track and
1427 if necessary restore the interrupt mask. This has some performance
1428 impact on interrupt service overhead. Disable it only if you know
1429 what you are doing.
1430
e01402b1
RB
1431config MIPS_VPE_LOADER_TOM
1432 bool "Load VPE program into memory hidden from linux"
1433 depends on MIPS_VPE_LOADER
1434 default y
1435 help
1436 The loader can use memory that is present but has been hidden from
1437 Linux using the kernel command line option "mem=xxMB". It's up to
1438 you to ensure the amount you put in the option and the space your
1439 program requires is less or equal to the amount physically present.
1440
1441# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1442config MIPS_VPE_APSP_API
5e83d430
RB
1443 bool "Enable support for AP/SP API (RTLX)"
1444 depends on MIPS_VPE_LOADER
1445 help
e01402b1 1446
2600990e
RB
1447config MIPS_APSP_KSPD
1448 bool "Enable KSPD"
1449 depends on MIPS_VPE_APSP_API
1450 default y
1451 help
1452 KSPD is a kernel daemon that accepts syscall requests from the SP
1453 side, actions them and returns the results. It also handles the
1454 "exit" syscall notifying other kernel modules the SP program is
1455 exiting. You probably want to say yes here.
1456
1da177e4
LT
1457config SB1_PASS_1_WORKAROUNDS
1458 bool
1459 depends on CPU_SB1_PASS_1
1460 default y
1461
1462config SB1_PASS_2_WORKAROUNDS
1463 bool
1464 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1465 default y
1466
1467config SB1_PASS_2_1_WORKAROUNDS
1468 bool
1469 depends on CPU_SB1 && CPU_SB1_PASS_2
1470 default y
1471
1472config 64BIT_PHYS_ADDR
1473 bool "Support for 64-bit physical address space"
948928ad 1474 depends on (CPU_R4X00 || CPU_R5000 || CPU_RM7000 || CPU_RM9000 || CPU_R10000 || CPU_SB1 || CPU_MIPS32 || CPU_MIPS64) && 32BIT
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
1816 help
1817 Find out whether you have a PCI motherboard. PCI is the name of a
1818 bus system, i.e. the way the CPU talks to the other stuff inside
1819 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
1820 say Y, otherwise N.
1821
1822 The PCI-HOWTO, available from
1823 <http://www.tldp.org/docs.html#howto>, contains valuable
1824 information about which PCI hardware does work under Linux and which
1825 doesn't.
1826
1827config PCI_DOMAINS
1828 bool
1829 depends on PCI
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
LT
1893
1894config BUILD_ELF64
1895 bool "Use 64-bit ELF format for building"
875d43e7 1896 depends on 64BIT
1da177e4
LT
1897 help
1898 A 64-bit kernel is usually built using the 64-bit ELF binary object
1899 format as it's one that allows arbitrary 64-bit constructs. For
1900 kernels that are loaded within the KSEG compatibility segments the
1901 32-bit ELF format can optionally be used resulting in a somewhat
1902 smaller binary, but this option is not explicitly supported by the
1903 toolchain and since binutils 2.14 it does not even work at all.
1904
1905 Say Y to use the 64-bit format or N to use the 32-bit one.
1906
1907 If unsure say Y.
1908
1909config BINFMT_IRIX
1910 bool "Include IRIX binary compatibility"
5e83d430 1911 depends on CPU_BIG_ENDIAN && 32BIT && BROKEN
1da177e4
LT
1912
1913config MIPS32_COMPAT
1914 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
875d43e7 1915 depends on 64BIT
1da177e4
LT
1916 help
1917 Select this option if you want Linux/MIPS 32-bit binary
1918 compatibility. Since all software available for Linux/MIPS is
1919 currently 32-bit you should say Y here.
1920
1921config COMPAT
1922 bool
1923 depends on MIPS32_COMPAT
1924 default y
1925
05e43966
AN
1926config SYSVIPC_COMPAT
1927 bool
1928 depends on COMPAT && SYSVIPC
1929 default y
1930
1da177e4
LT
1931config MIPS32_O32
1932 bool "Kernel support for o32 binaries"
1933 depends on MIPS32_COMPAT
1934 help
1935 Select this option if you want to run o32 binaries. These are pure
1936 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
1937 existing binaries are in this format.
1938
1939 If unsure, say Y.
1940
1941config MIPS32_N32
1942 bool "Kernel support for n32 binaries"
1943 depends on MIPS32_COMPAT
1944 help
1945 Select this option if you want to run n32 binaries. These are
1946 64-bit binaries using 32-bit quantities for addressing and certain
1947 data that would normally be 64-bit. They are used in special
1948 cases.
1949
1950 If unsure, say N.
1951
1952config BINFMT_ELF32
1953 bool
1954 default y if MIPS32_O32 || MIPS32_N32
1955
2116245e
RB
1956endmenu
1957
1958menu "Power management options"
1959
1960source "kernel/power/Kconfig"
952fa954 1961
1da177e4
LT
1962endmenu
1963
d5950b43
SR
1964source "net/Kconfig"
1965
1da177e4
LT
1966source "drivers/Kconfig"
1967
1968source "fs/Kconfig"
1969
5e83d430
RB
1970source "arch/mips/oprofile/Kconfig"
1971
1da177e4
LT
1972source "arch/mips/Kconfig.debug"
1973
1974source "security/Kconfig"
1975
1976source "crypto/Kconfig"
1977
1978source "lib/Kconfig"