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