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