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