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