This commit was manufactured by cvs2svn to create tag
[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 config KEXEC
247         bool "kexec system call (EXPERIMENTAL)"
248         depends on EXPERIMENTAL
249         help
250           kexec is a system call that implements the ability to shutdown your
251           current kernel, and to start another kernel.  It is like a reboot
252           but it is indepedent of the system firmware.   And like a reboot
253           you can start any kernel with it, not just Linux.
254
255           The name comes from the similiarity to the exec system call.
256
257           It is an ongoing process to be certain the hardware in a machine
258           is properly shutdown, so do not be surprised if this code does not
259           initially work for you.  It may help to enable device hotplugging
260           support.  As of this writing the exact hardware interface is
261           strongly in flux, so no good recommendation can be made.
262
263           In the GameCube implementation, kexec allows you to load and
264           run DOL files, including kernel and homebrew DOLs.
265
266 endmenu
267
268 menu "Platform options"
269
270 choice
271         prompt "8xx Machine Type"
272         depends on 8xx
273         default RPXLITE
274
275 config RPXLITE
276         bool "RPX-Lite"
277         ---help---
278           Single-board computers based around the PowerPC MPC8xx chips and
279           intended for embedded applications.  The following types are
280           supported:
281
282           RPX-Lite:
283           Embedded Planet RPX Lite. PC104 form-factor SBC based on the MPC823.
284
285           RPX-Classic:
286           Embedded Planet RPX Classic Low-fat. Credit-card-size SBC based on
287           the MPC 860
288
289           BSE-IP:
290           Bright Star Engineering ip-Engine.
291
292           TQM823L:
293           TQM850L:
294           TQM855L:
295           TQM860L:
296           MPC8xx based family of mini modules, half credit card size,
297           up to 64 MB of RAM, 8 MB Flash, (Fast) Ethernet, 2 x serial ports,
298           2 x CAN bus interface, ...
299           Manufacturer: TQ Components, www.tq-group.de
300           Date of Release: October (?) 1999
301           End of Life: not yet :-)
302           URL:
303           - module: <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>
304           - starter kit: <http://www.denx.de/PDF/STK8xxLHWM201.pdf>
305           - images: <http://www.denx.de/embedded-ppc-en.html>
306
307           FPS850L:
308           FingerPrint Sensor System (based on TQM850L)
309           Manufacturer: IKENDI AG, <http://www.ikendi.com/>
310           Date of Release: November 1999
311           End of life: end 2000 ?
312           URL: see TQM850L
313
314           SPD823TS:
315           MPC823 based board used in the "Tele Server" product
316           Manufacturer: Speech Design, <http://www.speech-design.de/>
317           Date of Release: Mid 2000 (?)
318           End of life: -
319           URL: <http://www.speech-design.de/>
320           select "English", then "Teleteam Solutions", then "TeleServer"
321
322           IVMS8:
323           MPC860 based board used in the "Integrated Voice Mail System",
324           Small Version (8 voice channels)
325           Manufacturer: Speech Design, <http://www.speech-design.de/>
326           Date of Release: December 2000 (?)
327           End of life: -
328           URL: <http://www.speech-design.de/>
329
330           IVML24:
331           MPC860 based board used in the "Integrated Voice Mail System",
332           Large Version (24 voice channels)
333           Manufacturer: Speech Design, <http://www.speech-design.de/>
334           Date of Release: March 2001  (?)
335           End of life: -
336           URL: <http://www.speech-design.de/>
337
338           SM850:
339           Service Module (based on TQM850L)
340           Manufacturer: Dependable Computer Systems, <http://www.decomsys.com/>
341           Date of Release: end 2000 (?)
342           End of life: mid 2001 (?)
343           URL: <http://www.tz-mikroelektronik.de/ServiceModule/index.html>
344
345           HERMES:
346           Hermes-Pro ISDN/LAN router with integrated 8 x hub
347           Manufacturer: Multidata Gesellschaft für Datentechnik und Informatik
348           <http://www.multidata.de/>
349           Date of Release: 2000 (?)
350           End of life: -
351           URL: <http://www.multidata.de/english/products/hpro.htm>
352
353           IP860:
354           VMEBus IP (Industry Pack) carrier board with MPC860
355           Manufacturer: MicroSys GmbH, <http://www.microsys.de/>
356           Date of Release: ?
357           End of life: -
358           URL: <http://www.microsys.de/html/ip860.html>
359
360           PCU_E:
361           PCU = Peripheral Controller Unit, Extended
362           Manufacturer: Siemens AG, ICN (Information and Communication Networks)
363                 <http://www.siemens.de/page/1,3771,224315-1-999_2_226207-0,00.html>
364           Date of Release: April 2001
365           End of life: August 2001
366           URL: n. a.
367
368 config RPXCLASSIC
369         bool "RPX-Classic"
370         help
371           The RPX-Classic is a single-board computer based on the Motorola
372           MPC860.  It features 16MB of DRAM and a variable amount of flash,
373           I2C EEPROM, thermal monitoring, a PCMCIA slot, a DIP switch and two
374           LEDs.  Variants with Ethernet ports exist.  Say Y here to support it
375           directly.
376
377 config BSEIP
378         bool "BSE-IP"
379         help
380           Say Y here to support the Bright Star Engineering ipEngine SBC.
381           This is a credit-card-sized device featuring a MPC823 processor,
382           26MB DRAM, 4MB flash, Ethernet, a 16K-gate FPGA, USB, an LCD/video
383           controller, and two RS232 ports.
384
385 config FADS
386         bool "FADS"
387
388 config TQM823L
389         bool "TQM823L"
390         help
391           Say Y here to support the TQM823L, 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 TQM850L
399         bool "TQM850L"
400         help
401           Say Y here to support the TQM850L, 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 TQM855L
409         bool "TQM855L"
410         help
411           Say Y here to support the TQM855L, one of an MPC8xx-based family of
412           mini SBCs (half credit-card size) from TQ Components first released
413           in late 1999.  Technical references are at
414           <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
415           <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
416           <http://www.denx.de/embedded-ppc-en.html>.
417
418 config TQM860L
419         bool "TQM860L"
420         help
421           Say Y here to support the TQM860L, one of an MPC8xx-based family of
422           mini SBCs (half credit-card size) from TQ Components first released
423           in late 1999.  Technical references are at
424           <http://www.denx.de/PDF/TQM8xxLHWM201.pdf>, and
425           <http://www.denx.de/PDF/STK8xxLHWM201.pdf>, and an image at
426           <http://www.denx.de/embedded-ppc-en.html>.
427
428 config FPS850L
429         bool "FPS850L"
430
431 config SPD823TS
432         bool "SPD823TS"
433         help
434           Say Y here to support the Speech Design 823 Tele-Server from Speech
435           Design, released in 2000.  The manufacturer's website is at
436           <http://www.speech-design.de/>.
437
438 config IVMS8
439         bool "IVMS8"
440         help
441           Say Y here to support the Integrated Voice-Mail Small 8-channel SBC
442           from Speech Design, released March 2001.  The manufacturer's website
443           is at <http://www.speech-design.de/>.
444
445 config IVML24
446         bool "IVML24"
447         help
448           Say Y here to support the Integrated Voice-Mail Large 24-channel SBC
449           from Speech Design, released March 2001.  The manufacturer's website
450           is at <http://www.speech-design.de/>.
451
452 config SM850
453         bool "SM850"
454         help
455           Say Y here to support the Service Module 850 from Dependable
456           Computer Systems, an SBC based on the TQM850L module by TQ
457           Components.  This board is no longer in production.  The
458           manufacturer's website is at <http://www.decomsys.com/>.
459
460 config HERMES_PRO
461         bool "HERMES"
462
463 config IP860
464         bool "IP860"
465
466 config LWMON
467         bool "LWMON"
468
469 config PCU_E
470         bool "PCU_E"
471
472 config CCM
473         bool "CCM"
474
475 config LANTEC
476         bool "LANTEC"
477
478 config MBX
479         bool "MBX"
480         help
481           MBX is a line of Motorola single-board computer based around the
482           MPC821 and MPC860 processors, and intended for embedded-controller
483           applications.  Say Y here to support these boards directly.
484
485 config WINCEPT
486         bool "WinCept"
487         help
488           The Wincept 100/110 is a Motorola single-board computer based on the
489           MPC821 PowerPC, introduced in 1998 and designed to be used in
490           thin-client machines.  Say Y to support it directly.
491
492 endchoice
493
494 choice
495         prompt "Machine Type"
496         depends on 6xx || POWER3 || POWER4
497         default PPC_MULTIPLATFORM
498         ---help---
499           Linux currently supports several different kinds of PowerPC-based
500           machines: Apple Power Macintoshes and clones (such as the Motorola
501           Starmax series), PReP (PowerPC Reference Platform) machines (such
502           as the Motorola PowerStacks, Motorola cPCI/VME embedded systems,
503           and some IBM RS/6000 systems), CHRP (Common Hardware Reference
504           Platform) machines (including all of the recent IBM RS/6000 and
505           pSeries machines), and several embedded PowerPC systems containing
506           4xx, 6xx, 7xx, 8xx, 74xx, and 82xx processors.  Currently, the
507           default option is to build a kernel which works on the first three.
508
509           Select CHRP/PowerMac/PReP if configuring for an IBM RS/6000 or
510           pSeries machine, a Power Macintosh (including iMacs, iBooks and
511           Powerbooks), or a PReP machine.
512
513           Select Gemini if configuring for a Synergy Microsystems' Gemini
514           series Single Board Computer.  More information is available at:
515           <http://www.synergymicro.com/PressRel/97_10_15.html>.
516
517           Select APUS if configuring for a PowerUP Amiga.  More information is
518           available at: <http://linux-apus.sourceforge.net/>.
519
520 config PPC_MULTIPLATFORM
521         bool "CHRP/PowerMac/PReP"
522
523 config APUS
524         bool "Amiga-APUS"
525         help
526           Select APUS if configuring for a PowerUP Amiga.
527           More information is available at:
528           <http://linux-apus.sourceforge.net/>.
529
530 config WILLOW
531         bool "Cogent-Willow"
532
533 config PCORE
534         bool "Force-PowerCore"
535
536 config POWERPMC250
537         bool "Force-PowerPMC250"
538
539 config EV64260
540         bool "Galileo-EV-64260-BP"
541
542 config SPRUCE
543         bool "IBM-Spruce"
544
545 config LOPEC
546         bool "Motorola-LoPEC"
547
548 config MCPN765
549         bool "Motorola-MCPN765"
550
551 config MVME5100
552         bool "Motorola-MVME5100"
553
554 config PPLUS
555         bool "Motorola-PowerPlus"
556
557 config PRPMC750
558         bool "Motorola-PrPMC750"
559
560 config PRPMC800
561         bool "Motorola-PrPMC800"
562
563 config SANDPOINT
564         bool "Motorola-Sandpoint"
565         help
566           Select SANDPOINT if configuring for a Motorola Sandpoint X3
567           (any flavor).
568
569 config ADIR
570         bool "SBS-Adirondack"
571
572 config K2
573         bool "SBS-K2"
574
575 config PAL4
576         bool "SBS-Palomar4"
577
578 config GEMINI
579         bool "Synergy-Gemini"
580         help
581           Select Gemini if configuring for a Synergy Microsystems' Gemini
582           series Single Board Computer.  More information is available at:
583           <http://www.synergymicro.com/PressRel/97_10_15.html>.
584
585 config EST8260
586         bool "EST8260"
587         ---help---
588           The EST8260 is a single-board computer manufactured by Wind River
589           Systems, Inc. (formerly Embedded Support Tools Corp.) and based on
590           the MPC8260.  Wind River Systems has a website at
591           <http://www.windriver.com/>, but the EST8260 cannot be found on it
592           and has probably been discontinued or rebadged.
593
594 config SBC82xx
595         bool "SBC82xx"
596         ---help---
597           SBC PowerQUICC II, single-board computer with MPC82xx CPU
598           Manufacturer: Wind River Systems, Inc.
599           Date of Release: May 2003
600           End of Life: -
601           URL: <http://www.windriver.com/>
602
603 config SBS8260
604         bool "SBS8260"
605
606 config RPX8260
607         bool "RPXSUPER"
608
609 config TQM8260
610         bool "TQM8260"
611         ---help---
612           MPC8260 based module, little larger than credit card,
613           up to 128 MB global + 64 MB local RAM, 32 MB Flash,
614           32 kB EEPROM, 256 kB L@ Cache, 10baseT + 100baseT Ethernet,
615           2 x serial ports, ...
616           Manufacturer: TQ Components, www.tq-group.de
617           Date of Release: June 2001
618           End of Life: not yet :-)
619           URL: <http://www.denx.de/PDF/TQM82xx_SPEC_Rev005.pdf>
620
621 config ADS8272
622         bool "ADS8272"
623
624 config LITE5200
625         bool "Freescale LITE5200 / (IceCube)"
626         select PPC_MPC52xx
627         help
628           Support for the LITE5200 dev board for the MPC5200 from Freescale.
629           This is for the LITE5200 version 2.0 board. Don't know if it changes
630           much but it's only been tested on this board version. I think this
631           board is also known as IceCube.
632
633 endchoice
634
635 config PQ2ADS
636         bool
637         depends on ADS8272
638         default y
639
640 config TQM8xxL
641         bool
642         depends on 8xx && (TQM823L || TQM850L || FPS850L || TQM855L || TQM860L || SM850)
643         default y
644
645 config EMBEDDEDBOOT
646         bool
647         depends on 8xx || 8260
648         default y
649
650 config PPC_MPC52xx
651         bool
652
653 config 8260
654         bool "CPM2 Support" if WILLOW
655         depends on 6xx
656         default y if TQM8260 || RPX8260 || EST8260 || SBS8260 || SBC82xx
657         help
658           The MPC8260 is a typical embedded CPU made by Motorola.  Selecting
659           this option means that you wish to build a kernel for a machine with
660           an 8260 class CPU.
661
662 config 8272
663         bool
664         depends on 6xx
665         default y if ADS8272
666         select 8260
667         help
668           The MPC8272 CPM has a different internal dpram setup than other CPM2
669           devices
670
671 config CPM2
672         bool
673         depends on 8260 || MPC8560
674         default y
675         help
676           The CPM2 (Communications Processor Module) is a coprocessor on
677           embedded CPUs made by Motorola.  Selecting this option means that
678           you wish to build a kernel for a machine with a CPM2 coprocessor
679           on it (826x, 827x, 8560).
680
681 config PPC_CHRP
682         bool
683         depends on PPC_MULTIPLATFORM
684         default y
685
686 config PPC_PMAC
687         bool
688         depends on PPC_MULTIPLATFORM
689         default y
690
691 config PPC_PMAC64
692         bool
693         depends on PPC_PMAC && POWER4
694         default y
695
696 config PPC_PREP
697         bool
698         depends on PPC_MULTIPLATFORM
699         default y
700
701 config PPC_OF
702         bool
703         depends on PPC_PMAC || PPC_CHRP
704         default y
705
706 config PPC_GEN550
707         bool
708         depends on SANDPOINT || MCPN765 || SPRUCE || PPLUS || PCORE || \
709                 PRPMC750 || K2 || PRPMC800 || LOPEC
710         default y
711
712 config FORCE
713         bool
714         depends on 6xx && (PCORE || POWERPMC250)
715         default y
716
717 config GT64260
718         bool
719         depends on EV64260
720         default y
721
722 config NONMONARCH_SUPPORT
723         bool "Enable Non-Monarch Support"
724         depends on PRPMC800
725
726 config HARRIER
727         bool
728         depends on PRPMC800
729         default y
730
731 config EPIC_SERIAL_MODE
732         bool
733         depends on 6xx && (LOPEC || SANDPOINT)
734         default y
735
736 config MPC10X_BRIDGE
737         bool
738         depends on PCORE || POWERPMC250 || LOPEC || SANDPOINT
739         default y
740
741 config FSL_OCP
742         bool
743         depends on MPC10X_BRIDGE || PPC_MPC52xx
744         default y
745
746 config MPC10X_OPENPIC
747         bool
748         depends on POWERPMC250 || LOPEC || SANDPOINT
749         default y
750
751 config MPC10X_STORE_GATHERING
752         bool "Enable MPC10x store gathering"
753         depends on MPC10X_BRIDGE
754
755 config CPC710_DATA_GATHERING
756         bool "Enable CPC710 data gathering"
757         depends on K2
758
759 config HARRIER_STORE_GATHERING
760         bool "Enable Harrier store gathering"
761         depends on HARRIER
762
763 config MVME5100_IPMC761_PRESENT
764         bool "MVME5100 configured with an IPMC761"
765         depends on MVME5100
766
767 config SPRUCE_BAUD_33M
768         bool "Spruce baud clock support"
769         depends on SPRUCE
770
771 config PC_KEYBOARD
772         bool "PC PS/2 style Keyboard"
773         depends on 4xx || CPM2
774
775 config SERIAL_CONSOLE
776         bool
777         depends on 8xx
778         default y
779
780 config SERIAL_CONSOLE_BAUD
781         int
782         depends on EV64260
783         default "115200"
784
785 config PPCBUG_NVRAM
786         bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
787         default y if PPC_PREP
788
789 config SMP
790         bool "Symmetric multi-processing support"
791         ---help---
792           This enables support for systems with more than one CPU. If you have
793           a system with only one CPU, say N. If you have a system with more
794           than one CPU, say Y.  Note that the kernel does not currently
795           support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
796           since they have inadequate hardware support for multiprocessor
797           operation.
798
799           If you say N here, the kernel will run on single and multiprocessor
800           machines, but will use only one CPU of a multiprocessor machine. If
801           you say Y here, the kernel will run on single-processor machines.
802           On a single-processor machine, the kernel will run faster if you say
803           N here.
804
805           If you don't know what to do here, say N.
806
807 config IRQ_ALL_CPUS
808         bool "Distribute interrupts on all CPUs by default"
809         depends on SMP
810         help
811           This option gives the kernel permission to distribute IRQs across
812           multiple CPUs.  Saying N here will route all IRQs to the first
813           CPU.  Generally saying Y is safe, although some problems have been
814           reported with SMP Power Macintoshes with this option enabled.
815
816 config NR_CPUS
817         int "Maximum number of CPUs (2-32)"
818         range 2 32
819         depends on SMP
820         default "4"
821
822 config PREEMPT
823         bool "Preemptible Kernel"
824         help
825           This option reduces the latency of the kernel when reacting to
826           real-time or interactive events by allowing a low priority process to
827           be preempted even if it is in kernel mode executing a system call.
828
829           Say Y here if you are building a kernel for a desktop, embedded
830           or real-time system.  Say N if you are unsure.
831
832 config HIGHMEM
833         bool "High memory support"
834
835 source "fs/Kconfig.binfmt"
836
837 config PROC_DEVICETREE
838         bool "Support for Open Firmware device tree in /proc"
839         depends on PPC_OF && PROC_FS
840         help
841           This option adds a device-tree directory under /proc which contains
842           an image of the device tree that the kernel copies from Open
843           Firmware. If unsure, say Y here.
844
845 config PREP_RESIDUAL
846         bool "Support for PReP Residual Data"
847         depends on PPC_PREP
848         help
849           Some PReP systems have residual data passed to the kernel by the
850           firmware.  This allows detection of memory size, devices present and
851           other useful pieces of information.  Sometimes this information is
852           not present or incorrect, in which case it could lead to the machine 
853           behaving incorrectly.  If this happens, either disable PREP_RESIDUAL
854           or pass the 'noresidual' option to the kernel.
855
856           If you are running a PReP system, say Y here, otherwise say N.
857
858 config PROC_PREPRESIDUAL
859         bool "Support for reading of PReP Residual Data in /proc"
860         depends on PREP_RESIDUAL && PROC_FS
861         help
862           Enabling this option will create a /proc/residual file which allows
863           you to get at the residual data on PReP systems.  You will need a tool
864           (lsresidual) to parse it.  If you aren't on a PReP system, you don't
865           want this.
866
867 config CMDLINE_BOOL
868         bool "Default bootloader kernel arguments"
869
870 config CMDLINE
871         string "Initial kernel command string"
872         depends on CMDLINE_BOOL
873         default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
874         help
875           On some platforms, there is currently no way for the boot loader to
876           pass arguments to the kernel. For these platforms, you can supply
877           some command-line options at build time by entering them here.  In
878           most cases you will need to specify the root device here.
879
880 config AMIGA
881         bool
882         depends on APUS
883         default y
884         help
885           This option enables support for the Amiga series of computers.
886
887 config ZORRO
888         bool
889         depends on APUS
890         default y
891         help
892           This enables support for the Zorro bus in the Amiga. If you have
893           expansion cards in your Amiga that conform to the Amiga
894           AutoConfig(tm) specification, say Y, otherwise N. Note that even
895           expansion cards that do not fit in the Zorro slots but fit in e.g.
896           the CPU slot may fall in this category, so you have to say Y to let
897           Linux use these.
898
899 config ABSTRACT_CONSOLE
900         bool
901         depends on APUS
902         default y
903
904 config APUS_FAST_EXCEPT
905         bool
906         depends on APUS
907         default y
908
909 config AMIGA_PCMCIA
910         bool "Amiga 1200/600 PCMCIA support"
911         depends on APUS && EXPERIMENTAL
912         help
913           Include support in the kernel for pcmcia on Amiga 1200 and Amiga
914           600. If you intend to use pcmcia cards say Y; otherwise say N.
915
916 config AMIGA_BUILTIN_SERIAL
917         tristate "Amiga builtin serial support"
918         depends on APUS
919         help
920           If you want to use your Amiga's built-in serial port in Linux,
921           answer Y.
922
923           To compile this driver as a module, choose M here.
924
925 config GVPIOEXT
926         tristate "GVP IO-Extender support"
927         depends on APUS
928         help
929           If you want to use a GVP IO-Extender serial card in Linux, say Y.
930           Otherwise, say N.
931
932 config GVPIOEXT_LP
933         tristate "GVP IO-Extender parallel printer support"
934         depends on GVPIOEXT
935         help
936           Say Y to enable driving a printer from the parallel port on your
937           GVP IO-Extender card, N otherwise.
938
939 config GVPIOEXT_PLIP
940         tristate "GVP IO-Extender PLIP support"
941         depends on GVPIOEXT
942         help
943           Say Y to enable doing IP over the parallel port on your GVP
944           IO-Extender card, N otherwise.
945
946 config MULTIFACE_III_TTY
947         tristate "Multiface Card III serial support"
948         depends on APUS
949         help
950           If you want to use a Multiface III card's serial port in Linux,
951           answer Y.
952
953           To compile this driver as a module, choose M here.
954
955 config A2232
956         tristate "Commodore A2232 serial support (EXPERIMENTAL)"
957         depends on EXPERIMENTAL && APUS
958         ---help---
959           This option supports the 2232 7-port serial card shipped with the
960           Amiga 2000 and other Zorro-bus machines, dating from 1989.  At
961           a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip
962           each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The
963           ports were connected with 8 pin DIN connectors on the card bracket,
964           for which 8 pin to DB25 adapters were supplied. The card also had
965           jumpers internally to toggle various pinning configurations.
966
967           This driver can be built as a module; but then "generic_serial"
968           will also be built as a module. This has to be loaded before
969           "ser_a2232". If you want to do this, answer M here.
970
971 config WHIPPET_SERIAL
972         tristate "Hisoft Whippet PCMCIA serial support"
973         depends on AMIGA_PCMCIA
974         help
975           HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
976           is no listing for the Whippet in their Amiga section.
977
978 config APNE
979         tristate "PCMCIA NE2000 support"
980         depends on AMIGA_PCMCIA
981         help
982           If you have a PCMCIA NE2000 compatible adapter, say Y.  Otherwise,
983           say N.
984
985           To compile this driver as a module, choose M here: the
986           module will be called apne.
987
988 config SERIAL_CONSOLE
989         bool "Support for serial port console"
990         depends on APUS && (AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y)
991
992 config HEARTBEAT
993         bool "Use power LED as a heartbeat"
994         depends on APUS
995         help
996           Use the power-on LED on your machine as a load meter.  The exact
997           behavior is platform-dependent, but normally the flash frequency is
998           a hyperbolic function of the 5-minute load average.
999
1000 config PROC_HARDWARE
1001         bool "/proc/hardware support"
1002         depends on APUS
1003
1004 source "drivers/zorro/Kconfig"
1005
1006 endmenu
1007
1008 menu "Bus options"
1009
1010 config ISA
1011         bool "Support for ISA-bus hardware"
1012         depends on PPC_PREP || PPC_CHRP
1013         help
1014           Find out whether you have ISA slots on your motherboard.  ISA is the
1015           name of a bus system, i.e. the way the CPU talks to the other stuff
1016           inside your box.  If you have an Apple machine, say N here; if you
1017           have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
1018           you have an embedded board, consult your board documentation.
1019
1020 config GENERIC_ISA_DMA
1021         bool
1022         depends on POWER3 || POWER4 || 6xx && !CPM2
1023         default y
1024
1025 config EISA
1026         bool
1027         help
1028           The Extended Industry Standard Architecture (EISA) bus is a bus
1029           architecture used on some older intel-based PCs.
1030
1031 config SBUS
1032         bool
1033
1034 # Yes MCA RS/6000s exist but Linux-PPC does not currently support any
1035 config MCA
1036         bool
1037
1038 config PCI
1039         bool "PCI support" if 40x || CPM2 || 85xx
1040         default y if !40x && !CPM2 && !8xx && !APUS && !85xx
1041         default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
1042         default PCI_QSPAN if !4xx && !CPM2 && 8xx
1043         help
1044           Find out whether your system includes a PCI bus. PCI is the name of
1045           a bus system, i.e. the way the CPU talks to the other stuff inside
1046           your box.  If you say Y here, the kernel will include drivers and
1047           infrastructure code to support PCI bus devices.
1048
1049 config PCI_DOMAINS
1050         bool
1051         default PCI
1052
1053 config PCI_QSPAN
1054         bool "QSpan PCI"
1055         depends on !4xx && !CPM2 && 8xx
1056         help
1057           Say Y here if you have a system based on a Motorola 8xx-series
1058           embedded processor with a QSPAN PCI interface, otherwise say N.
1059
1060 config PCI_8260
1061         bool
1062         depends on PCI && 8260 && !8272
1063         default y
1064
1065 config 8260_PCI9
1066         bool "  Enable workaround for MPC826x erratum PCI 9"
1067         depends on PCI_8260
1068         default y
1069
1070 choice
1071         prompt "  IDMA channel for PCI 9 workaround"
1072         depends on 8260_PCI9
1073
1074 config 8260_PCI9_IDMA1
1075         bool "IDMA1"
1076
1077 config 8260_PCI9_IDMA2
1078         bool "IDMA2"
1079
1080 config 8260_PCI9_IDMA3
1081         bool "IDMA3"
1082
1083 config 8260_PCI9_IDMA4
1084         bool "IDMA4"
1085
1086 endchoice
1087
1088 config PCI_PERMEDIA
1089         bool "PCI for Permedia2"
1090         depends on !4xx && !8xx && APUS
1091
1092 source "drivers/pci/Kconfig"
1093
1094 source "drivers/pcmcia/Kconfig"
1095
1096 endmenu
1097
1098 menu "Advanced setup"
1099
1100 config ADVANCED_OPTIONS
1101         bool "Prompt for advanced kernel configuration options"
1102         help
1103           This option will enable prompting for a variety of advanced kernel
1104           configuration options.  These options can cause the kernel to not
1105           work if they are set incorrectly, but can be used to optimize certain
1106           aspects of kernel memory management.
1107
1108           Unless you know what you are doing, say N here.
1109
1110 comment "Default settings for advanced configuration options are used"
1111         depends on !ADVANCED_OPTIONS
1112
1113 config HIGHMEM_START_BOOL
1114         bool "Set high memory pool address"
1115         depends on ADVANCED_OPTIONS && HIGHMEM
1116         help
1117           This option allows you to set the base address of the kernel virtual
1118           area used to map high memory pages.  This can be useful in
1119           optimizing the layout of kernel virtual memory.
1120
1121           Say N here unless you know what you are doing.
1122
1123 config HIGHMEM_START
1124         hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
1125         default "0xfe000000"
1126
1127 config LOWMEM_SIZE_BOOL
1128         bool "Set maximum low memory"
1129         depends on ADVANCED_OPTIONS
1130         help
1131           This option allows you to set the maximum amount of memory which
1132           will be used as "low memory", that is, memory which the kernel can
1133           access directly, without having to set up a kernel virtual mapping.
1134           This can be useful in optimizing the layout of kernel virtual
1135           memory.
1136
1137           Say N here unless you know what you are doing.
1138
1139 config LOWMEM_SIZE
1140         hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
1141         default "0x30000000"
1142
1143 config KERNEL_START_BOOL
1144         bool "Set custom kernel base address"
1145         depends on ADVANCED_OPTIONS
1146         help
1147           This option allows you to set the kernel virtual address at which
1148           the kernel will map low memory (the kernel image will be linked at
1149           this address).  This can be useful in optimizing the virtual memory
1150           layout of the system.
1151
1152           Say N here unless you know what you are doing.
1153
1154 config KERNEL_START
1155         hex "Virtual address of kernel base" if KERNEL_START_BOOL
1156         default "0xc0000000"
1157
1158 config TASK_SIZE_BOOL
1159         bool "Set custom user task size"
1160         depends on ADVANCED_OPTIONS
1161         help
1162           This option allows you to set the amount of virtual address space
1163           allocated to user tasks.  This can be useful in optimizing the
1164           virtual memory layout of the system.
1165
1166           Say N here unless you know what you are doing.
1167
1168 config TASK_SIZE
1169         hex "Size of user task space" if TASK_SIZE_BOOL
1170         default "0x80000000"
1171
1172 config CONSISTENT_START_BOOL
1173         bool "Set custom consistent memory pool address"
1174         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1175         help
1176           This option allows you to set the base virtual address
1177           of the the consistent memory pool.  This pool of virtual
1178           memory is used to make consistent memory allocations.
1179
1180 config CONSISTENT_START
1181         hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
1182         default "0xff100000" if NOT_COHERENT_CACHE
1183
1184 config CONSISTENT_SIZE_BOOL
1185         bool "Set custom consistent memory pool size"
1186         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1187         help
1188           This option allows you to set the size of the the
1189           consistent memory pool.  This pool of virtual memory
1190           is used to make consistent memory allocations.
1191
1192 config CONSISTENT_SIZE
1193         hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
1194         default "0x00200000" if NOT_COHERENT_CACHE
1195
1196 config BOOT_LOAD_BOOL
1197         bool "Set the boot link/load address"
1198         depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
1199         help
1200           This option allows you to set the initial load address of the zImage
1201           or zImage.initrd file.  This can be useful if you are on a board
1202           which has a small amount of memory.
1203
1204           Say N here unless you know what you are doing.
1205
1206 config BOOT_LOAD
1207         hex "Link/load address for booting" if BOOT_LOAD_BOOL
1208         default "0x00400000" if 40x || 8xx || 8260
1209         default "0x01000000" if 44x
1210         default "0x00800000"
1211
1212 config PIN_TLB
1213         bool "Pinned Kernel TLBs (860 ONLY)"
1214         depends on ADVANCED_OPTIONS && 8xx
1215 endmenu
1216
1217 source "drivers/Kconfig"
1218
1219 source "fs/Kconfig"
1220
1221 source "arch/ppc/8xx_io/Kconfig"
1222
1223 source "arch/ppc/8260_io/Kconfig"
1224
1225
1226 menu "IBM 40x options"
1227         depends on 40x
1228
1229 config SERIAL_SICC
1230         bool "SICC Serial port"
1231         depends on STB03xxx
1232
1233 config UART1_DFLT_CONSOLE
1234         bool
1235         depends on SERIAL_SICC && UART0_TTYS1
1236         default y
1237
1238 config SERIAL_SICC_CONSOLE
1239         bool
1240         depends on SERIAL_SICC && UART0_TTYS1
1241         default y
1242
1243 endmenu
1244
1245 source "lib/Kconfig"
1246
1247 source "arch/ppc/oprofile/Kconfig"
1248
1249 source "arch/ppc/Kconfig.debug"
1250
1251 source "kernel/vserver/Kconfig"
1252
1253 source "security/Kconfig"
1254
1255 source "crypto/Kconfig"