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