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