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