MIPS, Perf-events: Work with irq_work
[linux-2.6-block.git] / arch / mips / Kconfig
CommitLineData
1da177e4
LT
1config MIPS
2 bool
3 default y
f8ac0425 4 select HAVE_GENERIC_DMA_COHERENT
ec7748b5 5 select HAVE_IDE
42d4b839 6 select HAVE_OPROFILE
91f01737 7 select HAVE_IRQ_WORK
7f788d2d
DCZ
8 select HAVE_PERF_EVENTS
9 select PERF_USE_VMALLOC
88547001 10 select HAVE_ARCH_KGDB
d2bb0762 11 select HAVE_FUNCTION_TRACER
69a7d1b3 12 select HAVE_FUNCTION_TRACE_MCOUNT_TEST
538f1952
WZ
13 select HAVE_DYNAMIC_FTRACE
14 select HAVE_FTRACE_MCOUNT_RECORD
64575f91 15 select HAVE_C_RECORDMCOUNT
29c5d346 16 select HAVE_FUNCTION_GRAPH_TRACER
c1bf207d
DD
17 select HAVE_KPROBES
18 select HAVE_KRETPROBES
21a41faa 19 select RTC_LIB if !MACH_LOONGSON
2b78920d 20 select GENERIC_ATOMIC64 if !64BIT
48e1fd5a
DD
21 select HAVE_DMA_ATTRS
22 select HAVE_DMA_API_DEBUG
3bd27e32
DD
23 select HAVE_GENERIC_HARDIRQS
24 select GENERIC_IRQ_PROBE
94bb0c1a 25 select HAVE_ARCH_JUMP_LABEL
1da177e4 26
1da177e4
LT
27menu "Machine selection"
28
5ac6da66
CL
29config ZONE_DMA
30 bool
5ac6da66 31
5e83d430
RB
32choice
33 prompt "System type"
34 default SGI_IP22
1da177e4 35
42a4f17d 36config MIPS_ALCHEMY
c3543e25 37 bool "Alchemy processor based machines"
42a4f17d
ML
38 select 64BIT_PHYS_ADDR
39 select CEVT_R4K_LIB
40 select CSRC_R4K_LIB
41 select IRQ_CPU
42 select SYS_HAS_CPU_MIPS32_R1
43 select SYS_SUPPORTS_32BIT_KERNEL
44 select SYS_SUPPORTS_APM_EMULATION
45 select GENERIC_GPIO
46 select ARCH_WANT_OPTIONAL_GPIOLIB
1b93b3c3 47 select SYS_SUPPORTS_ZBOOT
1da177e4 48
7ca5dc14
FF
49config AR7
50 bool "Texas Instruments AR7"
51 select BOOT_ELF32
52 select DMA_NONCOHERENT
53 select CEVT_R4K
54 select CSRC_R4K
55 select IRQ_CPU
56 select NO_EXCEPT_FILL
57 select SWAP_IO_SPACE
58 select SYS_HAS_CPU_MIPS32_R1
59 select SYS_HAS_EARLY_PRINTK
60 select SYS_SUPPORTS_32BIT_KERNEL
61 select SYS_SUPPORTS_LITTLE_ENDIAN
1b93b3c3 62 select SYS_SUPPORTS_ZBOOT_UART16550
5f3c9098 63 select ARCH_REQUIRE_GPIOLIB
7ca5dc14
FF
64 select GCD
65 select VLYNQ
66 help
67 Support for the Texas Instruments AR7 System-on-a-Chip
68 family: TNETD7100, 7200 and 7300.
69
d4a67d9d
GJ
70config ATH79
71 bool "Atheros AR71XX/AR724X/AR913X based boards"
6eae43c5 72 select ARCH_REQUIRE_GPIOLIB
d4a67d9d
GJ
73 select BOOT_RAW
74 select CEVT_R4K
75 select CSRC_R4K
76 select DMA_NONCOHERENT
77 select IRQ_CPU
0aabf1a4 78 select MIPS_MACHINE
d4a67d9d
GJ
79 select SYS_HAS_CPU_MIPS32_R2
80 select SYS_HAS_EARLY_PRINTK
81 select SYS_SUPPORTS_32BIT_KERNEL
82 select SYS_SUPPORTS_BIG_ENDIAN
83 help
84 Support for the Atheros AR71XX/AR724X/AR913X SoCs.
85
1c0c13eb 86config BCM47XX
c619366e 87 bool "Broadcom BCM47XX based boards"
42f77542 88 select CEVT_R4K
940f6b48 89 select CSRC_R4K
1c0c13eb
AJ
90 select DMA_NONCOHERENT
91 select HW_HAS_PCI
92 select IRQ_CPU
93 select SYS_HAS_CPU_MIPS32_R1
94 select SYS_SUPPORTS_32BIT_KERNEL
95 select SYS_SUPPORTS_LITTLE_ENDIAN
96 select SSB
97 select SSB_DRIVER_MIPS
2f02c15a 98 select SSB_DRIVER_EXTIF
b06f3e19 99 select SSB_EMBEDDED
220937b1 100 select SSB_B43_PCI_BRIDGE if PCI
2f02c15a 101 select SSB_PCICORE_HOSTMODE if PCI
1c0c13eb 102 select GENERIC_GPIO
25e5fb97
AJ
103 select SYS_HAS_EARLY_PRINTK
104 select CFE
1c0c13eb
AJ
105 help
106 Support for BCM47XX based boards
107
e7300d04
MB
108config BCM63XX
109 bool "Broadcom BCM63XX based boards"
110 select CEVT_R4K
111 select CSRC_R4K
112 select DMA_NONCOHERENT
113 select IRQ_CPU
114 select SYS_HAS_CPU_MIPS32_R1
115 select SYS_SUPPORTS_32BIT_KERNEL
116 select SYS_SUPPORTS_BIG_ENDIAN
117 select SYS_HAS_EARLY_PRINTK
118 select SWAP_IO_SPACE
119 select ARCH_REQUIRE_GPIOLIB
120 help
121 Support for BCM63XX based boards
122
1da177e4 123config MIPS_COBALT
3fa986fa 124 bool "Cobalt Server"
42f77542 125 select CEVT_R4K
940f6b48 126 select CSRC_R4K
1097c6ac 127 select CEVT_GT641XX
1da177e4
LT
128 select DMA_NONCOHERENT
129 select HW_HAS_PCI
d865bea4 130 select I8253
1da177e4
LT
131 select I8259
132 select IRQ_CPU
d5ab1a69 133 select IRQ_GT641XX
252161ec 134 select PCI_GT64XXX_PCI0
e25bfc92 135 select PCI
7cf8053b 136 select SYS_HAS_CPU_NEVADA
0a22e0d4 137 select SYS_HAS_EARLY_PRINTK
ed5ba2fb 138 select SYS_SUPPORTS_32BIT_KERNEL
0e8774b6 139 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 140 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4
LT
141
142config MACH_DECSTATION
3fa986fa 143 bool "DECstations"
1da177e4 144 select BOOT_ELF32
6457d9fc 145 select CEVT_DS1287
42f77542 146 select CEVT_R4K
4247417d 147 select CSRC_IOASIC
940f6b48 148 select CSRC_R4K
20d60d99
MR
149 select CPU_DADDI_WORKAROUNDS if 64BIT
150 select CPU_R4000_WORKAROUNDS if 64BIT
151 select CPU_R4400_WORKAROUNDS if 64BIT
1da177e4 152 select DMA_NONCOHERENT
d388d685 153 select NO_IOPORT
1da177e4 154 select IRQ_CPU
7cf8053b
RB
155 select SYS_HAS_CPU_R3000
156 select SYS_HAS_CPU_R4X00
ed5ba2fb
YY
157 select SYS_SUPPORTS_32BIT_KERNEL
158 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
5e83d430 159 select SYS_SUPPORTS_LITTLE_ENDIAN
1723b4a3
AN
160 select SYS_SUPPORTS_128HZ
161 select SYS_SUPPORTS_256HZ
162 select SYS_SUPPORTS_1024HZ
5e83d430 163 help
1da177e4
LT
164 This enables support for DEC's MIPS based workstations. For details
165 see the Linux/MIPS FAQ on <http://www.linux-mips.org/> and the
166 DECstation porting pages on <http://decstation.unix-ag.org/>.
167
168 If you have one of the following DECstation Models you definitely
169 want to choose R4xx0 for the CPU Type:
170
9308816c
RB
171 DECstation 5000/50
172 DECstation 5000/150
173 DECstation 5000/260
174 DECsystem 5900/260
1da177e4
LT
175
176 otherwise choose R3000.
177
5e83d430 178config MACH_JAZZ
3fa986fa 179 bool "Jazz family of machines"
5e83d430
RB
180 select ARC
181 select ARC32
182 select ARCH_MAY_HAVE_PC_FDC
42f77542 183 select CEVT_R4K
940f6b48 184 select CSRC_R4K
e2defae5 185 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
5e83d430 186 select GENERIC_ISA_DMA
ea202c63 187 select IRQ_CPU
d865bea4 188 select I8253
5e83d430
RB
189 select I8259
190 select ISA
7cf8053b 191 select SYS_HAS_CPU_R4X00
5e83d430
RB
192 select SYS_SUPPORTS_32BIT_KERNEL
193 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
1723b4a3 194 select SYS_SUPPORTS_100HZ
1da177e4 195 help
5e83d430
RB
196 This a family of machines based on the MIPS R4030 chipset which was
197 used by several vendors to build RISC/os and Windows NT workstations.
692105b8 198 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millennium and
5e83d430
RB
199 Olivetti M700-10 workstations.
200
5ebabe59
LPC
201config MACH_JZ4740
202 bool "Ingenic JZ4740 based machines"
203 select SYS_HAS_CPU_MIPS32_R1
204 select SYS_SUPPORTS_32BIT_KERNEL
205 select SYS_SUPPORTS_LITTLE_ENDIAN
206 select DMA_NONCOHERENT
207 select IRQ_CPU
208 select GENERIC_GPIO
209 select ARCH_REQUIRE_GPIOLIB
210 select SYS_HAS_EARLY_PRINTK
211 select HAVE_PWM
212
1f21d2bd
BM
213config LASAT
214 bool "LASAT Networks platforms"
42f77542 215 select CEVT_R4K
940f6b48 216 select CSRC_R4K
1f21d2bd
BM
217 select DMA_NONCOHERENT
218 select SYS_HAS_EARLY_PRINTK
219 select HW_HAS_PCI
a5ccfe5c 220 select IRQ_CPU
1f21d2bd
BM
221 select PCI_GT64XXX_PCI0
222 select MIPS_NILE4
223 select R5000_CPU_SCACHE
224 select SYS_HAS_CPU_R5000
225 select SYS_SUPPORTS_32BIT_KERNEL
226 select SYS_SUPPORTS_64BIT_KERNEL if BROKEN
227 select SYS_SUPPORTS_LITTLE_ENDIAN
1f21d2bd 228
85749d24
WZ
229config MACH_LOONGSON
230 bool "Loongson family of machines"
c7e8c668 231 select SYS_SUPPORTS_ZBOOT
ade299d8 232 help
85749d24
WZ
233 This enables the support of Loongson family of machines.
234
235 Loongson is a family of general-purpose MIPS-compatible CPUs.
236 developed at Institute of Computing Technology (ICT),
237 Chinese Academy of Sciences (CAS) in the People's Republic
238 of China. The chief architect is Professor Weiwu Hu.
ade299d8 239
1da177e4 240config MIPS_MALTA
3fa986fa 241 bool "MIPS Malta board"
61ed242d 242 select ARCH_MAY_HAVE_PC_FDC
1da177e4 243 select BOOT_ELF32
fa71c960 244 select BOOT_RAW
42f77542 245 select CEVT_R4K
940f6b48 246 select CSRC_R4K
1da177e4
LT
247 select DMA_NONCOHERENT
248 select GENERIC_ISA_DMA
aa414dff 249 select IRQ_CPU
39b8d525 250 select IRQ_GIC
1da177e4 251 select HW_HAS_PCI
d865bea4 252 select I8253
1da177e4 253 select I8259
5e83d430
RB
254 select MIPS_BOARDS_GEN
255 select MIPS_BONITO64
9318c51a 256 select MIPS_CPU_SCACHE
252161ec 257 select PCI_GT64XXX_PCI0
5e83d430 258 select MIPS_MSC
1da177e4 259 select SWAP_IO_SPACE
7cf8053b
RB
260 select SYS_HAS_CPU_MIPS32_R1
261 select SYS_HAS_CPU_MIPS32_R2
262 select SYS_HAS_CPU_MIPS64_R1
263 select SYS_HAS_CPU_NEVADA
264 select SYS_HAS_CPU_RM7000
36a88530 265 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
266 select SYS_SUPPORTS_32BIT_KERNEL
267 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430
RB
268 select SYS_SUPPORTS_BIG_ENDIAN
269 select SYS_SUPPORTS_LITTLE_ENDIAN
0365070f 270 select SYS_SUPPORTS_MIPS_CMP
f41ae0b2 271 select SYS_SUPPORTS_MULTITHREADING
9693a853 272 select SYS_SUPPORTS_SMARTMIPS
1b93b3c3 273 select SYS_SUPPORTS_ZBOOT
1da177e4 274 help
f638d197 275 This enables support for the MIPS Technologies Malta evaluation
1da177e4
LT
276 board.
277
5e83d430 278config MIPS_SIM
3fa986fa 279 bool 'MIPS simulator (MIPSsim)'
42f77542 280 select CEVT_R4K
940f6b48 281 select CSRC_R4K
1da177e4 282 select DMA_NONCOHERENT
36a88530 283 select SYS_HAS_EARLY_PRINTK
1da177e4 284 select IRQ_CPU
9267a30d 285 select BOOT_RAW
7cf8053b
RB
286 select SYS_HAS_CPU_MIPS32_R1
287 select SYS_HAS_CPU_MIPS32_R2
36a88530 288 select SYS_HAS_EARLY_PRINTK
ed5ba2fb 289 select SYS_SUPPORTS_32BIT_KERNEL
5e83d430 290 select SYS_SUPPORTS_BIG_ENDIAN
f6e2373a 291 select SYS_SUPPORTS_MULTITHREADING
5e83d430 292 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 293 help
5e83d430
RB
294 This option enables support for MIPS Technologies MIPSsim software
295 emulator.
1da177e4 296
a83860c2
RB
297config NEC_MARKEINS
298 bool "NEC EMMA2RH Mark-eins board"
299 select SOC_EMMA2RH
300 select HW_HAS_PCI
301 help
302 This enables support for the NEC Electronics Mark-eins boards.
ade299d8 303
5e83d430 304config MACH_VR41XX
74142d65 305 bool "NEC VR4100 series based machines"
42f77542 306 select CEVT_R4K
940f6b48 307 select CSRC_R4K
7cf8053b 308 select SYS_HAS_CPU_VR41XX
27fdd325 309 select ARCH_REQUIRE_GPIOLIB
5e83d430 310
edb6310a
DL
311config NXP_STB220
312 bool "NXP STB220 board"
313 select SOC_PNX833X
314 help
315 Support for NXP Semiconductors STB220 Development Board.
316
317config NXP_STB225
318 bool "NXP 225 board"
319 select SOC_PNX833X
320 select SOC_PNX8335
321 help
322 Support for NXP Semiconductors STB225 Development Board.
323
ade299d8 324config PNX8550_JBS
a92b0588 325 bool "NXP PNX8550 based JBS board"
ade299d8
YY
326 select PNX8550
327 select SYS_SUPPORTS_LITTLE_ENDIAN
328
329config PNX8550_STB810
a92b0588 330 bool "NXP PNX8550 based STB810 board"
ade299d8
YY
331 select PNX8550
332 select SYS_SUPPORTS_LITTLE_ENDIAN
333
9267a30d
MSJ
334config PMC_MSP
335 bool "PMC-Sierra MSP chipsets"
336 depends on EXPERIMENTAL
39d30c13
A
337 select CEVT_R4K
338 select CSRC_R4K
9267a30d
MSJ
339 select DMA_NONCOHERENT
340 select SWAP_IO_SPACE
341 select NO_EXCEPT_FILL
342 select BOOT_RAW
343 select SYS_HAS_CPU_MIPS32_R1
344 select SYS_HAS_CPU_MIPS32_R2
345 select SYS_SUPPORTS_32BIT_KERNEL
346 select SYS_SUPPORTS_BIG_ENDIAN
9267a30d
MSJ
347 select IRQ_CPU
348 select SERIAL_8250
349 select SERIAL_8250_CONSOLE
350 help
351 This adds support for the PMC-Sierra family of Multi-Service
352 Processor System-On-A-Chips. These parts include a number
353 of integrated peripherals, interfaces and DSPs in addition to
354 a variety of MIPS cores.
355
5e83d430 356config PMC_YOSEMITE
3fa986fa 357 bool "PMC-Sierra Yosemite eval board"
42f77542 358 select CEVT_R4K
940f6b48 359 select CSRC_R4K
5e83d430
RB
360 select DMA_COHERENT
361 select HW_HAS_PCI
362 select IRQ_CPU
363 select IRQ_CPU_RM7K
364 select IRQ_CPU_RM9K
365 select SWAP_IO_SPACE
7cf8053b 366 select SYS_HAS_CPU_RM9000
36a88530 367 select SYS_HAS_EARLY_PRINTK
5e83d430
RB
368 select SYS_SUPPORTS_32BIT_KERNEL
369 select SYS_SUPPORTS_64BIT_KERNEL
370 select SYS_SUPPORTS_BIG_ENDIAN
371 select SYS_SUPPORTS_HIGHMEM
e73ea273 372 select SYS_SUPPORTS_SMP
5e83d430
RB
373 help
374 Yosemite is an evaluation board for the RM9000x2 processor
375 manufactured by PMC-Sierra.
1da177e4 376
a3a0f8c8
DV
377config POWERTV
378 bool "Cisco PowerTV"
379 select BOOT_ELF32
380 select CEVT_R4K
381 select CPU_MIPSR2_IRQ_VI
382 select CPU_MIPSR2_IRQ_EI
383 select CSRC_POWERTV
384 select DMA_NONCOHERENT
385 select HW_HAS_PCI
386 select SYS_HAS_EARLY_PRINTK
387 select SYS_HAS_CPU_MIPS32_R2
388 select SYS_SUPPORTS_32BIT_KERNEL
389 select SYS_SUPPORTS_BIG_ENDIAN
390 select SYS_SUPPORTS_HIGHMEM
391 select USB_OHCI_LITTLE_ENDIAN
392 help
393 This enables support for the Cisco PowerTV Platform.
394
1da177e4 395config SGI_IP22
3fa986fa 396 bool "SGI IP22 (Indy/Indigo2)"
1da177e4
LT
397 select ARC
398 select ARC32
399 select BOOT_ELF32
42f77542 400 select CEVT_R4K
940f6b48 401 select CSRC_R4K
e2defae5 402 select DEFAULT_SGI_PARTITION
1da177e4 403 select DMA_NONCOHERENT
5e83d430 404 select HW_HAS_EISA
d865bea4 405 select I8253
68de4803 406 select I8259
1da177e4
LT
407 select IP22_CPU_SCACHE
408 select IRQ_CPU
aa414dff 409 select GENERIC_ISA_DMA_SUPPORT_BROKEN
e2defae5
TB
410 select SGI_HAS_I8042
411 select SGI_HAS_INDYDOG
36e5c21d 412 select SGI_HAS_HAL2
e2defae5
TB
413 select SGI_HAS_SEEQ
414 select SGI_HAS_WD93
415 select SGI_HAS_ZILOG
1da177e4 416 select SWAP_IO_SPACE
7cf8053b
RB
417 select SYS_HAS_CPU_R4X00
418 select SYS_HAS_CPU_R5000
2b5e63f6
MM
419 #
420 # Disable EARLY_PRINTK for now since it leads to overwritten prom
421 # memory during early boot on some machines.
422 #
423 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
424 # for a more details discussion
425 #
426 # select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
427 select SYS_SUPPORTS_32BIT_KERNEL
428 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 429 select SYS_SUPPORTS_BIG_ENDIAN
1da177e4
LT
430 help
431 This are the SGI Indy, Challenge S and Indigo2, as well as certain
432 OEM variants like the Tandem CMN B006S. To compile a Linux kernel
433 that runs on these, say Y here.
434
435config SGI_IP27
3fa986fa 436 bool "SGI IP27 (Origin200/2000)"
1da177e4
LT
437 select ARC
438 select ARC64
5e83d430 439 select BOOT_ELF64
e2defae5 440 select DEFAULT_SGI_PARTITION
634286f1 441 select DMA_COHERENT
36a88530 442 select SYS_HAS_EARLY_PRINTK
1da177e4 443 select HW_HAS_PCI
130e2fb7 444 select NR_CPUS_DEFAULT_64
7cf8053b 445 select SYS_HAS_CPU_R10000
ed5ba2fb 446 select SYS_SUPPORTS_64BIT_KERNEL
5e83d430 447 select SYS_SUPPORTS_BIG_ENDIAN
d8cb4e11 448 select SYS_SUPPORTS_NUMA
1a5c5de1 449 select SYS_SUPPORTS_SMP
1da177e4
LT
450 help
451 This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics
452 workstations. To compile a Linux kernel that runs on these, say Y
453 here.
454
e2defae5
TB
455config SGI_IP28
456 bool "SGI IP28 (Indigo2 R10k) (EXPERIMENTAL)"
457 depends on EXPERIMENTAL
458 select ARC
459 select ARC64
460 select BOOT_ELF64
461 select CEVT_R4K
462 select CSRC_R4K
463 select DEFAULT_SGI_PARTITION
464 select DMA_NONCOHERENT
465 select GENERIC_ISA_DMA_SUPPORT_BROKEN
466 select IRQ_CPU
467 select HW_HAS_EISA
468 select I8253
469 select I8259
e2defae5
TB
470 select SGI_HAS_I8042
471 select SGI_HAS_INDYDOG
5b438c44 472 select SGI_HAS_HAL2
e2defae5
TB
473 select SGI_HAS_SEEQ
474 select SGI_HAS_WD93
475 select SGI_HAS_ZILOG
476 select SWAP_IO_SPACE
477 select SYS_HAS_CPU_R10000
2b5e63f6
MM
478 #
479 # Disable EARLY_PRINTK for now since it leads to overwritten prom
480 # memory during early boot on some machines.
481 #
482 # See http://www.linux-mips.org/cgi-bin/mesg.cgi?a=linux-mips&i=20091119164009.GA15038%40deprecation.cyrius.com
483 # for a more details discussion
484 #
485 # select SYS_HAS_EARLY_PRINTK
e2defae5
TB
486 select SYS_SUPPORTS_64BIT_KERNEL
487 select SYS_SUPPORTS_BIG_ENDIAN
488 help
489 This is the SGI Indigo2 with R10000 processor. To compile a Linux
490 kernel that runs on these, say Y here.
491
1da177e4 492config SGI_IP32
cfd2afc0 493 bool "SGI IP32 (O2)"
1da177e4
LT
494 select ARC
495 select ARC32
496 select BOOT_ELF32
42f77542 497 select CEVT_R4K
940f6b48 498 select CSRC_R4K
1da177e4
LT
499 select DMA_NONCOHERENT
500 select HW_HAS_PCI
dd67b155 501 select IRQ_CPU
1da177e4
LT
502 select R5000_CPU_SCACHE
503 select RM7000_CPU_SCACHE
7cf8053b
RB
504 select SYS_HAS_CPU_R5000
505 select SYS_HAS_CPU_R10000 if BROKEN
506 select SYS_HAS_CPU_RM7000
dd2f18fe 507 select SYS_HAS_CPU_NEVADA
ed5ba2fb 508 select SYS_SUPPORTS_64BIT_KERNEL
23fbee9d 509 select SYS_SUPPORTS_BIG_ENDIAN
23fbee9d 510 help
5e83d430 511 If you want this kernel to run on SGI O2 workstation, say Y here.
1da177e4 512
ade299d8
YY
513config SIBYTE_CRHINE
514 bool "Sibyte BCM91120C-CRhine"
515 depends on EXPERIMENTAL
9a6dcea1
AI
516 select BOOT_ELF32
517 select DMA_COHERENT
ade299d8 518 select SIBYTE_BCM1120
9a6dcea1 519 select SWAP_IO_SPACE
7cf8053b 520 select SYS_HAS_CPU_SB1
9a6dcea1
AI
521 select SYS_SUPPORTS_BIG_ENDIAN
522 select SYS_SUPPORTS_LITTLE_ENDIAN
523
ade299d8
YY
524config SIBYTE_CARMEL
525 bool "Sibyte BCM91120x-Carmel"
526 depends on EXPERIMENTAL
5e83d430 527 select BOOT_ELF32
1da177e4 528 select DMA_COHERENT
ade299d8 529 select SIBYTE_BCM1120
5e83d430 530 select SWAP_IO_SPACE
7cf8053b 531 select SYS_HAS_CPU_SB1
81731f79 532 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430 533 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 534
ade299d8
YY
535config SIBYTE_CRHONE
536 bool "Sibyte BCM91125C-CRhone"
5e83d430
RB
537 depends on EXPERIMENTAL
538 select BOOT_ELF32
539 select DMA_COHERENT
ade299d8 540 select SIBYTE_BCM1125
5e83d430 541 select SWAP_IO_SPACE
7cf8053b 542 select SYS_HAS_CPU_SB1
5e83d430 543 select SYS_SUPPORTS_BIG_ENDIAN
ade299d8 544 select SYS_SUPPORTS_HIGHMEM
5e83d430 545 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 546
5e83d430 547config SIBYTE_RHONE
3fa986fa 548 bool "Sibyte BCM91125E-Rhone"
5e83d430
RB
549 depends on EXPERIMENTAL
550 select BOOT_ELF32
551 select DMA_COHERENT
552 select SIBYTE_BCM1125H
553 select SWAP_IO_SPACE
7cf8053b 554 select SYS_HAS_CPU_SB1
5e83d430
RB
555 select SYS_SUPPORTS_BIG_ENDIAN
556 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 557
ade299d8
YY
558config SIBYTE_SWARM
559 bool "Sibyte BCM91250A-SWARM"
5e83d430 560 select BOOT_ELF32
26a940e2 561 select DMA_COHERENT
fcf3ca4c 562 select HAVE_PATA_PLATFORM
ade299d8
YY
563 select NR_CPUS_DEFAULT_2
564 select SIBYTE_SB1250
5e83d430 565 select SWAP_IO_SPACE
7cf8053b 566 select SYS_HAS_CPU_SB1
5e83d430 567 select SYS_SUPPORTS_BIG_ENDIAN
ade299d8 568 select SYS_SUPPORTS_HIGHMEM
e3ad1c23 569 select SYS_SUPPORTS_LITTLE_ENDIAN
cce335ae 570 select ZONE_DMA32 if 64BIT
e3ad1c23 571
ade299d8
YY
572config SIBYTE_LITTLESUR
573 bool "Sibyte BCM91250C2-LittleSur"
5e83d430
RB
574 depends on EXPERIMENTAL
575 select BOOT_ELF32
576 select DMA_COHERENT
fcf3ca4c 577 select HAVE_PATA_PLATFORM
130e2fb7 578 select NR_CPUS_DEFAULT_2
5e83d430
RB
579 select SIBYTE_SB1250
580 select SWAP_IO_SPACE
7cf8053b 581 select SYS_HAS_CPU_SB1
5e83d430
RB
582 select SYS_SUPPORTS_BIG_ENDIAN
583 select SYS_SUPPORTS_HIGHMEM
584 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 585
ade299d8
YY
586config SIBYTE_SENTOSA
587 bool "Sibyte BCM91250E-Sentosa"
5e83d430
RB
588 depends on EXPERIMENTAL
589 select BOOT_ELF32
590 select DMA_COHERENT
130e2fb7 591 select NR_CPUS_DEFAULT_2
5e83d430
RB
592 select SIBYTE_SB1250
593 select SWAP_IO_SPACE
7cf8053b 594 select SYS_HAS_CPU_SB1
5e83d430 595 select SYS_SUPPORTS_BIG_ENDIAN
5e83d430 596 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 597
ade299d8
YY
598config SIBYTE_BIGSUR
599 bool "Sibyte BCM91480B-BigSur"
5e83d430
RB
600 select BOOT_ELF32
601 select DMA_COHERENT
ade299d8 602 select NR_CPUS_DEFAULT_4
ade299d8 603 select SIBYTE_BCM1x80
5e83d430 604 select SWAP_IO_SPACE
7cf8053b 605 select SYS_HAS_CPU_SB1
5e83d430 606 select SYS_SUPPORTS_BIG_ENDIAN
651194f8 607 select SYS_SUPPORTS_HIGHMEM
5e83d430 608 select SYS_SUPPORTS_LITTLE_ENDIAN
cce335ae 609 select ZONE_DMA32 if 64BIT
1da177e4 610
14b36af4
TB
611config SNI_RM
612 bool "SNI RM200/300/400"
4a0312fc
TB
613 select ARC if CPU_LITTLE_ENDIAN
614 select ARC32 if CPU_LITTLE_ENDIAN
231a35d3 615 select SNIPROM if CPU_BIG_ENDIAN
61ed242d 616 select ARCH_MAY_HAVE_PC_FDC
1da177e4 617 select BOOT_ELF32
42f77542 618 select CEVT_R4K
940f6b48 619 select CSRC_R4K
e2defae5 620 select DEFAULT_SGI_PARTITION if CPU_BIG_ENDIAN
1da177e4
LT
621 select DMA_NONCOHERENT
622 select GENERIC_ISA_DMA
5e83d430 623 select HW_HAS_EISA
1da177e4 624 select HW_HAS_PCI
c066a32a 625 select IRQ_CPU
d865bea4 626 select I8253
1da177e4
LT
627 select I8259
628 select ISA
4a0312fc 629 select SWAP_IO_SPACE if CPU_BIG_ENDIAN
7cf8053b 630 select SYS_HAS_CPU_R4X00
4a0312fc 631 select SYS_HAS_CPU_R5000
c066a32a 632 select SYS_HAS_CPU_R10000
4a0312fc 633 select R5000_CPU_SCACHE
36a88530 634 select SYS_HAS_EARLY_PRINTK
ed5ba2fb
YY
635 select SYS_SUPPORTS_32BIT_KERNEL
636 select SYS_SUPPORTS_64BIT_KERNEL if EXPERIMENTAL
4a0312fc 637 select SYS_SUPPORTS_BIG_ENDIAN
797798c1 638 select SYS_SUPPORTS_HIGHMEM
5e83d430 639 select SYS_SUPPORTS_LITTLE_ENDIAN
1da177e4 640 help
14b36af4
TB
641 The SNI RM200/300/400 are MIPS-based machines manufactured by
642 Siemens Nixdorf Informationssysteme (SNI), parent company of Pyramid
1da177e4
LT
643 Technology and now in turn merged with Fujitsu. Say Y here to
644 support this machine type.
645
edcaf1a6
AN
646config MACH_TX39XX
647 bool "Toshiba TX39 series based machines"
5e83d430 648
edcaf1a6
AN
649config MACH_TX49XX
650 bool "Toshiba TX49 series based machines"
5e83d430 651
73b4390f
RB
652config MIKROTIK_RB532
653 bool "Mikrotik RB532 boards"
654 select CEVT_R4K
655 select CSRC_R4K
656 select DMA_NONCOHERENT
73b4390f
RB
657 select HW_HAS_PCI
658 select IRQ_CPU
659 select SYS_HAS_CPU_MIPS32_R1
660 select SYS_SUPPORTS_32BIT_KERNEL
661 select SYS_SUPPORTS_LITTLE_ENDIAN
662 select SWAP_IO_SPACE
663 select BOOT_RAW
d888e25b 664 select ARCH_REQUIRE_GPIOLIB
73b4390f
RB
665 help
666 Support the Mikrotik(tm) RouterBoard 532 series,
667 based on the IDT RC32434 SoC.
668
ade299d8
YY
669config WR_PPMC
670 bool "Wind River PPMC board"
42f77542 671 select CEVT_R4K
940f6b48 672 select CSRC_R4K
ade299d8
YY
673 select IRQ_CPU
674 select BOOT_ELF32
675 select DMA_NONCOHERENT
676 select HW_HAS_PCI
677 select PCI_GT64XXX_PCI0
678 select SWAP_IO_SPACE
679 select SYS_HAS_CPU_MIPS32_R1
680 select SYS_HAS_CPU_MIPS32_R2
681 select SYS_HAS_CPU_MIPS64_R1
682 select SYS_HAS_CPU_NEVADA
683 select SYS_HAS_CPU_RM7000
684 select SYS_SUPPORTS_32BIT_KERNEL
685 select SYS_SUPPORTS_64BIT_KERNEL
686 select SYS_SUPPORTS_BIG_ENDIAN
687 select SYS_SUPPORTS_LITTLE_ENDIAN
688 help
689 This enables support for the Wind River MIPS32 4KC PPMC evaluation
690 board, which is based on GT64120 bridge chip.
691
a86c7f72 692config CAVIUM_OCTEON_SIMULATOR
c9d89d97 693 bool "Cavium Networks Octeon Simulator"
a86c7f72
DD
694 select CEVT_R4K
695 select 64BIT_PHYS_ADDR
696 select DMA_COHERENT
697 select SYS_SUPPORTS_64BIT_KERNEL
698 select SYS_SUPPORTS_BIG_ENDIAN
699 select SYS_SUPPORTS_HIGHMEM
773cb77d 700 select SYS_SUPPORTS_HOTPLUG_CPU
5e683389 701 select SYS_HAS_CPU_CAVIUM_OCTEON
a86c7f72
DD
702 help
703 The Octeon simulator is software performance model of the Cavium
704 Octeon Processor. It supports simulating Octeon processors on x86
705 hardware.
706
707config CAVIUM_OCTEON_REFERENCE_BOARD
c9d89d97 708 bool "Cavium Networks Octeon reference board"
a86c7f72
DD
709 select CEVT_R4K
710 select 64BIT_PHYS_ADDR
711 select DMA_COHERENT
712 select SYS_SUPPORTS_64BIT_KERNEL
713 select SYS_SUPPORTS_BIG_ENDIAN
714 select SYS_SUPPORTS_HIGHMEM
773cb77d 715 select SYS_SUPPORTS_HOTPLUG_CPU
a86c7f72 716 select SYS_HAS_EARLY_PRINTK
5e683389 717 select SYS_HAS_CPU_CAVIUM_OCTEON
a86c7f72 718 select SWAP_IO_SPACE
e8635b48
DD
719 select HW_HAS_PCI
720 select ARCH_SUPPORTS_MSI
f00e001e 721 select ZONE_DMA32
340fbb8b
DD
722 select USB_ARCH_HAS_OHCI
723 select USB_ARCH_HAS_EHCI
a86c7f72
DD
724 help
725 This option supports all of the Octeon reference boards from Cavium
726 Networks. It builds a kernel that dynamically determines the Octeon
727 CPU type and supports all known board reference implementations.
728 Some of the supported boards are:
729 EBT3000
730 EBH3000
731 EBH3100
732 Thunder
733 Kodama
734 Hikari
735 Say Y here for most Octeon reference boards.
736
5e83d430 737endchoice
1da177e4 738
e8c7c482 739source "arch/mips/alchemy/Kconfig"
d4a67d9d 740source "arch/mips/ath79/Kconfig"
e7300d04 741source "arch/mips/bcm63xx/Kconfig"
5e83d430 742source "arch/mips/jazz/Kconfig"
5ebabe59 743source "arch/mips/jz4740/Kconfig"
1f21d2bd 744source "arch/mips/lasat/Kconfig"
5e83d430 745source "arch/mips/pmc-sierra/Kconfig"
a3a0f8c8 746source "arch/mips/powertv/Kconfig"
29c48699 747source "arch/mips/sgi-ip27/Kconfig"
38b18f72 748source "arch/mips/sibyte/Kconfig"
22b1d707 749source "arch/mips/txx9/Kconfig"
5e83d430 750source "arch/mips/vr41xx/Kconfig"
a86c7f72 751source "arch/mips/cavium-octeon/Kconfig"
85749d24 752source "arch/mips/loongson/Kconfig"
38b18f72 753
5e83d430
RB
754endmenu
755
1da177e4
LT
756config RWSEM_GENERIC_SPINLOCK
757 bool
758 default y
759
760config RWSEM_XCHGADD_ALGORITHM
761 bool
762
f0d1b0b3
DH
763config ARCH_HAS_ILOG2_U32
764 bool
765 default n
766
767config ARCH_HAS_ILOG2_U64
768 bool
769 default n
770
00a58253
RB
771config ARCH_SUPPORTS_OPROFILE
772 bool
773 default y if !MIPS_MT_SMTC
774
3c9ee7ef
AM
775config GENERIC_FIND_NEXT_BIT
776 bool
777 default y
778
779config GENERIC_HWEIGHT
780 bool
781 default y
782
1da177e4
LT
783config GENERIC_CALIBRATE_DELAY
784 bool
785 default y
786
7bcf7717
RB
787config GENERIC_CLOCKEVENTS
788 bool
789 default y
790
f5ff0a28
RB
791config GENERIC_CMOS_UPDATE
792 bool
793 default y
794
ae1e9130 795config SCHED_OMIT_FRAME_POINTER
1cc89038
AN
796 bool
797 default y
798
1da177e4
LT
799#
800# Select some configuration options automatically based on user selections.
801#
802config ARC
803 bool
1da177e4 804
61ed242d
RB
805config ARCH_MAY_HAVE_PC_FDC
806 bool
807
9267a30d
MSJ
808config BOOT_RAW
809 bool
810
217dd11e
RB
811config CEVT_BCM1480
812 bool
813
6457d9fc
YY
814config CEVT_DS1287
815 bool
816
1097c6ac
YY
817config CEVT_GT641XX
818 bool
819
779e7d41
ML
820config CEVT_R4K_LIB
821 bool
822
42f77542 823config CEVT_R4K
779e7d41 824 select CEVT_R4K_LIB
42f77542
RB
825 bool
826
217dd11e
RB
827config CEVT_SB1250
828 bool
829
229f773e
AN
830config CEVT_TXX9
831 bool
832
217dd11e
RB
833config CSRC_BCM1480
834 bool
835
4247417d
YY
836config CSRC_IOASIC
837 bool
838
a3a0f8c8
DV
839config CSRC_POWERTV
840 bool
841
779e7d41
ML
842config CSRC_R4K_LIB
843 bool
844
940f6b48 845config CSRC_R4K
779e7d41 846 select CSRC_R4K_LIB
940f6b48
RB
847 bool
848
217dd11e
RB
849config CSRC_SB1250
850 bool
851
a9aec7fe
AN
852config GPIO_TXX9
853 select GENERIC_GPIO
7444a72e 854 select ARCH_REQUIRE_GPIOLIB
a9aec7fe
AN
855 bool
856
df78b5c8
AJ
857config CFE
858 bool
859
4ce588cd 860config DMA_COHERENT
1da177e4
LT
861 bool
862
4ce588cd
RB
863config DMA_NONCOHERENT
864 bool
e1e02b32 865 select NEED_DMA_MAP_STATE
4ce588cd 866
e1e02b32 867config NEED_DMA_MAP_STATE
1da177e4
LT
868 bool
869
36a88530 870config SYS_HAS_EARLY_PRINTK
1da177e4 871 bool
1da177e4 872
dbb74540 873config HOTPLUG_CPU
1b2bc75c
RB
874 bool "Support for hot-pluggable CPUs"
875 depends on SMP && HOTPLUG && SYS_SUPPORTS_HOTPLUG_CPU
876 help
877 Say Y here to allow turning CPUs off and on. CPUs can be
878 controlled through /sys/devices/system/cpu.
879 (Note: power management support will enable this option
880 automatically on SMP systems. )
881 Say N if you want to disable CPU hotplug.
882
883config SYS_SUPPORTS_HOTPLUG_CPU
dbb74540 884 bool
dbb74540 885
1da177e4
LT
886config I8259
887 bool
1da177e4 888
1da177e4
LT
889config MIPS_BONITO64
890 bool
1da177e4
LT
891
892config MIPS_MSC
893 bool
1da177e4 894
1f21d2bd
BM
895config MIPS_NILE4
896 bool
897
1da177e4
LT
898config MIPS_DISABLE_OBSOLETE_IDE
899 bool
900
39b8d525
RB
901config SYNC_R4K
902 bool
903
487d70d0
GJ
904config MIPS_MACHINE
905 def_bool n
906
d388d685
MR
907config NO_IOPORT
908 def_bool n
909
8313da30
RB
910config GENERIC_ISA_DMA
911 bool
912 select ZONE_DMA if GENERIC_ISA_DMA_SUPPORT_BROKEN=n
a35bee8a 913 select ISA_DMA_API
8313da30 914
aa414dff
RB
915config GENERIC_ISA_DMA_SUPPORT_BROKEN
916 bool
8313da30 917 select GENERIC_ISA_DMA
aa414dff 918
a35bee8a
NK
919config ISA_DMA_API
920 bool
921
09663335
YY
922config GENERIC_GPIO
923 bool
924
5e83d430 925#
3cb2fccc 926# Endianess selection. Sufficiently obscure so many users don't know what to
5e83d430
RB
927# answer,so we try hard to limit the available choices. Also the use of a
928# choice statement should be more obvious to the user.
929#
930choice
931 prompt "Endianess selection"
1da177e4
LT
932 help
933 Some MIPS machines can be configured for either little or big endian
5e83d430 934 byte order. These modes require different kernels and a different
3cb2fccc 935 Linux distribution. In general there is one preferred byteorder for a
5e83d430 936 particular system but some systems are just as commonly used in the
3dde6ad8 937 one or the other endianness.
5e83d430
RB
938
939config CPU_BIG_ENDIAN
940 bool "Big endian"
941 depends on SYS_SUPPORTS_BIG_ENDIAN
942
943config CPU_LITTLE_ENDIAN
944 bool "Little endian"
945 depends on SYS_SUPPORTS_LITTLE_ENDIAN
946 help
947
948endchoice
949
22b0763a
DD
950config EXPORT_UASM
951 bool
952
2116245e
RB
953config SYS_SUPPORTS_APM_EMULATION
954 bool
955
5e83d430
RB
956config SYS_SUPPORTS_BIG_ENDIAN
957 bool
958
959config SYS_SUPPORTS_LITTLE_ENDIAN
960 bool
1da177e4 961
9cffd154
DD
962config SYS_SUPPORTS_HUGETLBFS
963 bool
964 depends on CPU_SUPPORTS_HUGEPAGES && 64BIT
965 default y
966
1da177e4
LT
967config IRQ_CPU
968 bool
969
970config IRQ_CPU_RM7K
971 bool
972
5e83d430
RB
973config IRQ_CPU_RM9K
974 bool
975
9267a30d
MSJ
976config IRQ_MSP_SLP
977 bool
978
979config IRQ_MSP_CIC
980 bool
981
8420fd00
AN
982config IRQ_TXX9
983 bool
984
d5ab1a69
YY
985config IRQ_GT641XX
986 bool
987
39b8d525
RB
988config IRQ_GIC
989 bool
990
a86c7f72
DD
991config IRQ_CPU_OCTEON
992 bool
993
1da177e4
LT
994config MIPS_BOARDS_GEN
995 bool
1da177e4 996
252161ec 997config PCI_GT64XXX_PCI0
1da177e4 998 bool
1da177e4 999
9267a30d
MSJ
1000config NO_EXCEPT_FILL
1001 bool
1002
663c3d90 1003config MIPS_RM9122
1004 bool
1005 select SERIAL_RM9000
663c3d90 1006
a83860c2
RB
1007config SOC_EMMA2RH
1008 bool
1009 select CEVT_R4K
1010 select CSRC_R4K
1011 select DMA_NONCOHERENT
1012 select IRQ_CPU
1013 select SWAP_IO_SPACE
1014 select SYS_HAS_CPU_R5500
1015 select SYS_SUPPORTS_32BIT_KERNEL
1016 select SYS_SUPPORTS_64BIT_KERNEL
1017 select SYS_SUPPORTS_BIG_ENDIAN
1018
edb6310a
DL
1019config SOC_PNX833X
1020 bool
1021 select CEVT_R4K
1022 select CSRC_R4K
1023 select IRQ_CPU
1024 select DMA_NONCOHERENT
1025 select SYS_HAS_CPU_MIPS32_R2
1026 select SYS_SUPPORTS_32BIT_KERNEL
1027 select SYS_SUPPORTS_LITTLE_ENDIAN
1028 select SYS_SUPPORTS_BIG_ENDIAN
edb6310a
DL
1029 select GENERIC_GPIO
1030 select CPU_MIPSR2_IRQ_VI
1031
1032config SOC_PNX8335
1033 bool
1034 select SOC_PNX833X
1035
bdf21b18
PP
1036config PNX8550
1037 bool
1038 select SOC_PNX8550
1039
1040config SOC_PNX8550
1041 bool
bdf21b18
PP
1042 select DMA_NONCOHERENT
1043 select HW_HAS_PCI
b8c2a77c 1044 select SYS_HAS_CPU_MIPS32_R1
36a88530 1045 select SYS_HAS_EARLY_PRINTK
7cf8053b 1046 select SYS_SUPPORTS_32BIT_KERNEL
4ead1681 1047 select GENERIC_GPIO
bdf21b18 1048
1da177e4
LT
1049config SWAP_IO_SPACE
1050 bool
1051
663c3d90 1052config SERIAL_RM9000
1053 bool
1054
e2defae5
TB
1055config SGI_HAS_INDYDOG
1056 bool
1057
5b438c44
TB
1058config SGI_HAS_HAL2
1059 bool
1060
e2defae5
TB
1061config SGI_HAS_SEEQ
1062 bool
1063
1064config SGI_HAS_WD93
1065 bool
1066
1067config SGI_HAS_ZILOG
1068 bool
1069
1070config SGI_HAS_I8042
1071 bool
1072
1073config DEFAULT_SGI_PARTITION
1074 bool
1075
5e83d430
RB
1076config ARC32
1077 bool
1078
231a35d3
TB
1079config SNIPROM
1080 bool
1081
1da177e4
LT
1082config BOOT_ELF32
1083 bool
1da177e4
LT
1084
1085config MIPS_L1_CACHE_SHIFT
1086 int
c7088755 1087 default "4" if MACH_DECSTATION || MIKROTIK_RB532 || PMC_MSP4200_EVAL
0db2b74e 1088 default "6" if MIPS_CPU_SCACHE
a86c7f72 1089 default "7" if SGI_IP22 || SGI_IP27 || SGI_IP28 || SNI_RM || CPU_CAVIUM_OCTEON
1da177e4
LT
1090 default "5"
1091
1da177e4
LT
1092config HAVE_STD_PC_SERIAL_PORT
1093 bool
1094
1da177e4
LT
1095config ARC_CONSOLE
1096 bool "ARC console support"
e2defae5 1097 depends on SGI_IP22 || SGI_IP28 || (SNI_RM && CPU_LITTLE_ENDIAN)
1da177e4
LT
1098
1099config ARC_MEMORY
1100 bool
14b36af4 1101 depends on MACH_JAZZ || SNI_RM || SGI_IP32
1da177e4
LT
1102 default y
1103
1104config ARC_PROMLIB
1105 bool
e2defae5 1106 depends on MACH_JAZZ || SNI_RM || SGI_IP22 || SGI_IP28 || SGI_IP32
1da177e4
LT
1107 default y
1108
1109config ARC64
1110 bool
1da177e4
LT
1111
1112config BOOT_ELF64
1113 bool
1da177e4 1114
1da177e4
LT
1115menu "CPU selection"
1116
1117choice
1118 prompt "CPU type"
1119 default CPU_R4X00
1120
3702bba5
WZ
1121config CPU_LOONGSON2E
1122 bool "Loongson 2E"
1123 depends on SYS_HAS_CPU_LOONGSON2E
1124 select CPU_LOONGSON2
2a21c730
FZ
1125 help
1126 The Loongson 2E processor implements the MIPS III instruction set
1127 with many extensions.
1128
6f7a251a
WZ
1129 It has an internal FPGA northbridge, which is compatiable to
1130 bonito64.
1131
1132config CPU_LOONGSON2F
1133 bool "Loongson 2F"
1134 depends on SYS_HAS_CPU_LOONGSON2F
1135 select CPU_LOONGSON2
c197da91
AP
1136 select GENERIC_GPIO
1137 select ARCH_REQUIRE_GPIOLIB
6f7a251a
WZ
1138 help
1139 The Loongson 2F processor implements the MIPS III instruction set
1140 with many extensions.
1141
1142 Loongson2F have built-in DDR2 and PCIX controller. The PCIX controller
1143 have a similar programming interface with FPGA northbridge used in
1144 Loongson2E.
1145
6e760c8d
RB
1146config CPU_MIPS32_R1
1147 bool "MIPS32 Release 1"
7cf8053b 1148 depends on SYS_HAS_CPU_MIPS32_R1
6e760c8d 1149 select CPU_HAS_PREFETCH
797798c1 1150 select CPU_SUPPORTS_32BIT_KERNEL
ec28f306 1151 select CPU_SUPPORTS_HIGHMEM
1e5f1caa 1152 help
5e83d430 1153 Choose this option to build a kernel for release 1 or later of the
1e5f1caa
RB
1154 MIPS32 architecture. Most modern embedded systems with a 32-bit
1155 MIPS processor are based on a MIPS32 processor. If you know the
1156 specific type of processor in your system, choose those that one
1157 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1158 Release 2 of the MIPS32 architecture is available since several
1159 years so chances are you even have a MIPS32 Release 2 processor
1160 in which case you should choose CPU_MIPS32_R2 instead for better
1161 performance.
1162
1163config CPU_MIPS32_R2
1164 bool "MIPS32 Release 2"
7cf8053b 1165 depends on SYS_HAS_CPU_MIPS32_R2
1e5f1caa 1166 select CPU_HAS_PREFETCH
797798c1 1167 select CPU_SUPPORTS_32BIT_KERNEL
ec28f306 1168 select CPU_SUPPORTS_HIGHMEM
6e760c8d 1169 help
5e83d430 1170 Choose this option to build a kernel for release 2 or later of the
6e760c8d
RB
1171 MIPS32 architecture. Most modern embedded systems with a 32-bit
1172 MIPS processor are based on a MIPS32 processor. If you know the
1173 specific type of processor in your system, choose those that one
1174 otherwise CPU_MIPS32_R1 is a safe bet for any MIPS32 system.
1175
1176config CPU_MIPS64_R1
1177 bool "MIPS64 Release 1"
7cf8053b 1178 depends on SYS_HAS_CPU_MIPS64_R1
797798c1 1179 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1180 select CPU_SUPPORTS_32BIT_KERNEL
1181 select CPU_SUPPORTS_64BIT_KERNEL
ec28f306 1182 select CPU_SUPPORTS_HIGHMEM
9cffd154 1183 select CPU_SUPPORTS_HUGEPAGES
6e760c8d
RB
1184 help
1185 Choose this option to build a kernel for release 1 or later of the
1186 MIPS64 architecture. Many modern embedded systems with a 64-bit
1187 MIPS processor are based on a MIPS64 processor. If you know the
1188 specific type of processor in your system, choose those that one
1189 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1e5f1caa
RB
1190 Release 2 of the MIPS64 architecture is available since several
1191 years so chances are you even have a MIPS64 Release 2 processor
1192 in which case you should choose CPU_MIPS64_R2 instead for better
1193 performance.
1194
1195config CPU_MIPS64_R2
1196 bool "MIPS64 Release 2"
7cf8053b 1197 depends on SYS_HAS_CPU_MIPS64_R2
797798c1 1198 select CPU_HAS_PREFETCH
1e5f1caa
RB
1199 select CPU_SUPPORTS_32BIT_KERNEL
1200 select CPU_SUPPORTS_64BIT_KERNEL
ec28f306 1201 select CPU_SUPPORTS_HIGHMEM
9cffd154 1202 select CPU_SUPPORTS_HUGEPAGES
1e5f1caa
RB
1203 help
1204 Choose this option to build a kernel for release 2 or later of the
1205 MIPS64 architecture. Many modern embedded systems with a 64-bit
1206 MIPS processor are based on a MIPS64 processor. If you know the
1207 specific type of processor in your system, choose those that one
1208 otherwise CPU_MIPS64_R1 is a safe bet for any MIPS64 system.
1da177e4
LT
1209
1210config CPU_R3000
1211 bool "R3000"
7cf8053b 1212 depends on SYS_HAS_CPU_R3000
f7062ddb 1213 select CPU_HAS_WB
ed5ba2fb 1214 select CPU_SUPPORTS_32BIT_KERNEL
797798c1 1215 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1216 help
1217 Please make sure to pick the right CPU type. Linux/MIPS is not
1218 designed to be generic, i.e. Kernels compiled for R3000 CPUs will
1219 *not* work on R4000 machines and vice versa. However, since most
1220 of the supported machines have an R4000 (or similar) CPU, R4x00
1221 might be a safe bet. If the resulting kernel does not work,
1222 try to recompile with R3000.
1223
1224config CPU_TX39XX
1225 bool "R39XX"
7cf8053b 1226 depends on SYS_HAS_CPU_TX39XX
ed5ba2fb 1227 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1228
1229config CPU_VR41XX
1230 bool "R41xx"
7cf8053b 1231 depends on SYS_HAS_CPU_VR41XX
ed5ba2fb
YY
1232 select CPU_SUPPORTS_32BIT_KERNEL
1233 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4 1234 help
5e83d430 1235 The options selects support for the NEC VR4100 series of processors.
1da177e4
LT
1236 Only choose this option if you have one of these processors as a
1237 kernel built with this option will not run on any other type of
1238 processor or vice versa.
1239
1240config CPU_R4300
1241 bool "R4300"
7cf8053b 1242 depends on SYS_HAS_CPU_R4300
ed5ba2fb
YY
1243 select CPU_SUPPORTS_32BIT_KERNEL
1244 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1245 help
1246 MIPS Technologies R4300-series processors.
1247
1248config CPU_R4X00
1249 bool "R4x00"
7cf8053b 1250 depends on SYS_HAS_CPU_R4X00
ed5ba2fb
YY
1251 select CPU_SUPPORTS_32BIT_KERNEL
1252 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1253 help
1254 MIPS Technologies R4000-series processors other than 4300, including
1255 the R4000, R4400, R4600, and 4700.
1256
1257config CPU_TX49XX
1258 bool "R49XX"
7cf8053b 1259 depends on SYS_HAS_CPU_TX49XX
de862b48 1260 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1261 select CPU_SUPPORTS_32BIT_KERNEL
1262 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1263
1264config CPU_R5000
1265 bool "R5000"
7cf8053b 1266 depends on SYS_HAS_CPU_R5000
ed5ba2fb
YY
1267 select CPU_SUPPORTS_32BIT_KERNEL
1268 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1269 help
1270 MIPS Technologies R5000-series processors other than the Nevada.
1271
1272config CPU_R5432
1273 bool "R5432"
7cf8053b 1274 depends on SYS_HAS_CPU_R5432
5e83d430
RB
1275 select CPU_SUPPORTS_32BIT_KERNEL
1276 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4 1277
542c1020
SK
1278config CPU_R5500
1279 bool "R5500"
1280 depends on SYS_HAS_CPU_R5500
542c1020
SK
1281 select CPU_SUPPORTS_32BIT_KERNEL
1282 select CPU_SUPPORTS_64BIT_KERNEL
9cffd154 1283 select CPU_SUPPORTS_HUGEPAGES
542c1020
SK
1284 help
1285 NEC VR5500 and VR5500A series processors implement 64-bit MIPS IV
1286 instruction set.
1287
1da177e4
LT
1288config CPU_R6000
1289 bool "R6000"
ed5ba2fb 1290 depends on EXPERIMENTAL
7cf8053b 1291 depends on SYS_HAS_CPU_R6000
ed5ba2fb 1292 select CPU_SUPPORTS_32BIT_KERNEL
1da177e4
LT
1293 help
1294 MIPS Technologies R6000 and R6000A series processors. Note these
c09b47d8 1295 processors are extremely rare and the support for them is incomplete.
1da177e4
LT
1296
1297config CPU_NEVADA
1298 bool "RM52xx"
7cf8053b 1299 depends on SYS_HAS_CPU_NEVADA
ed5ba2fb
YY
1300 select CPU_SUPPORTS_32BIT_KERNEL
1301 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1302 help
1303 QED / PMC-Sierra RM52xx-series ("Nevada") processors.
1304
1305config CPU_R8000
1306 bool "R8000"
ed5ba2fb 1307 depends on EXPERIMENTAL
7cf8053b 1308 depends on SYS_HAS_CPU_R8000
5e83d430 1309 select CPU_HAS_PREFETCH
ed5ba2fb 1310 select CPU_SUPPORTS_64BIT_KERNEL
1da177e4
LT
1311 help
1312 MIPS Technologies R8000 processors. Note these processors are
1313 uncommon and the support for them is incomplete.
1314
1315config CPU_R10000
1316 bool "R10000"
7cf8053b 1317 depends on SYS_HAS_CPU_R10000
5e83d430 1318 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1319 select CPU_SUPPORTS_32BIT_KERNEL
1320 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1321 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1322 help
1323 MIPS Technologies R10000-series processors.
1324
1325config CPU_RM7000
1326 bool "RM7000"
7cf8053b 1327 depends on SYS_HAS_CPU_RM7000
5e83d430 1328 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1329 select CPU_SUPPORTS_32BIT_KERNEL
1330 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1331 select CPU_SUPPORTS_HIGHMEM
1da177e4
LT
1332
1333config CPU_RM9000
1334 bool "RM9000"
7cf8053b 1335 depends on SYS_HAS_CPU_RM9000
5e83d430 1336 select CPU_HAS_PREFETCH
ed5ba2fb
YY
1337 select CPU_SUPPORTS_32BIT_KERNEL
1338 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1339 select CPU_SUPPORTS_HIGHMEM
0004a9df 1340 select WEAK_ORDERING
1da177e4
LT
1341
1342config CPU_SB1
1343 bool "SB1"
7cf8053b 1344 depends on SYS_HAS_CPU_SB1
ed5ba2fb
YY
1345 select CPU_SUPPORTS_32BIT_KERNEL
1346 select CPU_SUPPORTS_64BIT_KERNEL
797798c1 1347 select CPU_SUPPORTS_HIGHMEM
0004a9df 1348 select WEAK_ORDERING
1da177e4 1349
a86c7f72
DD
1350config CPU_CAVIUM_OCTEON
1351 bool "Cavium Octeon processor"
5e683389 1352 depends on SYS_HAS_CPU_CAVIUM_OCTEON
a86c7f72
DD
1353 select IRQ_CPU
1354 select IRQ_CPU_OCTEON
1355 select CPU_HAS_PREFETCH
1356 select CPU_SUPPORTS_64BIT_KERNEL
1357 select SYS_SUPPORTS_SMP
1358 select NR_CPUS_DEFAULT_16
1359 select WEAK_ORDERING
a86c7f72 1360 select CPU_SUPPORTS_HIGHMEM
9cffd154 1361 select CPU_SUPPORTS_HUGEPAGES
a86c7f72
DD
1362 help
1363 The Cavium Octeon processor is a highly integrated chip containing
1364 many ethernet hardware widgets for networking tasks. The processor
1365 can have up to 16 Mips64v2 cores and 8 integrated gigabit ethernets.
1366 Full details can be found at http://www.caviumnetworks.com.
1367
c1c0c461
KC
1368config CPU_BMIPS3300
1369 bool "BMIPS3300"
1370 depends on SYS_HAS_CPU_BMIPS3300
1371 select DMA_NONCOHERENT
1372 select IRQ_CPU
1373 select SWAP_IO_SPACE
1374 select SYS_SUPPORTS_32BIT_KERNEL
1375 select WEAK_ORDERING
1376 help
1377 Broadcom BMIPS3300 processors.
1378
1379config CPU_BMIPS4350
1380 bool "BMIPS4350"
1381 depends on SYS_HAS_CPU_BMIPS4350
1382 select CPU_SUPPORTS_32BIT_KERNEL
1383 select DMA_NONCOHERENT
1384 select IRQ_CPU
1385 select SWAP_IO_SPACE
1386 select SYS_SUPPORTS_SMP
1387 select SYS_SUPPORTS_HOTPLUG_CPU
1388 select WEAK_ORDERING
1389 help
1390 Broadcom BMIPS4350 ("VIPER") processors.
1391
1392config CPU_BMIPS4380
1393 bool "BMIPS4380"
1394 depends on SYS_HAS_CPU_BMIPS4380
1395 select CPU_SUPPORTS_32BIT_KERNEL
1396 select DMA_NONCOHERENT
1397 select IRQ_CPU
1398 select SWAP_IO_SPACE
1399 select SYS_SUPPORTS_SMP
1400 select SYS_SUPPORTS_HOTPLUG_CPU
1401 select WEAK_ORDERING
1402 help
1403 Broadcom BMIPS4380 processors.
1404
1405config CPU_BMIPS5000
1406 bool "BMIPS5000"
1407 depends on SYS_HAS_CPU_BMIPS5000
1408 select CPU_SUPPORTS_32BIT_KERNEL
1409 select CPU_SUPPORTS_HIGHMEM
1410 select DMA_NONCOHERENT
1411 select IRQ_CPU
1412 select SWAP_IO_SPACE
1413 select SYS_SUPPORTS_SMP
1414 select SYS_SUPPORTS_HOTPLUG_CPU
1415 select WEAK_ORDERING
1416 help
1417 Broadcom BMIPS5000 processors.
1418
1da177e4
LT
1419endchoice
1420
622844bf
WZ
1421if CPU_LOONGSON2F
1422config CPU_NOP_WORKAROUNDS
1423 bool
1424
1425config CPU_JUMP_WORKAROUNDS
1426 bool
1427
1428config CPU_LOONGSON2F_WORKAROUNDS
1429 bool "Loongson 2F Workarounds"
1430 default y
1431 select CPU_NOP_WORKAROUNDS
1432 select CPU_JUMP_WORKAROUNDS
1433 help
1434 Loongson 2F01 / 2F02 processors have the NOP & JUMP issues which
1435 require workarounds. Without workarounds the system may hang
1436 unexpectedly. For more information please refer to the gas
1437 -mfix-loongson2f-nop and -mfix-loongson2f-jump options.
1438
1439 Loongson 2F03 and later have fixed these issues and no workarounds
1440 are needed. The workarounds have no significant side effect on them
1441 but may decrease the performance of the system so this option should
1442 be disabled unless the kernel is intended to be run on 2F01 or 2F02
1443 systems.
1444
1445 If unsure, please say Y.
1446endif # CPU_LOONGSON2F
1447
1b93b3c3
WZ
1448config SYS_SUPPORTS_ZBOOT
1449 bool
1450 select HAVE_KERNEL_GZIP
1451 select HAVE_KERNEL_BZIP2
1452 select HAVE_KERNEL_LZMA
fe1d45e0 1453 select HAVE_KERNEL_LZO
1b93b3c3
WZ
1454
1455config SYS_SUPPORTS_ZBOOT_UART16550
1456 bool
1457 select SYS_SUPPORTS_ZBOOT
1458
3702bba5
WZ
1459config CPU_LOONGSON2
1460 bool
1461 select CPU_SUPPORTS_32BIT_KERNEL
1462 select CPU_SUPPORTS_64BIT_KERNEL
1463 select CPU_SUPPORTS_HIGHMEM
1464
1465config SYS_HAS_CPU_LOONGSON2E
2a21c730
FZ
1466 bool
1467
6f7a251a
WZ
1468config SYS_HAS_CPU_LOONGSON2F
1469 bool
55045ff5
WZ
1470 select CPU_SUPPORTS_CPUFREQ
1471 select CPU_SUPPORTS_ADDRWINCFG if 64BIT
22f1fdfd 1472 select CPU_SUPPORTS_UNCACHED_ACCELERATED
6f7a251a 1473
7cf8053b
RB
1474config SYS_HAS_CPU_MIPS32_R1
1475 bool
1476
1477config SYS_HAS_CPU_MIPS32_R2
1478 bool
1479
1480config SYS_HAS_CPU_MIPS64_R1
1481 bool
1482
1483config SYS_HAS_CPU_MIPS64_R2
1484 bool
1485
1486config SYS_HAS_CPU_R3000
1487 bool
1488
1489config SYS_HAS_CPU_TX39XX
1490 bool
1491
1492config SYS_HAS_CPU_VR41XX
1493 bool
1494
1495config SYS_HAS_CPU_R4300
1496 bool
1497
1498config SYS_HAS_CPU_R4X00
1499 bool
1500
1501config SYS_HAS_CPU_TX49XX
1502 bool
1503
1504config SYS_HAS_CPU_R5000
1505 bool
1506
1507config SYS_HAS_CPU_R5432
1508 bool
1509
542c1020
SK
1510config SYS_HAS_CPU_R5500
1511 bool
1512
7cf8053b
RB
1513config SYS_HAS_CPU_R6000
1514 bool
1515
1516config SYS_HAS_CPU_NEVADA
1517 bool
1518
1519config SYS_HAS_CPU_R8000
1520 bool
1521
1522config SYS_HAS_CPU_R10000
1523 bool
1524
1525config SYS_HAS_CPU_RM7000
1526 bool
1527
1528config SYS_HAS_CPU_RM9000
1529 bool
1530
1531config SYS_HAS_CPU_SB1
1532 bool
1533
5e683389
DD
1534config SYS_HAS_CPU_CAVIUM_OCTEON
1535 bool
1536
c1c0c461
KC
1537config SYS_HAS_CPU_BMIPS3300
1538 bool
1539
1540config SYS_HAS_CPU_BMIPS4350
1541 bool
1542
1543config SYS_HAS_CPU_BMIPS4380
1544 bool
1545
1546config SYS_HAS_CPU_BMIPS5000
1547 bool
1548
17099b11
RB
1549#
1550# CPU may reorder R->R, R->W, W->R, W->W
1551# Reordering beyond LL and SC is handled in WEAK_REORDERING_BEYOND_LLSC
1552#
0004a9df
RB
1553config WEAK_ORDERING
1554 bool
17099b11
RB
1555
1556#
1557# CPU may reorder reads and writes beyond LL/SC
1558# CPU may reorder R->LL, R->LL, W->LL, W->LL, R->SC, R->SC, W->SC, W->SC
1559#
1560config WEAK_REORDERING_BEYOND_LLSC
1561 bool
5e83d430
RB
1562endmenu
1563
1564#
c09b47d8 1565# These two indicate any level of the MIPS32 and MIPS64 architecture
5e83d430
RB
1566#
1567config CPU_MIPS32
1568 bool
1569 default y if CPU_MIPS32_R1 || CPU_MIPS32_R2
1570
1571config CPU_MIPS64
1572 bool
1573 default y if CPU_MIPS64_R1 || CPU_MIPS64_R2
1574
1575#
c09b47d8 1576# These two indicate the revision of the architecture, either Release 1 or Release 2
5e83d430
RB
1577#
1578config CPU_MIPSR1
1579 bool
1580 default y if CPU_MIPS32_R1 || CPU_MIPS64_R1
1581
1582config CPU_MIPSR2
1583 bool
a86c7f72 1584 default y if CPU_MIPS32_R2 || CPU_MIPS64_R2 || CPU_CAVIUM_OCTEON
5e83d430
RB
1585
1586config SYS_SUPPORTS_32BIT_KERNEL
1587 bool
1588config SYS_SUPPORTS_64BIT_KERNEL
1589 bool
1590config CPU_SUPPORTS_32BIT_KERNEL
1591 bool
1592config CPU_SUPPORTS_64BIT_KERNEL
1593 bool
55045ff5
WZ
1594config CPU_SUPPORTS_CPUFREQ
1595 bool
1596config CPU_SUPPORTS_ADDRWINCFG
1597 bool
9cffd154
DD
1598config CPU_SUPPORTS_HUGEPAGES
1599 bool
22f1fdfd
WZ
1600config CPU_SUPPORTS_UNCACHED_ACCELERATED
1601 bool
82622284
DD
1602config MIPS_PGD_C0_CONTEXT
1603 bool
1604 default y if 64BIT && CPU_MIPSR2
5e83d430 1605
8192c9ea
DD
1606#
1607# Set to y for ptrace access to watch registers.
1608#
1609config HARDWARE_WATCHPOINTS
1610 bool
f839490a 1611 default y if CPU_MIPSR1 || CPU_MIPSR2
8192c9ea 1612
5e83d430
RB
1613menu "Kernel type"
1614
1615choice
1616
1617 prompt "Kernel code model"
1618 help
1619 You should only select this option if you have a workload that
1620 actually benefits from 64-bit processing or if your machine has
1621 large memory. You will only be presented a single option in this
1622 menu if your system does not support both 32-bit and 64-bit kernels.
1623
1624config 32BIT
1625 bool "32-bit kernel"
1626 depends on CPU_SUPPORTS_32BIT_KERNEL && SYS_SUPPORTS_32BIT_KERNEL
1627 select TRAD_SIGNALS
1628 help
1629 Select this option if you want to build a 32-bit kernel.
1630config 64BIT
1631 bool "64-bit kernel"
1632 depends on CPU_SUPPORTS_64BIT_KERNEL && SYS_SUPPORTS_64BIT_KERNEL
dbda6ac0 1633 select HAVE_SYSCALL_WRAPPERS
5e83d430
RB
1634 help
1635 Select this option if you want to build a 64-bit kernel.
1636
1637endchoice
1638
1da177e4
LT
1639choice
1640 prompt "Kernel page size"
1641 default PAGE_SIZE_4KB
1642
1643config PAGE_SIZE_4KB
1644 bool "4kB"
315fe625 1645 depends on !CPU_LOONGSON2
1da177e4
LT
1646 help
1647 This option select the standard 4kB Linux page size. On some
1648 R3000-family processors this is the only available page size. Using
1649 4kB page size will minimize memory consumption and is therefore
1650 recommended for low memory systems.
1651
1652config PAGE_SIZE_8KB
1653 bool "8kB"
c52399be 1654 depends on (EXPERIMENTAL && CPU_R8000) || CPU_CAVIUM_OCTEON
1da177e4
LT
1655 help
1656 Using 8kB page size will result in higher performance kernel at
1657 the price of higher memory consumption. This option is available
c52399be
RB
1658 only on R8000 and cnMIPS processors. Note that you will need a
1659 suitable Linux distribution to support this.
1da177e4
LT
1660
1661config PAGE_SIZE_16KB
1662 bool "16kB"
714bfad6 1663 depends on !CPU_R3000 && !CPU_TX39XX
1da177e4
LT
1664 help
1665 Using 16kB page size will result in higher performance kernel at
1666 the price of higher memory consumption. This option is available on
714bfad6
RB
1667 all non-R3000 family processors. Note that you will need a suitable
1668 Linux distribution to support this.
1da177e4 1669
c52399be
RB
1670config PAGE_SIZE_32KB
1671 bool "32kB"
1672 depends on CPU_CAVIUM_OCTEON
1673 help
1674 Using 32kB page size will result in higher performance kernel at
1675 the price of higher memory consumption. This option is available
1676 only on cnMIPS cores. Note that you will need a suitable Linux
1677 distribution to support this.
1678
1da177e4
LT
1679config PAGE_SIZE_64KB
1680 bool "64kB"
1681 depends on EXPERIMENTAL && !CPU_R3000 && !CPU_TX39XX
1682 help
1683 Using 64kB page size will result in higher performance kernel at
1684 the price of higher memory consumption. This option is available on
1685 all non-R3000 family processor. Not that at the time of this
714bfad6 1686 writing this option is still high experimental.
1da177e4
LT
1687
1688endchoice
1689
c9bace7c
DD
1690config FORCE_MAX_ZONEORDER
1691 int "Maximum zone order"
1692 range 13 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB
1693 default "13" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_32KB
1694 range 12 64 if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB
1695 default "12" if SYS_SUPPORTS_HUGETLBFS && PAGE_SIZE_16KB
1696 range 11 64
1697 default "11"
1698 help
1699 The kernel memory allocator divides physically contiguous memory
1700 blocks into "zones", where each zone is a power of two number of
1701 pages. This option selects the largest power of two that the kernel
1702 keeps in the memory allocator. If you need to allocate very large
1703 blocks of physically contiguous memory, then you may need to
1704 increase this value.
1705
1706 This config option is actually maximum order plus one. For example,
1707 a value of 11 means that the largest free memory block is 2^10 pages.
1708
1709 The page size is not necessarily 4KB. Keep this in mind
1710 when choosing a value for this option.
1711
1da177e4
LT
1712config BOARD_SCACHE
1713 bool
1714
1715config IP22_CPU_SCACHE
1716 bool
1717 select BOARD_SCACHE
1718
9318c51a
CD
1719#
1720# Support for a MIPS32 / MIPS64 style S-caches
1721#
1722config MIPS_CPU_SCACHE
1723 bool
1724 select BOARD_SCACHE
1725
1da177e4
LT
1726config R5000_CPU_SCACHE
1727 bool
1728 select BOARD_SCACHE
1729
1730config RM7000_CPU_SCACHE
1731 bool
1732 select BOARD_SCACHE
1733
1734config SIBYTE_DMA_PAGEOPS
1735 bool "Use DMA to clear/copy pages"
1736 depends on CPU_SB1
1737 help
1738 Instead of using the CPU to zero and copy pages, use a Data Mover
1739 channel. These DMA channels are otherwise unused by the standard
1740 SiByte Linux port. Seems to give a small performance benefit.
1741
1742config CPU_HAS_PREFETCH
c8094b53 1743 bool
1da177e4 1744
340ee4b9
RB
1745choice
1746 prompt "MIPS MT options"
f41ae0b2
RB
1747
1748config MIPS_MT_DISABLED
1749 bool "Disable multithreading support."
1750 help
1751 Use this option if your workload can't take advantage of
1752 MIPS hardware multithreading support. On systems that don't have
1753 the option of an MT-enabled processor this option will be the only
1754 option in this menu.
340ee4b9 1755
59d6ab86
RB
1756config MIPS_MT_SMP
1757 bool "Use 1 TC on each available VPE for SMP"
f41ae0b2 1758 depends on SYS_SUPPORTS_MULTITHREADING
f7062ddb 1759 select CPU_MIPSR2_IRQ_VI
d725cf38 1760 select CPU_MIPSR2_IRQ_EI
f41ae0b2 1761 select MIPS_MT
f510aa3b 1762 select NR_CPUS_DEFAULT_2
41c594ab 1763 select SMP
0ab7aefc 1764 select SYS_SUPPORTS_SCHED_SMT if SMP
73b76c78 1765 select SYS_SUPPORTS_SMP
87353d8a 1766 select SMP_UP
f41ae0b2 1767 help
25f12b33
RB
1768 This is a kernel model which is known a VSMP but lately has been
1769 marketesed into SMVP.
1770 Virtual SMP uses the processor's VPEs to implement virtual
1771 processors. In currently available configuration of the 34K processor
1772 this allows for a dual processor. Both processors will share the same
1773 primary caches; each will obtain the half of the TLB for it's own
1774 exclusive use. For a layman this model can be described as similar to
1775 what Intel calls Hyperthreading.
1776
1777 For further information see http://www.linux-mips.org/wiki/34K#VSMP
41c594ab 1778
59d6ab86
RB
1779config MIPS_MT_SMTC
1780 bool "SMTC: Use all TCs on all VPEs for SMP"
1781 depends on CPU_MIPS32_R2
1782 #depends on CPU_MIPS64_R2 # once there is hardware ...
f41ae0b2
RB
1783 depends on SYS_SUPPORTS_MULTITHREADING
1784 select CPU_MIPSR2_IRQ_VI
d725cf38 1785 select CPU_MIPSR2_IRQ_EI
f41ae0b2 1786 select MIPS_MT
130e2fb7 1787 select NR_CPUS_DEFAULT_8
340ee4b9 1788 select SMP
73b76c78 1789 select SYS_SUPPORTS_SMP
87353d8a 1790 select SMP_UP
f41ae0b2 1791 help
59d6ab86
RB
1792 This is a kernel model which is known a SMTC or lately has been
1793 marketesed into SMVP.
25f12b33
RB
1794 is presenting the available TC's of the core as processors to Linux.
1795 On currently available 34K processors this means a Linux system will
1796 see up to 5 processors. The implementation of the SMTC kernel differs
1797 significantly from VSMP and cannot efficiently coexist in the same
1798 kernel binary so the choice between VSMP and SMTC is a compile time
1799 decision.
1800
1801 For further information see http://www.linux-mips.org/wiki/34K#SMTC
340ee4b9 1802
340ee4b9
RB
1803endchoice
1804
f41ae0b2
RB
1805config MIPS_MT
1806 bool
1807
0ab7aefc
RB
1808config SCHED_SMT
1809 bool "SMT (multithreading) scheduler support"
1810 depends on SYS_SUPPORTS_SCHED_SMT
1811 default n
1812 help
1813 SMT scheduler support improves the CPU scheduler's decision making
1814 when dealing with MIPS MT enabled cores at a cost of slightly
1815 increased overhead in some places. If unsure say N here.
1816
1817config SYS_SUPPORTS_SCHED_SMT
1818 bool
1819
1820
f41ae0b2
RB
1821config SYS_SUPPORTS_MULTITHREADING
1822 bool
1823
f088fc84
RB
1824config MIPS_MT_FPAFF
1825 bool "Dynamic FPU affinity for FP-intensive threads"
f088fc84 1826 default y
07cc0c9e
RB
1827 depends on MIPS_MT_SMP || MIPS_MT_SMTC
1828
1829config MIPS_VPE_LOADER
1830 bool "VPE loader support."
1831 depends on SYS_SUPPORTS_MULTITHREADING
1832 select CPU_MIPSR2_IRQ_VI
1833 select CPU_MIPSR2_IRQ_EI
07cc0c9e
RB
1834 select MIPS_MT
1835 help
1836 Includes a loader for loading an elf relocatable object
1837 onto another VPE and running it.
f088fc84 1838
0db34215
KK
1839config MIPS_MT_SMTC_IM_BACKSTOP
1840 bool "Use per-TC register bits as backstop for inhibited IM bits"
1841 depends on MIPS_MT_SMTC
8531a35e 1842 default n
0db34215
KK
1843 help
1844 To support multiple TC microthreads acting as "CPUs" within
1845 a VPE, VPE-wide interrupt mask bits must be specially manipulated
1846 during interrupt handling. To support legacy drivers and interrupt
1847 controller management code, SMTC has a "backstop" to track and
1848 if necessary restore the interrupt mask. This has some performance
8531a35e 1849 impact on interrupt service overhead.
0db34215 1850
f571eff0
KK
1851config MIPS_MT_SMTC_IRQAFF
1852 bool "Support IRQ affinity API"
1853 depends on MIPS_MT_SMTC
1854 default n
1855 help
1856 Enables SMP IRQ affinity API (/proc/irq/*/smp_affinity, etc.)
1857 for SMTC Linux kernel. Requires platform support, of which
1858 an example can be found in the MIPS kernel i8259 and Malta
8531a35e
KK
1859 platform code. Adds some overhead to interrupt dispatch, and
1860 should be used only if you know what you are doing.
f571eff0 1861
e01402b1
RB
1862config MIPS_VPE_LOADER_TOM
1863 bool "Load VPE program into memory hidden from linux"
1864 depends on MIPS_VPE_LOADER
1865 default y
1866 help
1867 The loader can use memory that is present but has been hidden from
1868 Linux using the kernel command line option "mem=xxMB". It's up to
1869 you to ensure the amount you put in the option and the space your
1870 program requires is less or equal to the amount physically present.
1871
1872# this should possibly be in drivers/char, but it is rather cpu related. Hmmm
1873config MIPS_VPE_APSP_API
5e83d430
RB
1874 bool "Enable support for AP/SP API (RTLX)"
1875 depends on MIPS_VPE_LOADER
1876 help
e01402b1 1877
2600990e
RB
1878config MIPS_APSP_KSPD
1879 bool "Enable KSPD"
1880 depends on MIPS_VPE_APSP_API
1881 default y
1882 help
1883 KSPD is a kernel daemon that accepts syscall requests from the SP
1884 side, actions them and returns the results. It also handles the
1885 "exit" syscall notifying other kernel modules the SP program is
1886 exiting. You probably want to say yes here.
1887
4a16ff4c
RB
1888config MIPS_CMP
1889 bool "MIPS CMP framework support"
1890 depends on SYS_SUPPORTS_MIPS_CMP
eb9b5141 1891 select SYNC_R4K
4a16ff4c
RB
1892 select SYS_SUPPORTS_SMP
1893 select SYS_SUPPORTS_SCHED_SMT if SMP
1894 select WEAK_ORDERING
1895 default n
1896 help
1897 This is a placeholder option for the GCMP work. It will need to
1898 be handled differently...
1899
1da177e4
LT
1900config SB1_PASS_1_WORKAROUNDS
1901 bool
1902 depends on CPU_SB1_PASS_1
1903 default y
1904
1905config SB1_PASS_2_WORKAROUNDS
1906 bool
1907 depends on CPU_SB1 && (CPU_SB1_PASS_2_2 || CPU_SB1_PASS_2)
1908 default y
1909
1910config SB1_PASS_2_1_WORKAROUNDS
1911 bool
1912 depends on CPU_SB1 && CPU_SB1_PASS_2
1913 default y
1914
1915config 64BIT_PHYS_ADDR
d806cb2b 1916 bool
1da177e4 1917
60ec6571 1918config ARCH_PHYS_ADDR_T_64BIT
1919 def_bool 64BIT_PHYS_ADDR
1920
9693a853
FBH
1921config CPU_HAS_SMARTMIPS
1922 depends on SYS_SUPPORTS_SMARTMIPS
1923 bool "Support for the SmartMIPS ASE"
1924 help
1925 SmartMIPS is a extension of the MIPS32 architecture aimed at
1926 increased security at both hardware and software level for
1927 smartcards. Enabling this option will allow proper use of the
1928 SmartMIPS instructions by Linux applications. However a kernel with
1929 this option will not work on a MIPS core without SmartMIPS core. If
1930 you don't know you probably don't have SmartMIPS and should say N
1931 here.
1932
1da177e4 1933config CPU_HAS_WB
f7062ddb 1934 bool
e01402b1 1935
f41ae0b2
RB
1936#
1937# Vectored interrupt mode is an R2 feature
1938#
e01402b1 1939config CPU_MIPSR2_IRQ_VI
f41ae0b2 1940 bool
e01402b1 1941
f41ae0b2
RB
1942#
1943# Extended interrupt mode is an R2 feature
1944#
e01402b1 1945config CPU_MIPSR2_IRQ_EI
f41ae0b2 1946 bool
e01402b1 1947
1da177e4
LT
1948config CPU_HAS_SYNC
1949 bool
1950 depends on !CPU_R3000
1951 default y
1952
ea580401
RB
1953config GENERIC_CLOCKEVENTS_BROADCAST
1954 bool
1955
20d60d99
MR
1956#
1957# CPU non-features
1958#
1959config CPU_DADDI_WORKAROUNDS
1960 bool
1961
1962config CPU_R4000_WORKAROUNDS
1963 bool
1964 select CPU_R4400_WORKAROUNDS
1965
1966config CPU_R4400_WORKAROUNDS
1967 bool
1968
1da177e4
LT
1969#
1970# - Highmem only makes sense for the 32-bit kernel.
1971# - The current highmem code will only work properly on physically indexed
1972# caches such as R3000, SB1, R7000 or those that look like they're virtually
1973# indexed such as R4000/R4400 SC and MC versions or R10000. So for the
1974# moment we protect the user and offer the highmem option only on machines
1975# where it's known to be safe. This will not offer highmem on a few systems
1976# such as MIPS32 and MIPS64 CPUs which may have virtual and physically
1977# indexed CPUs but we're playing safe.
797798c1
RB
1978# - We use SYS_SUPPORTS_HIGHMEM to offer highmem only for systems where we
1979# know they might have memory configurations that could make use of highmem
1980# support.
1da177e4
LT
1981#
1982config HIGHMEM
1983 bool "High Memory Support"
797798c1
RB
1984 depends on 32BIT && CPU_SUPPORTS_HIGHMEM && SYS_SUPPORTS_HIGHMEM
1985
1986config CPU_SUPPORTS_HIGHMEM
1987 bool
1988
1989config SYS_SUPPORTS_HIGHMEM
1990 bool
1da177e4 1991
9693a853
FBH
1992config SYS_SUPPORTS_SMARTMIPS
1993 bool
1994
b4819b59
YY
1995config ARCH_FLATMEM_ENABLE
1996 def_bool y
f133f22d 1997 depends on !NUMA && !CPU_LOONGSON2
b4819b59 1998
d8cb4e11
RB
1999config ARCH_DISCONTIGMEM_ENABLE
2000 bool
2001 default y if SGI_IP27
2002 help
3dde6ad8 2003 Say Y to support efficient handling of discontiguous physical memory,
d8cb4e11
RB
2004 for architectures which are either NUMA (Non-Uniform Memory Access)
2005 or have huge holes in the physical address space for other reasons.
2006 See <file:Documentation/vm/numa> for more.
2007
cce335ae
RB
2008config ARCH_POPULATES_NODE_MAP
2009 def_bool y
2010
31473747
AN
2011config ARCH_SPARSEMEM_ENABLE
2012 bool
7de58fab 2013 select SPARSEMEM_STATIC
31473747 2014
d8cb4e11
RB
2015config NUMA
2016 bool "NUMA Support"
2017 depends on SYS_SUPPORTS_NUMA
2018 help
2019 Say Y to compile the kernel to support NUMA (Non-Uniform Memory
2020 Access). This option improves performance on systems with more
2021 than two nodes; on two node systems it is generally better to
2022 leave it disabled; on single node systems disable this option
2023 disabled.
2024
2025config SYS_SUPPORTS_NUMA
2026 bool
2027
c80d79d7
YG
2028config NODES_SHIFT
2029 int
2030 default "6"
2031 depends on NEED_MULTIPLE_NODES
2032
14f70012
DCZ
2033config HW_PERF_EVENTS
2034 bool "Enable hardware performance counter support for perf events"
2035 depends on PERF_EVENTS && !MIPS_MT_SMTC && OPROFILE=n && CPU_MIPS32
2036 default y
2037 help
2038 Enable hardware performance counter support for perf events. If
2039 disabled, perf events will use software events only.
2040
b4819b59
YY
2041source "mm/Kconfig"
2042
1da177e4
LT
2043config SMP
2044 bool "Multi-Processing support"
e73ea273 2045 depends on SYS_SUPPORTS_SMP
b4b30a5a 2046 select IRQ_PER_CPU
2f304c0a 2047 select USE_GENERIC_SMP_HELPERS
e73ea273 2048 help
1da177e4
LT
2049 This enables support for systems with more than one CPU. If you have
2050 a system with only one CPU, like most personal computers, say N. If
2051 you have a system with more than one CPU, say Y.
2052
2053 If you say N here, the kernel will run on single and multiprocessor
2054 machines, but will use only one CPU of a multiprocessor machine. If
2055 you say Y here, the kernel will run on many, but not all,
2056 singleprocessor machines. On a singleprocessor machine, the kernel
2057 will run faster if you say N here.
2058
2059 People using multiprocessor machines who say Y here should also say
2060 Y to "Enhanced Real Time Clock Support", below.
2061
03502faa
AB
2062 See also the SMP-HOWTO available at
2063 <http://www.tldp.org/docs.html#howto>.
1da177e4
LT
2064
2065 If you don't know what to do here, say N.
2066
87353d8a
RB
2067config SMP_UP
2068 bool
2069
4a16ff4c
RB
2070config SYS_SUPPORTS_MIPS_CMP
2071 bool
2072
e73ea273
RB
2073config SYS_SUPPORTS_SMP
2074 bool
2075
72ede9b1
AN
2076config NR_CPUS_DEFAULT_1
2077 bool
2078
130e2fb7
RB
2079config NR_CPUS_DEFAULT_2
2080 bool
2081
2082config NR_CPUS_DEFAULT_4
2083 bool
2084
2085config NR_CPUS_DEFAULT_8
2086 bool
2087
2088config NR_CPUS_DEFAULT_16
2089 bool
2090
2091config NR_CPUS_DEFAULT_32
2092 bool
2093
2094config NR_CPUS_DEFAULT_64
2095 bool
2096
1da177e4
LT
2097config NR_CPUS
2098 int "Maximum number of CPUs (2-64)"
72ede9b1 2099 range 1 64 if NR_CPUS_DEFAULT_1
1da177e4 2100 depends on SMP
72ede9b1 2101 default "1" if NR_CPUS_DEFAULT_1
130e2fb7
RB
2102 default "2" if NR_CPUS_DEFAULT_2
2103 default "4" if NR_CPUS_DEFAULT_4
2104 default "8" if NR_CPUS_DEFAULT_8
2105 default "16" if NR_CPUS_DEFAULT_16
2106 default "32" if NR_CPUS_DEFAULT_32
2107 default "64" if NR_CPUS_DEFAULT_64
1da177e4
LT
2108 help
2109 This allows you to specify the maximum number of CPUs which this
2110 kernel will support. The maximum supported value is 32 for 32-bit
2111 kernel and 64 for 64-bit kernels; the minimum value which makes
72ede9b1
AN
2112 sense is 1 for Qemu (useful only for kernel debugging purposes)
2113 and 2 for all others.
1da177e4
LT
2114
2115 This is purely to save memory - each supported CPU adds
72ede9b1
AN
2116 approximately eight kilobytes to the kernel image. For best
2117 performance should round up your number of processors to the next
2118 power of two.
1da177e4 2119
c4eee283
AN
2120source "kernel/time/Kconfig"
2121
1723b4a3
AN
2122#
2123# Timer Interrupt Frequency Configuration
2124#
2125
2126choice
2127 prompt "Timer frequency"
2128 default HZ_250
2129 help
2130 Allows the configuration of the timer frequency.
2131
2132 config HZ_48
0f873585 2133 bool "48 HZ" if SYS_SUPPORTS_48HZ || SYS_SUPPORTS_ARBIT_HZ
1723b4a3
AN
2134
2135 config HZ_100
2136 bool "100 HZ" if SYS_SUPPORTS_100HZ || SYS_SUPPORTS_ARBIT_HZ
2137
2138 config HZ_128
2139 bool "128 HZ" if SYS_SUPPORTS_128HZ || SYS_SUPPORTS_ARBIT_HZ
2140
2141 config HZ_250
2142 bool "250 HZ" if SYS_SUPPORTS_250HZ || SYS_SUPPORTS_ARBIT_HZ
2143
2144 config HZ_256
2145 bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
2146
2147 config HZ_1000
2148 bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
2149
2150 config HZ_1024
2151 bool "1024 HZ" if SYS_SUPPORTS_1024HZ || SYS_SUPPORTS_ARBIT_HZ
2152
2153endchoice
2154
2155config SYS_SUPPORTS_48HZ
2156 bool
2157
2158config SYS_SUPPORTS_100HZ
2159 bool
2160
2161config SYS_SUPPORTS_128HZ
2162 bool
2163
2164config SYS_SUPPORTS_250HZ
2165 bool
2166
2167config SYS_SUPPORTS_256HZ
2168 bool
2169
2170config SYS_SUPPORTS_1000HZ
2171 bool
2172
2173config SYS_SUPPORTS_1024HZ
2174 bool
2175
2176config SYS_SUPPORTS_ARBIT_HZ
2177 bool
2178 default y if !SYS_SUPPORTS_48HZ && !SYS_SUPPORTS_100HZ && \
2179 !SYS_SUPPORTS_128HZ && !SYS_SUPPORTS_250HZ && \
2180 !SYS_SUPPORTS_256HZ && !SYS_SUPPORTS_1000HZ && \
2181 !SYS_SUPPORTS_1024HZ
2182
2183config HZ
2184 int
2185 default 48 if HZ_48
2186 default 100 if HZ_100
2187 default 128 if HZ_128
2188 default 250 if HZ_250
2189 default 256 if HZ_256
2190 default 1000 if HZ_1000
2191 default 1024 if HZ_1024
2192
e80de850 2193source "kernel/Kconfig.preempt"
1da177e4 2194
1da177e4
LT
2195config MIPS_INSANE_LARGE
2196 bool "Support for large 64-bit configurations"
875d43e7 2197 depends on CPU_R10000 && 64BIT
1da177e4
LT
2198 help
2199 MIPS R10000 does support a 44 bit / 16TB address space as opposed to
2200 previous 64-bit processors which only supported 40 bit / 1TB. If you
2201 need processes of more than 1TB virtual address space, say Y here.
2202 This will result in additional memory usage, so it is not
2203 recommended for normal users.
2204
ea6e942b
AN
2205config KEXEC
2206 bool "Kexec system call (EXPERIMENTAL)"
2207 depends on EXPERIMENTAL
2208 help
2209 kexec is a system call that implements the ability to shutdown your
2210 current kernel, and to start another kernel. It is like a reboot
3dde6ad8 2211 but it is independent of the system firmware. And like a reboot
ea6e942b
AN
2212 you can start any kernel with it, not just Linux.
2213
01dd2fbf 2214 The name comes from the similarity to the exec system call.
ea6e942b
AN
2215
2216 It is an ongoing process to be certain the hardware in a machine
2217 is properly shutdown, so do not be surprised if this code does not
2218 initially work for you. It may help to enable device hotplugging
2219 support. As of this writing the exact hardware interface is
2220 strongly in flux, so no good recommendation can be made.
2221
2222config SECCOMP
2223 bool "Enable seccomp to safely compute untrusted bytecode"
293c5bd1 2224 depends on PROC_FS
ea6e942b
AN
2225 default y
2226 help
2227 This kernel feature is useful for number crunching applications
2228 that may need to compute untrusted bytecode during their
2229 execution. By using pipes or other transports made available to
2230 the process as file descriptors supporting the read/write
2231 syscalls, it's possible to isolate those applications in
2232 their own address space using seccomp. Once seccomp is
2233 enabled via /proc/<pid>/seccomp, it cannot be disabled
2234 and the task is only allowed to execute a few safe syscalls
2235 defined by each seccomp mode.
2236
2237 If unsure, say Y. Only embedded should say N here.
2238
f2ffa5ab
DD
2239config USE_OF
2240 bool "Flattened Device Tree support"
2241 select OF
e6ce1324 2242 select OF_EARLY_FLATTREE
f2ffa5ab
DD
2243 help
2244 Include support for flattened device tree machine descriptions.
2245
5e83d430
RB
2246endmenu
2247
1df0f0ff
AN
2248config LOCKDEP_SUPPORT
2249 bool
2250 default y
2251
2252config STACKTRACE_SUPPORT
2253 bool
2254 default y
2255
b6c3539b
RB
2256source "init/Kconfig"
2257
dc52ddc0
MH
2258source "kernel/Kconfig.freezer"
2259
1da177e4
LT
2260menu "Bus options (PCI, PCMCIA, EISA, ISA, TC)"
2261
5e83d430
RB
2262config HW_HAS_EISA
2263 bool
1da177e4
LT
2264config HW_HAS_PCI
2265 bool
2266
2267config PCI
2268 bool "Support for PCI controller"
2269 depends on HW_HAS_PCI
abb4ae46 2270 select PCI_DOMAINS
1da177e4
LT
2271 help
2272 Find out whether you have a PCI motherboard. PCI is the name of a
2273 bus system, i.e. the way the CPU talks to the other stuff inside
2274 your box. Other bus systems are ISA, EISA, or VESA. If you have PCI,
2275 say Y, otherwise N.
2276
1da177e4
LT
2277config PCI_DOMAINS
2278 bool
1da177e4
LT
2279
2280source "drivers/pci/Kconfig"
2281
2282#
2283# ISA support is now enabled via select. Too many systems still have the one
2284# or other ISA chip on the board that users don't know about so don't expect
2285# users to choose the right thing ...
2286#
2287config ISA
2288 bool
2289
2290config EISA
2291 bool "EISA support"
5e83d430 2292 depends on HW_HAS_EISA
1da177e4 2293 select ISA
aa414dff 2294 select GENERIC_ISA_DMA
1da177e4
LT
2295 ---help---
2296 The Extended Industry Standard Architecture (EISA) bus was
2297 developed as an open alternative to the IBM MicroChannel bus.
2298
2299 The EISA bus provided some of the features of the IBM MicroChannel
2300 bus while maintaining backward compatibility with cards made for
2301 the older ISA bus. The EISA bus saw limited use between 1988 and
2302 1995 when it was made obsolete by the PCI bus.
2303
2304 Say Y here if you are building a kernel for an EISA-based machine.
2305
2306 Otherwise, say N.
2307
2308source "drivers/eisa/Kconfig"
2309
2310config TC
2311 bool "TURBOchannel support"
2312 depends on MACH_DECSTATION
2313 help
50a23e6e
JM
2314 TURBOchannel is a DEC (now Compaq (now HP)) bus for Alpha and MIPS
2315 processors. TURBOchannel programming specifications are available
2316 at:
2317 <ftp://ftp.hp.com/pub/alphaserver/archive/triadd/>
2318 and:
2319 <http://www.computer-refuge.org/classiccmp/ftp.digital.com/pub/DEC/TriAdd/>
2320 Linux driver support status is documented at:
2321 <http://www.linux-mips.org/wiki/DECstation>
1da177e4
LT
2322
2323#config ACCESSBUS
2324# bool "Access.Bus support"
2325# depends on TC
2326
2327config MMU
2328 bool
2329 default y
2330
d865bea4
RB
2331config I8253
2332 bool
9726b43a 2333 select MIPS_EXTERNAL_TIMER
d865bea4 2334
cce335ae
RB
2335config ZONE_DMA32
2336 bool
2337
1da177e4
LT
2338source "drivers/pcmcia/Kconfig"
2339
2340source "drivers/pci/hotplug/Kconfig"
2341
2342endmenu
2343
2344menu "Executable file formats"
2345
2346source "fs/Kconfig.binfmt"
2347
2348config TRAD_SIGNALS
2349 bool
1da177e4 2350
1da177e4
LT
2351config MIPS32_COMPAT
2352 bool "Kernel support for Linux/MIPS 32-bit binary compatibility"
875d43e7 2353 depends on 64BIT
1da177e4
LT
2354 help
2355 Select this option if you want Linux/MIPS 32-bit binary
2356 compatibility. Since all software available for Linux/MIPS is
2357 currently 32-bit you should say Y here.
2358
2359config COMPAT
2360 bool
2361 depends on MIPS32_COMPAT
2362 default y
2363
05e43966
AN
2364config SYSVIPC_COMPAT
2365 bool
2366 depends on COMPAT && SYSVIPC
2367 default y
2368
1da177e4
LT
2369config MIPS32_O32
2370 bool "Kernel support for o32 binaries"
2371 depends on MIPS32_COMPAT
2372 help
2373 Select this option if you want to run o32 binaries. These are pure
2374 32-bit binaries as used by the 32-bit Linux/MIPS port. Most of
2375 existing binaries are in this format.
2376
2377 If unsure, say Y.
2378
2379config MIPS32_N32
2380 bool "Kernel support for n32 binaries"
2381 depends on MIPS32_COMPAT
2382 help
2383 Select this option if you want to run n32 binaries. These are
2384 64-bit binaries using 32-bit quantities for addressing and certain
2385 data that would normally be 64-bit. They are used in special
2386 cases.
2387
2388 If unsure, say N.
2389
2390config BINFMT_ELF32
2391 bool
2392 default y if MIPS32_O32 || MIPS32_N32
2393
2116245e
RB
2394endmenu
2395
2396menu "Power management options"
2397
363c55ca
WZ
2398config ARCH_HIBERNATION_POSSIBLE
2399 def_bool y
3f5b3e17 2400 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
363c55ca 2401
f4cb5700
JB
2402config ARCH_SUSPEND_POSSIBLE
2403 def_bool y
3f5b3e17 2404 depends on SYS_SUPPORTS_HOTPLUG_CPU || !SMP
f4cb5700 2405
2116245e 2406source "kernel/power/Kconfig"
952fa954 2407
1da177e4
LT
2408endmenu
2409
9726b43a
WZ
2410source "arch/mips/kernel/cpufreq/Kconfig"
2411
d5950b43
SR
2412source "net/Kconfig"
2413
1da177e4
LT
2414source "drivers/Kconfig"
2415
2416source "fs/Kconfig"
2417
2418source "arch/mips/Kconfig.debug"
2419
2420source "security/Kconfig"
2421
2422source "crypto/Kconfig"
2423
92e88b4e
AJ
2424menuconfig VIRTUALIZATION
2425 bool "Virtualization"
2426 default n
2427 ---help---
2428 Say Y here to get to see options for using your Linux host to run other
2429 operating systems inside virtual machines (guests).
2430 This option alone does not add any kernel code.
2431
2432 If you say N, all options in this submenu will be skipped and disabled.
2433
2434if VIRTUALIZATION
2435
2436source drivers/virtio/Kconfig
2437
2438endif # VIRTUALIZATION
2439
1da177e4 2440source "lib/Kconfig"