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