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/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, 8260), the IBM embedded versions
52           (403 and 405) and the high end 64 bit Power processors (POWER 3,
53           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 82xx family has a 603e core, specific
58           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 linux/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 KATANA
511         bool "Artesyn-Katana"
512
513 config DMV182
514         bool "Dy-4 SVME/DMV-182"
515
516 config WILLOW
517         bool "Cogent-Willow"
518
519 config PCORE
520         bool "Force-PowerCore"
521
522 config POWERPMC250
523         bool "Force-PowerPMC250"
524
525 config EV64260
526         bool "Marvell-EV64260BP"
527         help
528           Select EV64260 if configuring of a Marvell (formerly Galileo)
529           EV64260BP Evaluation platofm.
530
531 config SPRUCE
532         bool "IBM-Spruce"
533
534 config LOPEC
535         bool "Motorola-LoPEC"
536
537 config MCPN765
538         bool "Motorola-MCPN765"
539
540 config MVME5100
541         bool "Motorola-MVME5100"
542
543 config PPLUS
544         bool "Motorola-PowerPlus"
545
546 config PRPMC750
547         bool "Motorola-PrPMC750"
548
549 config PRPMC800
550         bool "Motorola-PrPMC800"
551
552 config SANDPOINT
553         bool "Motorola-Sandpoint"
554         help
555           Select SANDPOINT if configuring for a Motorola Sandpoint X3
556           (any flavor).
557
558 config ADIR
559         bool "SBS-Adirondack"
560
561 config K2
562         bool "SBS-K2"
563
564 config PAL4
565         bool "SBS-Palomar4"
566
567 config GEMINI
568         bool "Synergy-Gemini"
569         help
570           Select Gemini if configuring for a Synergy Microsystems' Gemini
571           series Single Board Computer.  More information is available at:
572           <http://www.synergymicro.com/PressRel/97_10_15.html>.
573
574 config EST8260
575         bool "EST8260"
576         ---help---
577           The EST8260 is a single-board computer manufactured by Wind River
578           Systems, Inc. (formerly Embedded Support Tools Corp.) and based on
579           the MPC8260.  Wind River Systems has a website at
580           <http://www.windriver.com/>, but the EST8260 cannot be found on it
581           and has probably been discontinued or rebadged.
582
583 config SBC82xx
584         bool "SBC82xx"
585         ---help---
586           SBC PowerQUICC II, single-board computer with MPC82xx CPU
587           Manufacturer: Wind River Systems, Inc.
588           Date of Release: May 2003
589           End of Life: -
590           URL: <http://www.windriver.com/>
591
592 config SBS8260
593         bool "SBS8260"
594
595 config RPX6
596         bool "RPXSUPER"
597
598 config TQM8260
599         bool "TQM8260"
600         ---help---
601           MPC8260 based module, little larger than credit card,
602           up to 128 MB global + 64 MB local RAM, 32 MB Flash,
603           32 kB EEPROM, 256 kB L@ Cache, 10baseT + 100baseT Ethernet,
604           2 x serial ports, ...
605           Manufacturer: TQ Components, www.tq-group.de
606           Date of Release: June 2001
607           End of Life: not yet :-)
608           URL: <http://www.denx.de/PDF/TQM82xx_SPEC_Rev005.pdf>
609
610 config ADS8272
611         bool "ADS8272"
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 8260
631         bool "CPM2 Support" if WILLOW
632         depends on 6xx
633         default y if TQM8260 || RPXSUPER || EST8260 || SBS8260 || SBC82xx
634         help
635           The MPC8260 is a typical embedded CPU made by Motorola.  Selecting
636           this option means that you wish to build a kernel for a machine with
637           an 8260 class CPU.
638
639 config 8272
640         bool
641         depends on 6xx
642         default y if ADS8272
643         select 8260
644         help
645           The MPC8272 CPM has a different internal dpram setup than other CPM2
646           devices
647
648 config CPM2
649         bool
650         depends on 8260
651         default y
652         help
653           The CPM2 (Communications Processor Module) is a coprocessor on
654           embedded CPUs made by Motorola.  Selecting this option means that
655           you wish to build a kernel for a machine with a CPM2 coprocessor
656           on it (826x, 827x, 8560).
657
658 config PPC_CHRP
659         bool
660         depends on PPC_MULTIPLATFORM
661         default y
662
663 config PPC_PMAC
664         bool
665         depends on PPC_MULTIPLATFORM
666         default y
667
668 config PPC_PMAC64
669         bool
670         depends on PPC_PMAC && POWER4
671         default y
672
673 config PPC_PREP
674         bool
675         depends on PPC_MULTIPLATFORM
676         default y
677
678 config PPC_OF
679         bool
680         depends on PPC_PMAC || PPC_CHRP
681         default y
682
683 menu "Set bridge options"
684         depends on MV64X60
685
686 config MV64X60_BASE
687         hex "Set bridge base used by firmware"
688         default "0xf1000000"
689         help
690           A firmware can leave the base address of the bridge's registers at
691           a non-standard location.  If so, set this value to reflect the
692           address of that non-standard location.
693
694 config MV64X60_NEW_BASE
695         hex "Set bridge base used by kernel"
696         default "0xf1000000"
697         help
698           If the current base address of the bridge's registers is not where
699           you want it, set this value to the address that you want it moved to.
700
701 endmenu
702
703 config PPC_GEN550
704         bool
705         depends on SANDPOINT || MCPN765 || SPRUCE || PPLUS || PCORE || PRPMC750 || K2 || PRPMC800 || (EV64260 && !MV64X60_MPSC) || DMV182
706         default y
707
708 config FORCE
709         bool
710         depends on 6xx && (PCORE || POWERPMC250)
711         default y
712
713 config GT64260
714         bool
715         depends on EV64260
716         default y
717
718 config MV64360
719         bool
720         depends on KATANA || DMV182
721         default y
722
723 config MV64X60
724         bool
725         depends on (GT64260 || MV64360)
726         default y
727
728 config NONMONARCH_SUPPORT
729         bool "Enable Non-Monarch Support"
730         depends on PRPMC800
731
732 config HARRIER
733         bool
734         depends on PRPMC800
735         default y
736
737 config EPIC_SERIAL_MODE
738         bool
739         depends on 6xx && (LOPEC || SANDPOINT)
740         default y
741
742 config MPC10X_BRIDGE
743         bool
744         depends on PCORE || POWERPMC250 || LOPEC || SANDPOINT
745         default y
746
747 config FSL_OCP
748         bool
749         depends on MPC10X_BRIDGE
750         default y
751
752 config MPC10X_OPENPIC
753         bool
754         depends on POWERPMC250 || LOPEC || SANDPOINT
755         default y
756
757 config MPC10X_STORE_GATHERING
758         bool "Enable MPC10x store gathering"
759         depends on MPC10X_BRIDGE
760
761 config CPC710_DATA_GATHERING
762         bool "Enable CPC710 data gathering"
763         depends on K2
764
765 config HARRIER_STORE_GATHERING
766         bool "Enable Harrier store gathering"
767         depends on HARRIER
768
769 config MVME5100_IPMC761_PRESENT
770         bool "MVME5100 configured with an IPMC761"
771         depends on MVME5100
772
773 config SPRUCE_BAUD_33M
774         bool "Spruce baud clock support"
775         depends on SPRUCE
776
777 config PC_KEYBOARD
778         bool "PC PS/2 style Keyboard"
779         depends on 4xx || CPM2
780
781 config SERIAL_CONSOLE
782         bool
783         depends on 8xx
784         default y
785
786 config PPCBUG_NVRAM
787         bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
788         default y if PPC_PREP
789
790 config SMP
791         bool "Symmetric multi-processing support"
792         ---help---
793           This enables support for systems with more than one CPU. If you have
794           a system with only one CPU, say N. If you have a system with more
795           than one CPU, say Y.  Note that the kernel does not currently
796           support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
797           since they have inadequate hardware support for multiprocessor
798           operation.
799
800           If you say N here, the kernel will run on single and multiprocessor
801           machines, but will use only one CPU of a multiprocessor machine. If
802           you say Y here, the kernel will run on single-processor machines.
803           On a single-processor machine, the kernel will run faster if you say
804           N here.
805
806           If you don't know what to do here, say N.
807
808 config IRQ_ALL_CPUS
809         bool "Distribute interrupts on all CPUs by default"
810         depends on SMP
811         help
812           This option gives the kernel permission to distribute IRQs across
813           multiple CPUs.  Saying N here will route all IRQs to the first
814           CPU.  Generally saying Y is safe, although some problems have been
815           reported with SMP Power Macintoshes with this option enabled.
816
817 config NR_CPUS
818         int "Maximum number of CPUs (2-32)"
819         range 2 32
820         depends on SMP
821         default "4"
822
823 config PREEMPT
824         bool "Preemptible Kernel"
825         help
826           This option reduces the latency of the kernel when reacting to
827           real-time or interactive events by allowing a low priority process to
828           be preempted even if it is in kernel mode executing a system call.
829
830           Say Y here if you are building a kernel for a desktop, embedded
831           or real-time system.  Say N if you are unsure.
832
833 config HIGHMEM
834         bool "High memory support"
835
836 config KERNEL_ELF
837         bool
838         default y
839
840 source "fs/Kconfig.binfmt"
841
842 config PROC_DEVICETREE
843         bool "Support for Open Firmware device tree in /proc"
844         depends on PPC_OF && PROC_FS
845         help
846           This option adds a device-tree directory under /proc which contains
847           an image of the device tree that the kernel copies from Open
848           Firmware. If unsure, say Y here.
849
850 config PPC_RTAS
851         bool "Support for RTAS (RunTime Abstraction Services) in /proc"
852         depends on PPC_OF && PROC_FS
853         ---help---
854           When you use this option, you will be able to use RTAS from
855           userspace.
856
857           RTAS stands for RunTime Abstraction Services and should
858           provide a portable way to access and set system information. This is
859           commonly used on RS/6000 (pSeries) computers.
860
861           You can access RTAS via the special proc file system entry rtas.
862           Don't confuse this rtas entry with the one in /proc/device-tree/rtas
863           which is readonly.
864
865           If you don't know if you can use RTAS look into
866           /proc/device-tree/rtas. If there are some entries, it is very likely
867           that you will be able to use RTAS.
868
869           You can do cool things with rtas. To print out information about
870           various sensors in the system, just do a
871
872           $ cat /proc/rtas/sensors
873
874           or if you power off your machine at night but want it running when
875           you enter your office at 7:45 am, do a
876
877           # date -d 'tomorrow 7:30' +%s > /proc/rtas/poweron
878
879           and shutdown.
880
881           If unsure, say Y.
882
883 config PREP_RESIDUAL
884         bool "Support for PReP Residual Data"
885         depends on PPC_PREP
886         help
887           Some PReP systems have residual data passed to the kernel by the
888           firmware.  This allows detection of memory size, devices present and
889           other useful pieces of information.  Sometimes this information is
890           not present or incorrect.
891
892           Unless you expect to boot on a PReP system, there is no need to
893           select Y.
894
895 config PROC_PREPRESIDUAL
896         bool "Support for reading of PReP Residual Data in /proc"
897         depends on PREP_RESIDUAL && PROC_FS
898         help
899           Enabling this option will create a /proc/residual file which allows
900           you to get at the residual data on PReP systems.  You will need a tool
901           (lsresidual) to parse it.  If you aren't on a PReP system, you don't
902           want this.
903
904 config CMDLINE_BOOL
905         bool "Default bootloader kernel arguments"
906
907 config CMDLINE
908         string "Initial kernel command string"
909         depends on CMDLINE_BOOL
910         default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
911         help
912           On some platforms, there is currently no way for the boot loader to
913           pass arguments to the kernel. For these platforms, you can supply
914           some command-line options at build time by entering them here.  In
915           most cases you will need to specify the root device here.
916
917 config AMIGA
918         bool
919         depends on APUS
920         default y
921         help
922           This option enables support for the Amiga series of computers.
923
924 config ZORRO
925         bool
926         depends on APUS
927         default y
928         help
929           This enables support for the Zorro bus in the Amiga. If you have
930           expansion cards in your Amiga that conform to the Amiga
931           AutoConfig(tm) specification, say Y, otherwise N. Note that even
932           expansion cards that do not fit in the Zorro slots but fit in e.g.
933           the CPU slot may fall in this category, so you have to say Y to let
934           Linux use these.
935
936 config ABSTRACT_CONSOLE
937         bool
938         depends on APUS
939         default y
940
941 config APUS_FAST_EXCEPT
942         bool
943         depends on APUS
944         default y
945
946 config AMIGA_PCMCIA
947         bool "Amiga 1200/600 PCMCIA support"
948         depends on APUS && EXPERIMENTAL
949         help
950           Include support in the kernel for pcmcia on Amiga 1200 and Amiga
951           600. If you intend to use pcmcia cards say Y; otherwise say N.
952
953 config AMIGA_BUILTIN_SERIAL
954         tristate "Amiga builtin serial support"
955         depends on APUS
956         help
957           If you want to use your Amiga's built-in serial port in Linux,
958           answer Y.
959
960           To compile this driver as a module, choose M here.
961
962 config GVPIOEXT
963         tristate "GVP IO-Extender support"
964         depends on APUS
965         help
966           If you want to use a GVP IO-Extender serial card in Linux, say Y.
967           Otherwise, say N.
968
969 config GVPIOEXT_LP
970         tristate "GVP IO-Extender parallel printer support"
971         depends on GVPIOEXT
972         help
973           Say Y to enable driving a printer from the parallel port on your
974           GVP IO-Extender card, N otherwise.
975
976 config GVPIOEXT_PLIP
977         tristate "GVP IO-Extender PLIP support"
978         depends on GVPIOEXT
979         help
980           Say Y to enable doing IP over the parallel port on your GVP
981           IO-Extender card, N otherwise.
982
983 config MULTIFACE_III_TTY
984         tristate "Multiface Card III serial support"
985         depends on APUS
986         help
987           If you want to use a Multiface III card's serial port in Linux,
988           answer Y.
989
990           To compile this driver as a module, choose M here.
991
992 config A2232
993         tristate "Commodore A2232 serial support (EXPERIMENTAL)"
994         depends on EXPERIMENTAL && APUS
995         ---help---
996           This option supports the 2232 7-port serial card shipped with the
997           Amiga 2000 and other Zorro-bus machines, dating from 1989.  At
998           a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip
999           each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The
1000           ports were connected with 8 pin DIN connectors on the card bracket,
1001           for which 8 pin to DB25 adapters were supplied. The card also had
1002           jumpers internally to toggle various pinning configurations.
1003
1004           This driver can be built as a module; but then "generic_serial"
1005           will also be built as a module. This has to be loaded before
1006           "ser_a2232". If you want to do this, answer M here.
1007
1008 config WHIPPET_SERIAL
1009         tristate "Hisoft Whippet PCMCIA serial support"
1010         depends on AMIGA_PCMCIA
1011         help
1012           HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
1013           is no listing for the Whippet in their Amiga section.
1014
1015 config APNE
1016         tristate "PCMCIA NE2000 support"
1017         depends on AMIGA_PCMCIA
1018         help
1019           If you have a PCMCIA NE2000 compatible adapter, say Y.  Otherwise,
1020           say N.
1021
1022           To compile this driver as a module, choose M here: the
1023           module will be called apne.
1024
1025 config SERIAL_CONSOLE
1026         bool "Support for serial port console"
1027         depends on APUS && (AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y)
1028
1029 config HEARTBEAT
1030         bool "Use power LED as a heartbeat"
1031         depends on APUS
1032         help
1033           Use the power-on LED on your machine as a load meter.  The exact
1034           behavior is platform-dependent, but normally the flash frequency is
1035           a hyperbolic function of the 5-minute load average.
1036
1037 config PROC_HARDWARE
1038         bool "/proc/hardware support"
1039         depends on APUS
1040
1041 source "drivers/zorro/Kconfig"
1042
1043 endmenu
1044
1045 menu "Bus options"
1046
1047 config ISA
1048         bool "Support for ISA-bus hardware"
1049         depends on PPC_PREP || PPC_CHRP
1050         help
1051           Find out whether you have ISA slots on your motherboard.  ISA is the
1052           name of a bus system, i.e. the way the CPU talks to the other stuff
1053           inside your box.  If you have an Apple machine, say N here; if you
1054           have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
1055           you have an embedded board, consult your board documentation.
1056
1057 config GENERIC_ISA_DMA
1058         bool
1059         depends on POWER3 || POWER4 || 6xx && !CPM2
1060         default y
1061
1062 config EISA
1063         bool
1064         help
1065           The Extended Industry Standard Architecture (EISA) bus is a bus
1066           architecture used on some older intel-based PCs.
1067
1068 config SBUS
1069         bool
1070
1071 # Yes MCA RS/6000s exist but Linux-PPC does not currently support any
1072 config MCA
1073         bool
1074
1075 config PCI
1076         bool "PCI support" if 40x || CPM2 || 85xx
1077         default y if !40x && !CPM2 && !8xx && !APUS && !85xx
1078         default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
1079         default PCI_QSPAN if !4xx && !CPM2 && 8xx
1080         help
1081           Find out whether your system includes a PCI bus. PCI is the name of
1082           a bus system, i.e. the way the CPU talks to the other stuff inside
1083           your box.  If you say Y here, the kernel will include drivers and
1084           infrastructure code to support PCI bus devices.
1085
1086 config PCI_DOMAINS
1087         bool
1088         default PCI
1089
1090 config PCI_QSPAN
1091         bool "QSpan PCI"
1092         depends on !4xx && !CPM2 && 8xx
1093         help
1094           Say Y here if you have a system based on a Motorola 8xx-series
1095           embedded processor with a QSPAN PCI interface, otherwise say N.
1096
1097 config PCI_8260
1098         bool
1099         depends on PCI && 8260 && !8272
1100         default y
1101         
1102 config 8260_PCI9
1103         bool "  Enable workaround for MPC826x erratum PCI 9"
1104         depends on PCI_8260
1105         default y
1106
1107 choice 
1108         prompt "  IDMA channel for PCI 9 workaround"
1109         depends on 8260_PCI9
1110
1111 config 8260_PCI9_IDMA1
1112         bool "IDMA1"
1113
1114 config 8260_PCI9_IDMA2
1115         bool "IDMA2"
1116
1117 config 8260_PCI9_IDMA3
1118         bool "IDMA3"
1119
1120 config 8260_PCI9_IDMA4
1121         bool "IDMA4"
1122
1123 endchoice
1124
1125 config PCI_PERMEDIA
1126         bool "PCI for Permedia2"
1127         depends on !4xx && !8xx && APUS
1128
1129 source "drivers/pci/Kconfig"
1130
1131 source "drivers/pcmcia/Kconfig"
1132
1133 endmenu
1134
1135 menu "Advanced setup"
1136
1137 config ADVANCED_OPTIONS
1138         bool "Prompt for advanced kernel configuration options"
1139         help
1140           This option will enable prompting for a variety of advanced kernel
1141           configuration options.  These options can cause the kernel to not
1142           work if they are set incorrectly, but can be used to optimize certain
1143           aspects of kernel memory management.
1144
1145           Unless you know what you are doing, say N here.
1146
1147 comment "Default settings for advanced configuration options are used"
1148         depends on !ADVANCED_OPTIONS
1149
1150 config HIGHMEM_START_BOOL
1151         bool "Set high memory pool address"
1152         depends on ADVANCED_OPTIONS && HIGHMEM
1153         help
1154           This option allows you to set the base address of the kernel virtual
1155           area used to map high memory pages.  This can be useful in
1156           optimizing the layout of kernel virtual memory.
1157
1158           Say N here unless you know what you are doing.
1159
1160 config HIGHMEM_START
1161         hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
1162         default "0xfe000000"
1163
1164 config LOWMEM_SIZE_BOOL
1165         bool "Set maximum low memory"
1166         depends on ADVANCED_OPTIONS
1167         help
1168           This option allows you to set the maximum amount of memory which
1169           will be used as "low memory", that is, memory which the kernel can
1170           access directly, without having to set up a kernel virtual mapping.
1171           This can be useful in optimizing the layout of kernel virtual
1172           memory.
1173
1174           Say N here unless you know what you are doing.
1175
1176 config LOWMEM_SIZE
1177         hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
1178         default "0x30000000"
1179
1180 config KERNEL_START_BOOL
1181         bool "Set custom kernel base address"
1182         depends on ADVANCED_OPTIONS
1183         help
1184           This option allows you to set the kernel virtual address at which
1185           the kernel will map low memory (the kernel image will be linked at
1186           this address).  This can be useful in optimizing the virtual memory
1187           layout of the system.
1188
1189           Say N here unless you know what you are doing.
1190
1191 config KERNEL_START
1192         hex "Virtual address of kernel base" if KERNEL_START_BOOL
1193         default "0xc0000000"
1194
1195 config TASK_SIZE_BOOL
1196         bool "Set custom user task size"
1197         depends on ADVANCED_OPTIONS
1198         help
1199           This option allows you to set the amount of virtual address space
1200           allocated to user tasks.  This can be useful in optimizing the
1201           virtual memory layout of the system.
1202
1203           Say N here unless you know what you are doing.
1204
1205 config TASK_SIZE
1206         hex "Size of user task space" if TASK_SIZE_BOOL
1207         default "0x80000000"
1208
1209 config CONSISTENT_START_BOOL
1210         bool "Set custom consistent memory pool address"
1211         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1212         help
1213           This option allows you to set the base virtual address
1214           of the the consistent memory pool.  This pool of virtual
1215           memory is used to make consistent memory allocations.
1216
1217 config CONSISTENT_START
1218         hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
1219         default "0xff100000" if NOT_COHERENT_CACHE
1220
1221 config CONSISTENT_SIZE_BOOL
1222         bool "Set custom consistent memory pool size"
1223         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1224         help
1225           This option allows you to set the size of the the
1226           consistent memory pool.  This pool of virtual memory
1227           is used to make consistent memory allocations.
1228
1229 config CONSISTENT_SIZE
1230         hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
1231         default "0x00200000" if NOT_COHERENT_CACHE
1232
1233 config BOOT_LOAD_BOOL
1234         bool "Set the boot link/load address"
1235         depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
1236         help
1237           This option allows you to set the initial load address of the zImage
1238           or zImage.initrd file.  This can be useful if you are on a board
1239           which has a small amount of memory.
1240
1241           Say N here unless you know what you are doing.
1242
1243 config BOOT_LOAD
1244         hex "Link/load address for booting" if BOOT_LOAD_BOOL
1245         default "0x00400000" if 40x || 8xx || 8260
1246         default "0x01000000" if 44x
1247         default "0x00800000"
1248
1249 config PIN_TLB
1250         bool "Pinned Kernel TLBs (860 ONLY)"
1251         depends on ADVANCED_OPTIONS && 8xx
1252 endmenu
1253
1254 source "drivers/Kconfig"
1255
1256 source "fs/Kconfig"
1257
1258 source "arch/ppc/8xx_io/Kconfig"
1259
1260 source "arch/ppc/8260_io/Kconfig"
1261
1262
1263 menu "IBM 40x options"
1264         depends on 40x
1265
1266 config SERIAL_SICC
1267         bool "SICC Serial port"
1268         depends on STB03xxx
1269
1270 config UART1_DFLT_CONSOLE
1271         bool
1272         depends on SERIAL_SICC && UART0_TTYS1
1273         default y
1274
1275 config SERIAL_SICC_CONSOLE
1276         bool
1277         depends on SERIAL_SICC && UART0_TTYS1
1278         default y
1279
1280 endmenu
1281
1282 source "lib/Kconfig"
1283
1284 source "arch/ppc/oprofile/Kconfig"
1285
1286 menu "Kernel hacking"
1287
1288 config DEBUG_KERNEL
1289         bool "Kernel debugging"
1290
1291 config DEBUG_SLAB
1292         bool "Debug memory allocations"
1293         depends on DEBUG_KERNEL
1294
1295 config MAGIC_SYSRQ
1296         bool "Magic SysRq key"
1297         depends on DEBUG_KERNEL
1298         help
1299           If you say Y here, you will have some control over the system even
1300           if the system crashes for example during kernel debugging (e.g., you
1301           will be able to flush the buffer cache to disk, reboot the system
1302           immediately or dump some status information). This is accomplished
1303           by pressing various keys while holding SysRq (Alt+PrintScreen). It
1304           also works on a serial console (on PC hardware at least), if you
1305           send a BREAK and then within 5 seconds a command keypress. The
1306           keys are documented in <file:Documentation/sysrq.txt>. Don't say Y
1307           unless you really know what this hack does.
1308
1309 config DEBUG_SPINLOCK
1310         bool "Spinlock debugging"
1311         depends on DEBUG_KERNEL
1312         help
1313           Say Y here and to CONFIG_SMP to include code to check for missing
1314           spinlock initialization and some other common spinlock errors.
1315
1316 config DEBUG_HIGHMEM
1317         bool "Highmem debugging"
1318         depends on DEBUG_KERNEL && HIGHMEM
1319         help
1320           This options enables additional error checking for high memory
1321           systems.  Disable for production systems.
1322
1323 config DEBUG_SPINLOCK_SLEEP
1324         bool "Sleep-inside-spinlock checking"
1325         depends on DEBUG_KERNEL
1326         help
1327           If you say Y here, various routines which may sleep will become very
1328           noisy if they are called with a spinlock held.
1329
1330 config KGDB
1331         bool "Include kgdb kernel debugger"
1332         depends on DEBUG_KERNEL
1333         select DEBUG_INFO
1334         help
1335           Include in-kernel hooks for kgdb, the Linux kernel source level
1336           debugger.  See <http://kgdb.sourceforge.net/> for more information.
1337           Unless you are intending to debug the kernel, say N here.
1338
1339 choice
1340         prompt "Serial Port"
1341         depends on KGDB
1342         default KGDB_TTYS1
1343
1344 config KGDB_TTYS0
1345         bool "ttyS0"
1346
1347 config KGDB_TTYS1
1348         bool "ttyS1"
1349
1350 config KGDB_TTYS2
1351         bool "ttyS2"
1352
1353 config KGDB_TTYS3
1354         bool "ttyS3"
1355
1356 endchoice
1357
1358 config KGDB_CONSOLE
1359         bool "Enable serial console thru kgdb port"
1360         depends on KGDB && 8xx || CPM2
1361         help
1362           If you enable this, all serial console messages will be sent
1363           over the gdb stub.
1364           If unsure, say N.
1365
1366 config XMON
1367         bool "Include xmon kernel debugger"
1368         depends on DEBUG_KERNEL
1369         help
1370           Include in-kernel hooks for the xmon kernel monitor/debugger.
1371           Unless you are intending to debug the kernel, say N here.
1372
1373 config BDI_SWITCH
1374         bool "Include BDI-2000 user context switcher"
1375         depends on DEBUG_KERNEL
1376         help
1377           Include in-kernel support for the Abatron BDI2000 debugger.
1378           Unless you are intending to debug the kernel with one of these
1379           machines, say N here.
1380
1381 config DEBUG_INFO
1382         bool "Compile the kernel with debug info"
1383         depends on DEBUG_KERNEL
1384         help
1385           If you say Y here the resulting kernel image will include
1386           debugging info resulting in a larger kernel image.
1387           Say Y here only if you plan to use some sort of debugger to
1388           debug the kernel.
1389           If you don't debug the kernel, you can say N.
1390
1391 config BOOTX_TEXT
1392         bool "Support for early boot text console (BootX or OpenFirmware only)"
1393         depends PPC_OF
1394         help
1395           Say Y here to see progress messages from the boot firmware in text
1396           mode. Requires either BootX or Open Firmware.
1397
1398 config SERIAL_TEXT_DEBUG
1399         bool "Support for early boot texts over serial port"
1400         depends on 4xx || LOPEC || MV64X60 || PPLUS || PRPMC800 || PPC_GEN550
1401
1402 config PPC_OCP
1403         bool
1404         depends on IBM_OCP || FSL_OCP || MV64X60
1405         default y
1406
1407 endmenu
1408
1409 source "kernel/vserver/Kconfig"
1410
1411 source "security/Kconfig"
1412
1413 source "crypto/Kconfig"