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