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