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