VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / arch / ppc / Kconfig
1 # For a description of the syntax of this configuration file,
2 # see Documentation/kbuild/kconfig-language.txt.
3 #
4
5 mainmenu "Linux/PowerPC Kernel Configuration"
6
7 config MMU
8         bool
9         default y
10
11 config UID16
12         bool
13
14 config RWSEM_GENERIC_SPINLOCK
15         bool
16
17 config RWSEM_XCHGADD_ALGORITHM
18         bool
19         default y
20
21 config HAVE_DEC_LOCK
22         bool
23         default y
24
25 config PPC
26         bool
27         default y
28
29 config PPC32
30         bool
31         default y
32
33 # All PPCs use generic nvram driver through ppc_md
34 config GENERIC_NVRAM
35         bool
36         default y
37
38 source "init/Kconfig"
39
40 menu "Processor"
41
42 choice
43         prompt "Processor Type"
44         default 6xx
45
46 config 6xx
47         bool "6xx/7xx/74xx/52xx/8260"
48         help
49           There are four types of PowerPC chips supported.  The more common
50           types (601, 603, 604, 740, 750, 7400), the Motorola embedded
51           versions (821, 823, 850, 855, 860, 52xx, 8260), the IBM embedded
52           versions (403 and 405) and the high end 64 bit Power processors 
53           (POWER 3, POWER4, and IBM 970 also known as G5)
54           Unless you are building a kernel for one of the embedded processor
55           systems, 64 bit IBM RS/6000 or an Apple G5, choose 6xx.
56           Note that the kernel runs in 32-bit mode even on 64-bit chips.
57           Also note that because the 52xx & 82xx family has a 603e core,
58           specific support for that chipset is asked later on.
59
60 config 40x
61         bool "40x"
62
63 config 44x
64         bool "44x"
65
66 config POWER3
67         bool "POWER3"
68
69 config POWER4
70         bool "POWER4 and 970 (G5)"
71
72 config 8xx
73         bool "8xx"
74
75 config E500
76         bool "e500"
77
78 endchoice
79
80 config BOOKE
81         bool
82         depends on E500
83         default y
84
85 config FSL_BOOKE
86         bool
87         depends on E500
88         default y
89
90 config PTE_64BIT
91         bool
92         depends on 44x
93         default y
94
95 config ALTIVEC
96         bool "AltiVec Support"
97         depends on 6xx || POWER4
98         depends on !8260
99         ---help---
100           This option enables kernel support for the Altivec extensions to the
101           PowerPC processor. The kernel currently supports saving and restoring
102           altivec registers, and turning on the 'altivec enable' bit so user
103           processes can execute altivec instructions.
104
105           This option is only usefully if you have a processor that supports
106           altivec (G4, otherwise known as 74xx series), but does not have
107           any affect on a non-altivec cpu (it does, however add code to the
108           kernel).
109
110           If in doubt, say Y here.
111
112 config SPE
113         bool "SPE Support"
114         depends on E500
115         ---help---
116           This option enables kernel support for the Signal Processing
117           Extensions (SPE) to the PowerPC processor. The kernel currently
118           supports saving and restoring SPE registers, and turning on the
119           'spe enable' bit so user processes can execute SPE instructions.
120
121           This option is only usefully if you have a processor that supports
122           SPE (e500, otherwise known as 85xx series), but does not have any
123           affect on a non-spe cpu (it does, however add code to the kernel).
124
125           If in doubt, say Y here.
126
127 config TAU
128         bool "Thermal Management Support"
129         depends on 6xx && !8260
130         help
131           G3 and G4 processors have an on-chip temperature sensor called the
132           'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
133           temperature within 2-4 degrees Celsius. This option shows the current
134           on-die temperature in /proc/cpuinfo if the cpu supports it.
135
136           Unfortunately, on some chip revisions, this sensor is very inaccurate
137           and in some cases, does not work at all, so don't assume the cpu
138           temp is actually what /proc/cpuinfo says it is.
139
140 config TAU_INT
141         bool "Interrupt driven TAU driver (DANGEROUS)"
142         depends on TAU
143         ---help---
144           The TAU supports an interrupt driven mode which causes an interrupt
145           whenever the temperature goes out of range. This is the fastest way
146           to get notified the temp has exceeded a range. With this option off,
147           a timer is used to re-check the temperature periodically.
148
149           However, on some cpus it appears that the TAU interrupt hardware
150           is buggy and can cause a situation which would lead unexplained hard
151           lockups.
152
153           Unless you are extending the TAU driver, or enjoy kernel/hardware
154           debugging, leave this option off.
155
156 config TAU_AVERAGE
157         bool "Average high and low temp"
158         depends on TAU
159         ---help---
160           The TAU hardware can compare the temperature to an upper and lower
161           bound.  The default behavior is to show both the upper and lower
162           bound in /proc/cpuinfo. If the range is large, the temperature is
163           either changing a lot, or the TAU hardware is broken (likely on some
164           G4's). If the range is small (around 4 degrees), the temperature is
165           relatively stable.  If you say Y here, a single temperature value,
166           halfway between the upper and lower bounds, will be reported in
167           /proc/cpuinfo.
168
169           If in doubt, say N here.
170
171 config MATH_EMULATION
172         bool "Math emulation"
173         depends on 4xx || 8xx || E500
174         ---help---
175           Some PowerPC chips designed for embedded applications do not have
176           a floating-point unit and therefore do not implement the
177           floating-point instructions in the PowerPC instruction set.  If you
178           say Y here, the kernel will include code to emulate a floating-point
179           unit, which will allow programs that use floating-point
180           instructions to run.
181
182           If you have an Apple machine or an IBM RS/6000 or pSeries machine,
183           or any machine with a 6xx, 7xx or 7xxx series processor, say N
184           here.  Saying Y here will not hurt performance (on any machine) but
185           will increase the size of the kernel.
186
187 config CPU_FREQ
188         bool "CPU Frequency scaling"
189         help
190           Clock scaling allows you to change the clock speed of CPUs on the
191           fly. This is a nice method to save battery power on notebooks,
192           because the lower the clock speed, the less power the CPU consumes.
193
194           For more information, take a look at <file:Documentation/cpu-freq> or
195           at <http://www.brodo.de/cpufreq/>
196
197           If in doubt, say N.
198
199 source "drivers/cpufreq/Kconfig"
200
201 config CPU_FREQ_PMAC
202         bool "Support for Apple PowerBooks"
203         depends on CPU_FREQ && ADB_PMU
204         help
205           This adds support for frequency switching on Apple PowerBooks,
206           this currently includes some models of iBook & Titanium
207           PowerBook.
208
209 config CPU_FREQ_TABLE
210         bool
211         depends on CPU_FREQ_PMAC
212         default y
213
214 config PPC601_SYNC_FIX
215         bool "Workarounds for PPC601 bugs"
216         depends on 6xx && (PPC_PREP || PPC_PMAC)
217         help
218           Some versions of the PPC601 (the first PowerPC chip) have bugs which
219           mean that extra synchronization instructions are required near
220           certain instructions, typically those that make major changes to the
221           CPU state.  These extra instructions reduce performance slightly.
222           If you say N here, these extra instructions will not be included,
223           resulting in a kernel which will run faster but may not run at all
224           on some systems with the PPC601 chip.
225
226           If in doubt, say Y here.
227
228 source arch/ppc/platforms/4xx/Kconfig
229 source arch/ppc/platforms/85xx/Kconfig
230
231 config PPC64BRIDGE
232         bool
233         depends on POWER3 || POWER4
234         default y
235
236 config PPC_STD_MMU
237         bool
238         depends on 6xx || POWER3 || POWER4
239         default y
240
241 config NOT_COHERENT_CACHE
242         bool
243         depends on 4xx || 8xx
244         default y
245
246 endmenu
247
248 menu "Platform options"
249
250 choice
251         prompt "8xx Machine Type"
252         depends on 8xx
253         default RPXLITE
254
255 config RPXLITE
256         bool "RPX-Lite"
257         ---help---
258           Single-board computers based around the PowerPC MPC8xx chips and
259           intended for embedded applications.  The following types are
260           supported:
261
262           RPX-Lite:
263           Embedded Planet RPX Lite. PC104 form-factor SBC based on the MPC823.
264
265           RPX-Classic:
266           Embedded Planet RPX Classic Low-fat. Credit-card-size SBC based on
267           the MPC 860
268
269           BSE-IP:
270           Bright Star Engineering ip-Engine.
271
272           TQM823L:
273           TQM850L:
274           TQM855L:
275           TQM860L:
276           MPC8xx based family of mini modules, half credit card size,
277           up to 64 MB of RAM, 8 MB Flash, (Fast) Ethernet, 2 x serial ports,
278           2 x CAN bus interface, ...
279           Manufacturer: TQ Components, www.tq-group.de
280           Date of Release: October (?) 1999
281           End of Life: not yet :-)
282           URL:
283           - module: <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>
284           - starter kit: <http://www.denx.de/PDF/STK8xxLHWM201.pdf>
285           - images: <http://www.denx.de/embedded-ppc-en.html>
286
287           FPS850L:
288           FingerPrint Sensor System (based on TQM850L)
289           Manufacturer: IKENDI AG, <http://www.ikendi.com/>
290           Date of Release: November 1999
291           End of life: end 2000 ?
292           URL: see TQM850L
293
294           SPD823TS:
295           MPC823 based board used in the "Tele Server" product
296           Manufacturer: Speech Design, <http://www.speech-design.de/>
297           Date of Release: Mid 2000 (?)
298           End of life: -
299           URL: <http://www.speech-design.de/>
300           select "English", then "Teleteam Solutions", then "TeleServer"
301
302           IVMS8:
303           MPC860 based board used in the "Integrated Voice Mail System",
304           Small Version (8 voice channels)
305           Manufacturer: Speech Design, <http://www.speech-design.de/>
306           Date of Release: December 2000 (?)
307           End of life: -
308           URL: <http://www.speech-design.de/>
309
310           IVML24:
311           MPC860 based board used in the "Integrated Voice Mail System",
312           Large Version (24 voice channels)
313           Manufacturer: Speech Design, <http://www.speech-design.de/>
314           Date of Release: March 2001  (?)
315           End of life: -
316           URL: <http://www.speech-design.de/>
317
318           SM850:
319           Service Module (based on TQM850L)
320           Manufacturer: Dependable Computer Systems, <http://www.decomsys.com/>
321           Date of Release: end 2000 (?)
322           End of life: mid 2001 (?)
323           URL: <http://www.tz-mikroelektronik.de/ServiceModule/index.html>
324
325           HERMES:
326           Hermes-Pro ISDN/LAN router with integrated 8 x hub
327           Manufacturer: Multidata Gesellschaft für Datentechnik und Informatik
328           <http://www.multidata.de/>
329           Date of Release: 2000 (?)
330           End of life: -
331           URL: <http://www.multidata.de/english/products/hpro.htm>
332
333           IP860:
334           VMEBus IP (Industry Pack) carrier board with MPC860
335           Manufacturer: MicroSys GmbH, <http://www.microsys.de/>
336           Date of Release: ?
337           End of life: -
338           URL: <http://www.microsys.de/html/ip860.html>
339
340           PCU_E:
341           PCU = Peripheral Controller Unit, Extended
342           Manufacturer: Siemens AG, ICN (Information and Communication Networks)
343                 <http://www.siemens.de/page/1,3771,224315-1-999_2_226207-0,00.html>
344           Date of Release: April 2001
345           End of life: August 2001
346           URL: n. a.
347
348 config RPXCLASSIC
349         bool "RPX-Classic"
350         help
351           The RPX-Classic is a single-board computer based on the Motorola
352           MPC860.  It features 16MB of DRAM and a variable amount of flash,
353           I2C EEPROM, thermal monitoring, a PCMCIA slot, a DIP switch and two
354           LEDs.  Variants with Ethernet ports exist.  Say Y here to support it
355           directly.
356
357 config BSEIP
358         bool "BSE-IP"
359         help
360           Say Y here to support the Bright Star Engineering ipEngine SBC.
361           This is a credit-card-sized device featuring a MPC823 processor,
362           26MB DRAM, 4MB flash, Ethernet, a 16K-gate FPGA, USB, an LCD/video
363           controller, and two RS232 ports.
364
365 config FADS
366         bool "FADS"
367
368 config TQM823L
369         bool "TQM823L"
370         help
371           Say Y here to support the TQM823L, one of an MPC8xx-based family of
372           mini SBCs (half credit-card size) from TQ Components first released
373           in late 1999.  Technical references are at
374           <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
375           <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
376           <http://www.denx.de/embedded-ppc-en.html>.
377
378 config TQM850L
379         bool "TQM850L"
380         help
381           Say Y here to support the TQM850L, one of an MPC8xx-based family of
382           mini SBCs (half credit-card size) from TQ Components first released
383           in late 1999.  Technical references are at
384           <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
385           <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
386           <http://www.denx.de/embedded-ppc-en.html>.
387
388 config TQM855L
389         bool "TQM855L"
390         help
391           Say Y here to support the TQM855L, one of an MPC8xx-based family of
392           mini SBCs (half credit-card size) from TQ Components first released
393           in late 1999.  Technical references are at
394           <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
395           <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
396           <http://www.denx.de/embedded-ppc-en.html>.
397
398 config TQM860L
399         bool "TQM860L"
400         help
401           Say Y here to support the TQM860L, one of an MPC8xx-based family of
402           mini SBCs (half credit-card size) from TQ Components first released
403           in late 1999.  Technical references are at
404           <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
405           <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
406           <http://www.denx.de/embedded-ppc-en.html>.
407
408 config FPS850L
409         bool "FPS850L"
410
411 config SPD823TS
412         bool "SPD823TS"
413         help
414           Say Y here to support the Speech Design 823 Tele-Server from Speech
415           Design, released in 2000.  The manufacturer's website is at
416           <http://www.speech-design.de/>.
417
418 config IVMS8
419         bool "IVMS8"
420         help
421           Say Y here to support the Integrated Voice-Mail Small 8-channel SBC
422           from Speech Design, released March 2001.  The manufacturer's website
423           is at <http://www.speech-design.de/>.
424
425 config IVML24
426         bool "IVML24"
427         help
428           Say Y here to support the Integrated Voice-Mail Large 24-channel SBC
429           from Speech Design, released March 2001.  The manufacturer's website
430           is at <http://www.speech-design.de/>.
431
432 config SM850
433         bool "SM850"
434         help
435           Say Y here to support the Service Module 850 from Dependable
436           Computer Systems, an SBC based on the TQM850L module by TQ
437           Components.  This board is no longer in production.  The
438           manufacturer's website is at <http://www.decomsys.com/>.
439
440 config HERMES_PRO
441         bool "HERMES"
442
443 config IP860
444         bool "IP860"
445
446 config LWMON
447         bool "LWMON"
448
449 config PCU_E
450         bool "PCU_E"
451
452 config CCM
453         bool "CCM"
454
455 config LANTEC
456         bool "LANTEC"
457
458 config MBX
459         bool "MBX"
460         help
461           MBX is a line of Motorola single-board computer based around the
462           MPC821 and MPC860 processors, and intended for embedded-controller
463           applications.  Say Y here to support these boards directly.
464
465 config WINCEPT
466         bool "WinCept"
467         help
468           The Wincept 100/110 is a Motorola single-board computer based on the
469           MPC821 PowerPC, introduced in 1998 and designed to be used in
470           thin-client machines.  Say Y to support it directly.
471
472 endchoice
473
474 choice
475         prompt "Machine Type"
476         depends on 6xx || POWER3 || POWER4
477         default PPC_MULTIPLATFORM
478         ---help---
479           Linux currently supports several different kinds of PowerPC-based
480           machines: Apple Power Macintoshes and clones (such as the Motorola
481           Starmax series), PReP (PowerPC Reference Platform) machines (such
482           as the Motorola PowerStacks, Motorola cPCI/VME embedded systems,
483           and some IBM RS/6000 systems), CHRP (Common Hardware Reference
484           Platform) machines (including all of the recent IBM RS/6000 and
485           pSeries machines), and several embedded PowerPC systems containing
486           4xx, 6xx, 7xx, 8xx, 74xx, and 82xx processors.  Currently, the
487           default option is to build a kernel which works on the first three.
488
489           Select CHRP/PowerMac/PReP if configuring for an IBM RS/6000 or
490           pSeries machine, a Power Macintosh (including iMacs, iBooks and
491           Powerbooks), or a PReP machine.
492
493           Select Gemini if configuring for a Synergy Microsystems' Gemini
494           series Single Board Computer.  More information is available at:
495           <http://www.synergymicro.com/PressRel/97_10_15.html>.
496
497           Select APUS if configuring for a PowerUP Amiga.  More information is
498           available at: <http://linux-apus.sourceforge.net/>.
499
500 config PPC_MULTIPLATFORM
501         bool "CHRP/PowerMac/PReP"
502
503 config APUS
504         bool "Amiga-APUS"
505         help
506           Select APUS if configuring for a PowerUP Amiga.
507           More information is available at:
508           <http://linux-apus.sourceforge.net/>.
509
510 config WILLOW
511         bool "Cogent-Willow"
512
513 config PCORE
514         bool "Force-PowerCore"
515
516 config POWERPMC250
517         bool "Force-PowerPMC250"
518
519 config EV64260
520         bool "Galileo-EV-64260-BP"
521
522 config SPRUCE
523         bool "IBM-Spruce"
524
525 config LOPEC
526         bool "Motorola-LoPEC"
527
528 config MCPN765
529         bool "Motorola-MCPN765"
530
531 config MVME5100
532         bool "Motorola-MVME5100"
533
534 config PPLUS
535         bool "Motorola-PowerPlus"
536
537 config PRPMC750
538         bool "Motorola-PrPMC750"
539
540 config PRPMC800
541         bool "Motorola-PrPMC800"
542
543 config SANDPOINT
544         bool "Motorola-Sandpoint"
545         help
546           Select SANDPOINT if configuring for a Motorola Sandpoint X3
547           (any flavor).
548
549 config ADIR
550         bool "SBS-Adirondack"
551
552 config K2
553         bool "SBS-K2"
554
555 config PAL4
556         bool "SBS-Palomar4"
557
558 config GEMINI
559         bool "Synergy-Gemini"
560         help
561           Select Gemini if configuring for a Synergy Microsystems' Gemini
562           series Single Board Computer.  More information is available at:
563           <http://www.synergymicro.com/PressRel/97_10_15.html>.
564
565 config EST8260
566         bool "EST8260"
567         ---help---
568           The EST8260 is a single-board computer manufactured by Wind River
569           Systems, Inc. (formerly Embedded Support Tools Corp.) and based on
570           the MPC8260.  Wind River Systems has a website at
571           <http://www.windriver.com/>, but the EST8260 cannot be found on it
572           and has probably been discontinued or rebadged.
573
574 config SBC82xx
575         bool "SBC82xx"
576         ---help---
577           SBC PowerQUICC II, single-board computer with MPC82xx CPU
578           Manufacturer: Wind River Systems, Inc.
579           Date of Release: May 2003
580           End of Life: -
581           URL: <http://www.windriver.com/>
582
583 config SBS8260
584         bool "SBS8260"
585
586 config RPX8260
587         bool "RPXSUPER"
588
589 config TQM8260
590         bool "TQM8260"
591         ---help---
592           MPC8260 based module, little larger than credit card,
593           up to 128 MB global + 64 MB local RAM, 32 MB Flash,
594           32 kB EEPROM, 256 kB L@ Cache, 10baseT + 100baseT Ethernet,
595           2 x serial ports, ...
596           Manufacturer: TQ Components, www.tq-group.de
597           Date of Release: June 2001
598           End of Life: not yet :-)
599           URL: <http://www.denx.de/PDF/TQM82xx_SPEC_Rev005.pdf>
600
601 config ADS8272
602         bool "ADS8272"
603
604 config LITE5200
605         bool "Freescale LITE5200 / (IceCube)"
606         select PPC_MPC52xx
607         help
608           Support for the LITE5200 dev board for the MPC5200 from Freescale.
609           This is for the LITE5200 version 2.0 board. Don't know if it changes
610           much but it's only been tested on this board version. I think this
611           board is also known as IceCube.
612
613 endchoice
614
615 config PQ2ADS
616         bool
617         depends on ADS8272
618         default y
619
620 config TQM8xxL
621         bool
622         depends on 8xx && (TQM823L || TQM850L || FPS850L || TQM855L || TQM860L || SM850)
623         default y
624
625 config EMBEDDEDBOOT
626         bool
627         depends on 8xx || 8260
628         default y
629         
630 config PPC_MPC52xx
631         bool
632
633 config 8260
634         bool "CPM2 Support" if WILLOW
635         depends on 6xx
636         default y if TQM8260 || RPX8260 || EST8260 || SBS8260 || SBC82xx
637         help
638           The MPC8260 is a typical embedded CPU made by Motorola.  Selecting
639           this option means that you wish to build a kernel for a machine with
640           an 8260 class CPU.
641
642 config 8272
643         bool
644         depends on 6xx
645         default y if ADS8272
646         select 8260
647         help
648           The MPC8272 CPM has a different internal dpram setup than other CPM2
649           devices
650
651 config CPM2
652         bool
653         depends on 8260 || MPC8560
654         default y
655         help
656           The CPM2 (Communications Processor Module) is a coprocessor on
657           embedded CPUs made by Motorola.  Selecting this option means that
658           you wish to build a kernel for a machine with a CPM2 coprocessor
659           on it (826x, 827x, 8560).
660
661 config PPC_CHRP
662         bool
663         depends on PPC_MULTIPLATFORM
664         default y
665
666 config PPC_PMAC
667         bool
668         depends on PPC_MULTIPLATFORM
669         default y
670
671 config PPC_PMAC64
672         bool
673         depends on PPC_PMAC && POWER4
674         default y
675
676 config PPC_PREP
677         bool
678         depends on PPC_MULTIPLATFORM
679         default y
680
681 config PPC_OF
682         bool
683         depends on PPC_PMAC || PPC_CHRP
684         default y
685
686 config PPC_GEN550
687         bool
688         depends on SANDPOINT || MCPN765 || SPRUCE || PPLUS || PCORE || PRPMC750 || K2 || PRPMC800
689         default y
690
691 config FORCE
692         bool
693         depends on 6xx && (PCORE || POWERPMC250)
694         default y
695
696 config GT64260
697         bool
698         depends on EV64260
699         default y
700
701 config NONMONARCH_SUPPORT
702         bool "Enable Non-Monarch Support"
703         depends on PRPMC800
704
705 config HARRIER
706         bool
707         depends on PRPMC800
708         default y
709
710 config EPIC_SERIAL_MODE
711         bool
712         depends on 6xx && (LOPEC || SANDPOINT)
713         default y
714
715 config MPC10X_BRIDGE
716         bool
717         depends on PCORE || POWERPMC250 || LOPEC || SANDPOINT
718         default y
719
720 config FSL_OCP
721         bool
722         depends on MPC10X_BRIDGE || PPC_MPC52xx
723         default y
724
725 config MPC10X_OPENPIC
726         bool
727         depends on POWERPMC250 || LOPEC || SANDPOINT
728         default y
729
730 config MPC10X_STORE_GATHERING
731         bool "Enable MPC10x store gathering"
732         depends on MPC10X_BRIDGE
733
734 config CPC710_DATA_GATHERING
735         bool "Enable CPC710 data gathering"
736         depends on K2
737
738 config HARRIER_STORE_GATHERING
739         bool "Enable Harrier store gathering"
740         depends on HARRIER
741
742 config MVME5100_IPMC761_PRESENT
743         bool "MVME5100 configured with an IPMC761"
744         depends on MVME5100
745
746 config SPRUCE_BAUD_33M
747         bool "Spruce baud clock support"
748         depends on SPRUCE
749
750 config PC_KEYBOARD
751         bool "PC PS/2 style Keyboard"
752         depends on 4xx || CPM2
753
754 config SERIAL_CONSOLE
755         bool
756         depends on 8xx
757         default y
758
759 config SERIAL_CONSOLE_BAUD
760         int
761         depends on EV64260
762         default "115200"
763
764 config PPCBUG_NVRAM
765         bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
766         default y if PPC_PREP
767
768 config SMP
769         bool "Symmetric multi-processing support"
770         ---help---
771           This enables support for systems with more than one CPU. If you have
772           a system with only one CPU, say N. If you have a system with more
773           than one CPU, say Y.  Note that the kernel does not currently
774           support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
775           since they have inadequate hardware support for multiprocessor
776           operation.
777
778           If you say N here, the kernel will run on single and multiprocessor
779           machines, but will use only one CPU of a multiprocessor machine. If
780           you say Y here, the kernel will run on single-processor machines.
781           On a single-processor machine, the kernel will run faster if you say
782           N here.
783
784           If you don't know what to do here, say N.
785
786 config IRQ_ALL_CPUS
787         bool "Distribute interrupts on all CPUs by default"
788         depends on SMP
789         help
790           This option gives the kernel permission to distribute IRQs across
791           multiple CPUs.  Saying N here will route all IRQs to the first
792           CPU.  Generally saying Y is safe, although some problems have been
793           reported with SMP Power Macintoshes with this option enabled.
794
795 config NR_CPUS
796         int "Maximum number of CPUs (2-32)"
797         range 2 32
798         depends on SMP
799         default "4"
800
801 config PREEMPT
802         bool "Preemptible Kernel"
803         help
804           This option reduces the latency of the kernel when reacting to
805           real-time or interactive events by allowing a low priority process to
806           be preempted even if it is in kernel mode executing a system call.
807
808           Say Y here if you are building a kernel for a desktop, embedded
809           or real-time system.  Say N if you are unsure.
810
811 config HIGHMEM
812         bool "High memory support"
813
814 config KERNEL_ELF
815         bool
816         default y
817
818 source "fs/Kconfig.binfmt"
819
820 config PROC_DEVICETREE
821         bool "Support for Open Firmware device tree in /proc"
822         depends on PPC_OF && PROC_FS
823         help
824           This option adds a device-tree directory under /proc which contains
825           an image of the device tree that the kernel copies from Open
826           Firmware. If unsure, say Y here.
827
828 config PREP_RESIDUAL
829         bool "Support for PReP Residual Data"
830         depends on PPC_PREP
831         help
832           Some PReP systems have residual data passed to the kernel by the
833           firmware.  This allows detection of memory size, devices present and
834           other useful pieces of information.  Sometimes this information is
835           not present or incorrect.
836
837           Unless you expect to boot on a PReP system, there is no need to
838           select Y.
839
840 config PROC_PREPRESIDUAL
841         bool "Support for reading of PReP Residual Data in /proc"
842         depends on PREP_RESIDUAL && PROC_FS
843         help
844           Enabling this option will create a /proc/residual file which allows
845           you to get at the residual data on PReP systems.  You will need a tool
846           (lsresidual) to parse it.  If you aren't on a PReP system, you don't
847           want this.
848
849 config CMDLINE_BOOL
850         bool "Default bootloader kernel arguments"
851
852 config CMDLINE
853         string "Initial kernel command string"
854         depends on CMDLINE_BOOL
855         default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
856         help
857           On some platforms, there is currently no way for the boot loader to
858           pass arguments to the kernel. For these platforms, you can supply
859           some command-line options at build time by entering them here.  In
860           most cases you will need to specify the root device here.
861
862 config AMIGA
863         bool
864         depends on APUS
865         default y
866         help
867           This option enables support for the Amiga series of computers.
868
869 config ZORRO
870         bool
871         depends on APUS
872         default y
873         help
874           This enables support for the Zorro bus in the Amiga. If you have
875           expansion cards in your Amiga that conform to the Amiga
876           AutoConfig(tm) specification, say Y, otherwise N. Note that even
877           expansion cards that do not fit in the Zorro slots but fit in e.g.
878           the CPU slot may fall in this category, so you have to say Y to let
879           Linux use these.
880
881 config ABSTRACT_CONSOLE
882         bool
883         depends on APUS
884         default y
885
886 config APUS_FAST_EXCEPT
887         bool
888         depends on APUS
889         default y
890
891 config AMIGA_PCMCIA
892         bool "Amiga 1200/600 PCMCIA support"
893         depends on APUS && EXPERIMENTAL
894         help
895           Include support in the kernel for pcmcia on Amiga 1200 and Amiga
896           600. If you intend to use pcmcia cards say Y; otherwise say N.
897
898 config AMIGA_BUILTIN_SERIAL
899         tristate "Amiga builtin serial support"
900         depends on APUS
901         help
902           If you want to use your Amiga's built-in serial port in Linux,
903           answer Y.
904
905           To compile this driver as a module, choose M here.
906
907 config GVPIOEXT
908         tristate "GVP IO-Extender support"
909         depends on APUS
910         help
911           If you want to use a GVP IO-Extender serial card in Linux, say Y.
912           Otherwise, say N.
913
914 config GVPIOEXT_LP
915         tristate "GVP IO-Extender parallel printer support"
916         depends on GVPIOEXT
917         help
918           Say Y to enable driving a printer from the parallel port on your
919           GVP IO-Extender card, N otherwise.
920
921 config GVPIOEXT_PLIP
922         tristate "GVP IO-Extender PLIP support"
923         depends on GVPIOEXT
924         help
925           Say Y to enable doing IP over the parallel port on your GVP
926           IO-Extender card, N otherwise.
927
928 config MULTIFACE_III_TTY
929         tristate "Multiface Card III serial support"
930         depends on APUS
931         help
932           If you want to use a Multiface III card's serial port in Linux,
933           answer Y.
934
935           To compile this driver as a module, choose M here.
936
937 config A2232
938         tristate "Commodore A2232 serial support (EXPERIMENTAL)"
939         depends on EXPERIMENTAL && APUS
940         ---help---
941           This option supports the 2232 7-port serial card shipped with the
942           Amiga 2000 and other Zorro-bus machines, dating from 1989.  At
943           a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip
944           each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The
945           ports were connected with 8 pin DIN connectors on the card bracket,
946           for which 8 pin to DB25 adapters were supplied. The card also had
947           jumpers internally to toggle various pinning configurations.
948
949           This driver can be built as a module; but then "generic_serial"
950           will also be built as a module. This has to be loaded before
951           "ser_a2232". If you want to do this, answer M here.
952
953 config WHIPPET_SERIAL
954         tristate "Hisoft Whippet PCMCIA serial support"
955         depends on AMIGA_PCMCIA
956         help
957           HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
958           is no listing for the Whippet in their Amiga section.
959
960 config APNE
961         tristate "PCMCIA NE2000 support"
962         depends on AMIGA_PCMCIA
963         help
964           If you have a PCMCIA NE2000 compatible adapter, say Y.  Otherwise,
965           say N.
966
967           To compile this driver as a module, choose M here: the
968           module will be called apne.
969
970 config SERIAL_CONSOLE
971         bool "Support for serial port console"
972         depends on APUS && (AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y)
973
974 config HEARTBEAT
975         bool "Use power LED as a heartbeat"
976         depends on APUS
977         help
978           Use the power-on LED on your machine as a load meter.  The exact
979           behavior is platform-dependent, but normally the flash frequency is
980           a hyperbolic function of the 5-minute load average.
981
982 config PROC_HARDWARE
983         bool "/proc/hardware support"
984         depends on APUS
985
986 source "drivers/zorro/Kconfig"
987
988 endmenu
989
990 menu "Bus options"
991
992 config ISA
993         bool "Support for ISA-bus hardware"
994         depends on PPC_PREP || PPC_CHRP
995         help
996           Find out whether you have ISA slots on your motherboard.  ISA is the
997           name of a bus system, i.e. the way the CPU talks to the other stuff
998           inside your box.  If you have an Apple machine, say N here; if you
999           have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
1000           you have an embedded board, consult your board documentation.
1001
1002 config GENERIC_ISA_DMA
1003         bool
1004         depends on POWER3 || POWER4 || 6xx && !CPM2
1005         default y
1006
1007 config EISA
1008         bool
1009         help
1010           The Extended Industry Standard Architecture (EISA) bus is a bus
1011           architecture used on some older intel-based PCs.
1012
1013 config SBUS
1014         bool
1015
1016 # Yes MCA RS/6000s exist but Linux-PPC does not currently support any
1017 config MCA
1018         bool
1019
1020 config PCI
1021         bool "PCI support" if 40x || CPM2 || 85xx
1022         default y if !40x && !CPM2 && !8xx && !APUS && !85xx
1023         default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
1024         default PCI_QSPAN if !4xx && !CPM2 && 8xx
1025         help
1026           Find out whether your system includes a PCI bus. PCI is the name of
1027           a bus system, i.e. the way the CPU talks to the other stuff inside
1028           your box.  If you say Y here, the kernel will include drivers and
1029           infrastructure code to support PCI bus devices.
1030
1031 config PCI_DOMAINS
1032         bool
1033         default PCI
1034
1035 config PCI_QSPAN
1036         bool "QSpan PCI"
1037         depends on !4xx && !CPM2 && 8xx
1038         help
1039           Say Y here if you have a system based on a Motorola 8xx-series
1040           embedded processor with a QSPAN PCI interface, otherwise say N.
1041
1042 config PCI_8260
1043         bool
1044         depends on PCI && 8260 && !8272
1045         default y
1046         
1047 config 8260_PCI9
1048         bool "  Enable workaround for MPC826x erratum PCI 9"
1049         depends on PCI_8260
1050         default y
1051
1052 choice 
1053         prompt "  IDMA channel for PCI 9 workaround"
1054         depends on 8260_PCI9
1055
1056 config 8260_PCI9_IDMA1
1057         bool "IDMA1"
1058
1059 config 8260_PCI9_IDMA2
1060         bool "IDMA2"
1061
1062 config 8260_PCI9_IDMA3
1063         bool "IDMA3"
1064
1065 config 8260_PCI9_IDMA4
1066         bool "IDMA4"
1067
1068 endchoice
1069
1070 config PCI_PERMEDIA
1071         bool "PCI for Permedia2"
1072         depends on !4xx && !8xx && APUS
1073
1074 source "drivers/pci/Kconfig"
1075
1076 source "drivers/pcmcia/Kconfig"
1077
1078 endmenu
1079
1080 menu "Advanced setup"
1081
1082 config ADVANCED_OPTIONS
1083         bool "Prompt for advanced kernel configuration options"
1084         help
1085           This option will enable prompting for a variety of advanced kernel
1086           configuration options.  These options can cause the kernel to not
1087           work if they are set incorrectly, but can be used to optimize certain
1088           aspects of kernel memory management.
1089
1090           Unless you know what you are doing, say N here.
1091
1092 comment "Default settings for advanced configuration options are used"
1093         depends on !ADVANCED_OPTIONS
1094
1095 config HIGHMEM_START_BOOL
1096         bool "Set high memory pool address"
1097         depends on ADVANCED_OPTIONS && HIGHMEM
1098         help
1099           This option allows you to set the base address of the kernel virtual
1100           area used to map high memory pages.  This can be useful in
1101           optimizing the layout of kernel virtual memory.
1102
1103           Say N here unless you know what you are doing.
1104
1105 config HIGHMEM_START
1106         hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
1107         default "0xfe000000"
1108
1109 config LOWMEM_SIZE_BOOL
1110         bool "Set maximum low memory"
1111         depends on ADVANCED_OPTIONS
1112         help
1113           This option allows you to set the maximum amount of memory which
1114           will be used as "low memory", that is, memory which the kernel can
1115           access directly, without having to set up a kernel virtual mapping.
1116           This can be useful in optimizing the layout of kernel virtual
1117           memory.
1118
1119           Say N here unless you know what you are doing.
1120
1121 config LOWMEM_SIZE
1122         hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
1123         default "0x30000000"
1124
1125 config KERNEL_START_BOOL
1126         bool "Set custom kernel base address"
1127         depends on ADVANCED_OPTIONS
1128         help
1129           This option allows you to set the kernel virtual address at which
1130           the kernel will map low memory (the kernel image will be linked at
1131           this address).  This can be useful in optimizing the virtual memory
1132           layout of the system.
1133
1134           Say N here unless you know what you are doing.
1135
1136 config KERNEL_START
1137         hex "Virtual address of kernel base" if KERNEL_START_BOOL
1138         default "0xc0000000"
1139
1140 config TASK_SIZE_BOOL
1141         bool "Set custom user task size"
1142         depends on ADVANCED_OPTIONS
1143         help
1144           This option allows you to set the amount of virtual address space
1145           allocated to user tasks.  This can be useful in optimizing the
1146           virtual memory layout of the system.
1147
1148           Say N here unless you know what you are doing.
1149
1150 config TASK_SIZE
1151         hex "Size of user task space" if TASK_SIZE_BOOL
1152         default "0x80000000"
1153
1154 config CONSISTENT_START_BOOL
1155         bool "Set custom consistent memory pool address"
1156         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1157         help
1158           This option allows you to set the base virtual address
1159           of the the consistent memory pool.  This pool of virtual
1160           memory is used to make consistent memory allocations.
1161
1162 config CONSISTENT_START
1163         hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
1164         default "0xff100000" if NOT_COHERENT_CACHE
1165
1166 config CONSISTENT_SIZE_BOOL
1167         bool "Set custom consistent memory pool size"
1168         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1169         help
1170           This option allows you to set the size of the the
1171           consistent memory pool.  This pool of virtual memory
1172           is used to make consistent memory allocations.
1173
1174 config CONSISTENT_SIZE
1175         hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
1176         default "0x00200000" if NOT_COHERENT_CACHE
1177
1178 config BOOT_LOAD_BOOL
1179         bool "Set the boot link/load address"
1180         depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
1181         help
1182           This option allows you to set the initial load address of the zImage
1183           or zImage.initrd file.  This can be useful if you are on a board
1184           which has a small amount of memory.
1185
1186           Say N here unless you know what you are doing.
1187
1188 config BOOT_LOAD
1189         hex "Link/load address for booting" if BOOT_LOAD_BOOL
1190         default "0x00400000" if 40x || 8xx || 8260
1191         default "0x01000000" if 44x
1192         default "0x00800000"
1193
1194 config PIN_TLB
1195         bool "Pinned Kernel TLBs (860 ONLY)"
1196         depends on ADVANCED_OPTIONS && 8xx
1197 endmenu
1198
1199 source "drivers/Kconfig"
1200
1201 source "fs/Kconfig"
1202
1203 source "arch/ppc/8xx_io/Kconfig"
1204
1205 source "arch/ppc/8260_io/Kconfig"
1206
1207
1208 menu "IBM 40x options"
1209         depends on 40x
1210
1211 config SERIAL_SICC
1212         bool "SICC Serial port"
1213         depends on STB03xxx
1214
1215 config UART1_DFLT_CONSOLE
1216         bool
1217         depends on SERIAL_SICC && UART0_TTYS1
1218         default y
1219
1220 config SERIAL_SICC_CONSOLE
1221         bool
1222         depends on SERIAL_SICC && UART0_TTYS1
1223         default y
1224
1225 endmenu
1226
1227 source "lib/Kconfig"
1228
1229 source "arch/ppc/oprofile/Kconfig"
1230
1231 menu "Kernel hacking"
1232
1233 config DEBUG_KERNEL
1234         bool "Kernel debugging"
1235
1236 config DEBUG_SLAB
1237         bool "Debug memory allocations"
1238         depends on DEBUG_KERNEL
1239
1240 config MAGIC_SYSRQ
1241         bool "Magic SysRq key"
1242         depends on DEBUG_KERNEL
1243         help
1244           If you say Y here, you will have some control over the system even
1245           if the system crashes for example during kernel debugging (e.g., you
1246           will be able to flush the buffer cache to disk, reboot the system
1247           immediately or dump some status information). This is accomplished
1248           by pressing various keys while holding SysRq (Alt+PrintScreen). It
1249           also works on a serial console (on PC hardware at least), if you
1250           send a BREAK and then within 5 seconds a command keypress. The
1251           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
1252           unless you really know what this hack does.
1253
1254 config DEBUG_SPINLOCK
1255         bool "Spinlock debugging"
1256         depends on DEBUG_KERNEL
1257         help
1258           Say Y here and to CONFIG_SMP to include code to check for missing
1259           spinlock initialization and some other common spinlock errors.
1260
1261 config DEBUG_HIGHMEM
1262         bool "Highmem debugging"
1263         depends on DEBUG_KERNEL && HIGHMEM
1264         help
1265           This options enables additional error checking for high memory
1266           systems.  Disable for production systems.
1267
1268 config DEBUG_SPINLOCK_SLEEP
1269         bool "Sleep-inside-spinlock checking"
1270         depends on DEBUG_KERNEL
1271         help
1272           If you say Y here, various routines which may sleep will become very
1273           noisy if they are called with a spinlock held.
1274
1275 config KGDB
1276         bool "Include kgdb kernel debugger"
1277         depends on DEBUG_KERNEL && (BROKEN || PPC_GEN550 || 4xx)
1278         select DEBUG_INFO
1279         help
1280           Include in-kernel hooks for kgdb, the Linux kernel source level
1281           debugger.  See <http://kgdb.sourceforge.net/> for more information.
1282           Unless you are intending to debug the kernel, say N here.
1283
1284 choice
1285         prompt "Serial Port"
1286         depends on KGDB
1287         default KGDB_TTYS1
1288
1289 config KGDB_TTYS0
1290         bool "ttyS0"
1291
1292 config KGDB_TTYS1
1293         bool "ttyS1"
1294
1295 config KGDB_TTYS2
1296         bool "ttyS2"
1297
1298 config KGDB_TTYS3
1299         bool "ttyS3"
1300
1301 endchoice
1302
1303 config KGDB_CONSOLE
1304         bool "Enable serial console thru kgdb port"
1305         depends on KGDB && 8xx || CPM2
1306         help
1307           If you enable this, all serial console messages will be sent
1308           over the gdb stub.
1309           If unsure, say N.
1310
1311 config XMON
1312         bool "Include xmon kernel debugger"
1313         depends on DEBUG_KERNEL
1314         help
1315           Include in-kernel hooks for the xmon kernel monitor/debugger.
1316           Unless you are intending to debug the kernel, say N here.
1317
1318 config BDI_SWITCH
1319         bool "Include BDI-2000 user context switcher"
1320         depends on DEBUG_KERNEL
1321         help
1322           Include in-kernel support for the Abatron BDI2000 debugger.
1323           Unless you are intending to debug the kernel with one of these
1324           machines, say N here.
1325
1326 config DEBUG_INFO
1327         bool "Compile the kernel with debug info"
1328         depends on DEBUG_KERNEL
1329         help
1330           If you say Y here the resulting kernel image will include
1331           debugging info resulting in a larger kernel image.
1332           Say Y here only if you plan to use some sort of debugger to
1333           debug the kernel.
1334           If you don't debug the kernel, you can say N.
1335
1336 config BOOTX_TEXT
1337         bool "Support for early boot text console (BootX or OpenFirmware only)"
1338         depends PPC_OF
1339         help
1340           Say Y here to see progress messages from the boot firmware in text
1341           mode. Requires either BootX or Open Firmware.
1342
1343 config SERIAL_TEXT_DEBUG
1344         bool "Support for early boot texts over serial port"
1345         depends on 4xx || GT64260 || LOPEC || PPLUS || PRPMC800 || PPC_GEN550 || PPC_MPC52xx
1346
1347 config PPC_OCP
1348         bool
1349         depends on IBM_OCP || FSL_OCP
1350         default y
1351
1352 endmenu
1353
1354 source "kernel/vserver/Kconfig"
1355
1356 source "security/Kconfig"
1357
1358 source "crypto/Kconfig"