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