blob: 848f43970a4b4cd7123e0fa188e34ddd18ce20c3 [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
Linus Torvalds1da177e2005-04-16 15:20:36 -0700829config MPC10X_OPENPIC
830 bool
831 depends on POWERPMC250 || LOPEC || SANDPOINT
832 default y
833
834config MPC10X_STORE_GATHERING
835 bool "Enable MPC10x store gathering"
836 depends on MPC10X_BRIDGE
837
838config CPC710_DATA_GATHERING
839 bool "Enable CPC710 data gathering"
840 depends on K2
841
842config HARRIER_STORE_GATHERING
843 bool "Enable Harrier store gathering"
844 depends on HARRIER
845
846config MVME5100_IPMC761_PRESENT
847 bool "MVME5100 configured with an IPMC761"
848 depends on MVME5100
849
850config SPRUCE_BAUD_33M
851 bool "Spruce baud clock support"
852 depends on SPRUCE
853
854config PC_KEYBOARD
855 bool "PC PS/2 style Keyboard"
856 depends on 4xx || CPM2
857
858config PPCBUG_NVRAM
859 bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
860 default y if PPC_PREP
861
862config SMP
863 bool "Symmetric multi-processing support"
864 ---help---
865 This enables support for systems with more than one CPU. If you have
866 a system with only one CPU, say N. If you have a system with more
867 than one CPU, say Y. Note that the kernel does not currently
868 support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
869 since they have inadequate hardware support for multiprocessor
870 operation.
871
872 If you say N here, the kernel will run on single and multiprocessor
873 machines, but will use only one CPU of a multiprocessor machine. If
874 you say Y here, the kernel will run on single-processor machines.
875 On a single-processor machine, the kernel will run faster if you say
876 N here.
877
878 If you don't know what to do here, say N.
879
880config IRQ_ALL_CPUS
881 bool "Distribute interrupts on all CPUs by default"
882 depends on SMP
883 help
884 This option gives the kernel permission to distribute IRQs across
885 multiple CPUs. Saying N here will route all IRQs to the first
886 CPU. Generally saying Y is safe, although some problems have been
887 reported with SMP Power Macintoshes with this option enabled.
888
889config NR_CPUS
890 int "Maximum number of CPUs (2-32)"
891 range 2 32
892 depends on SMP
893 default "4"
894
895config PREEMPT
896 bool "Preemptible Kernel"
897 help
898 This option reduces the latency of the kernel when reacting to
899 real-time or interactive events by allowing a low priority process to
900 be preempted even if it is in kernel mode executing a system call.
901
902 Say Y here if you are building a kernel for a desktop, embedded
903 or real-time system. Say N if you are unsure.
904
905config HIGHMEM
906 bool "High memory support"
907
Dave Hansen3f22ab22005-06-23 00:07:43 -0700908source "mm/Kconfig"
909
Linus Torvalds1da177e2005-04-16 15:20:36 -0700910source "fs/Kconfig.binfmt"
911
912config PROC_DEVICETREE
913 bool "Support for Open Firmware device tree in /proc"
914 depends on PPC_OF && PROC_FS
915 help
916 This option adds a device-tree directory under /proc which contains
917 an image of the device tree that the kernel copies from Open
918 Firmware. If unsure, say Y here.
919
920config PREP_RESIDUAL
921 bool "Support for PReP Residual Data"
922 depends on PPC_PREP
923 help
924 Some PReP systems have residual data passed to the kernel by the
925 firmware. This allows detection of memory size, devices present and
926 other useful pieces of information. Sometimes this information is
927 not present or incorrect, in which case it could lead to the machine
928 behaving incorrectly. If this happens, either disable PREP_RESIDUAL
929 or pass the 'noresidual' option to the kernel.
930
931 If you are running a PReP system, say Y here, otherwise say N.
932
933config PROC_PREPRESIDUAL
934 bool "Support for reading of PReP Residual Data in /proc"
935 depends on PREP_RESIDUAL && PROC_FS
936 help
937 Enabling this option will create a /proc/residual file which allows
938 you to get at the residual data on PReP systems. You will need a tool
939 (lsresidual) to parse it. If you aren't on a PReP system, you don't
940 want this.
941
942config CMDLINE_BOOL
943 bool "Default bootloader kernel arguments"
944
945config CMDLINE
946 string "Initial kernel command string"
947 depends on CMDLINE_BOOL
948 default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
949 help
950 On some platforms, there is currently no way for the boot loader to
951 pass arguments to the kernel. For these platforms, you can supply
952 some command-line options at build time by entering them here. In
953 most cases you will need to specify the root device here.
954
955config AMIGA
956 bool
957 depends on APUS
958 default y
959 help
960 This option enables support for the Amiga series of computers.
961
962config ZORRO
963 bool
964 depends on APUS
965 default y
966 help
967 This enables support for the Zorro bus in the Amiga. If you have
968 expansion cards in your Amiga that conform to the Amiga
969 AutoConfig(tm) specification, say Y, otherwise N. Note that even
970 expansion cards that do not fit in the Zorro slots but fit in e.g.
971 the CPU slot may fall in this category, so you have to say Y to let
972 Linux use these.
973
974config ABSTRACT_CONSOLE
975 bool
976 depends on APUS
977 default y
978
979config APUS_FAST_EXCEPT
980 bool
981 depends on APUS
982 default y
983
984config AMIGA_PCMCIA
985 bool "Amiga 1200/600 PCMCIA support"
986 depends on APUS && EXPERIMENTAL
987 help
988 Include support in the kernel for pcmcia on Amiga 1200 and Amiga
989 600. If you intend to use pcmcia cards say Y; otherwise say N.
990
991config AMIGA_BUILTIN_SERIAL
992 tristate "Amiga builtin serial support"
993 depends on APUS
994 help
995 If you want to use your Amiga's built-in serial port in Linux,
996 answer Y.
997
998 To compile this driver as a module, choose M here.
999
1000config GVPIOEXT
1001 tristate "GVP IO-Extender support"
1002 depends on APUS
1003 help
1004 If you want to use a GVP IO-Extender serial card in Linux, say Y.
1005 Otherwise, say N.
1006
1007config GVPIOEXT_LP
1008 tristate "GVP IO-Extender parallel printer support"
1009 depends on GVPIOEXT
1010 help
1011 Say Y to enable driving a printer from the parallel port on your
1012 GVP IO-Extender card, N otherwise.
1013
1014config GVPIOEXT_PLIP
1015 tristate "GVP IO-Extender PLIP support"
1016 depends on GVPIOEXT
1017 help
1018 Say Y to enable doing IP over the parallel port on your GVP
1019 IO-Extender card, N otherwise.
1020
1021config MULTIFACE_III_TTY
1022 tristate "Multiface Card III serial support"
1023 depends on APUS
1024 help
1025 If you want to use a Multiface III card's serial port in Linux,
1026 answer Y.
1027
1028 To compile this driver as a module, choose M here.
1029
1030config A2232
1031 tristate "Commodore A2232 serial support (EXPERIMENTAL)"
1032 depends on EXPERIMENTAL && APUS
1033 ---help---
1034 This option supports the 2232 7-port serial card shipped with the
1035 Amiga 2000 and other Zorro-bus machines, dating from 1989. At
1036 a max of 19,200 bps, the ports are served by a 6551 ACIA UART chip
1037 each, plus a 8520 CIA, and a master 6502 CPU and buffer as well. The
1038 ports were connected with 8 pin DIN connectors on the card bracket,
1039 for which 8 pin to DB25 adapters were supplied. The card also had
1040 jumpers internally to toggle various pinning configurations.
1041
1042 This driver can be built as a module; but then "generic_serial"
1043 will also be built as a module. This has to be loaded before
1044 "ser_a2232". If you want to do this, answer M here.
1045
1046config WHIPPET_SERIAL
1047 tristate "Hisoft Whippet PCMCIA serial support"
1048 depends on AMIGA_PCMCIA
1049 help
1050 HiSoft has a web page at <http://www.hisoft.co.uk/>, but there
1051 is no listing for the Whippet in their Amiga section.
1052
1053config APNE
1054 tristate "PCMCIA NE2000 support"
1055 depends on AMIGA_PCMCIA
1056 help
1057 If you have a PCMCIA NE2000 compatible adapter, say Y. Otherwise,
1058 say N.
1059
1060 To compile this driver as a module, choose M here: the
1061 module will be called apne.
1062
1063config SERIAL_CONSOLE
1064 bool "Support for serial port console"
1065 depends on APUS && (AMIGA_BUILTIN_SERIAL=y || GVPIOEXT=y || MULTIFACE_III_TTY=y)
1066
1067config HEARTBEAT
1068 bool "Use power LED as a heartbeat"
1069 depends on APUS
1070 help
1071 Use the power-on LED on your machine as a load meter. The exact
1072 behavior is platform-dependent, but normally the flash frequency is
1073 a hyperbolic function of the 5-minute load average.
1074
1075config PROC_HARDWARE
1076 bool "/proc/hardware support"
1077 depends on APUS
1078
1079source "drivers/zorro/Kconfig"
1080
1081source kernel/power/Kconfig
1082
David Woodhouseea9c1022005-05-08 15:56:09 +01001083config SECCOMP
1084 bool "Enable seccomp to safely compute untrusted bytecode"
1085 depends on PROC_FS
1086 default y
1087 help
1088 This kernel feature is useful for number crunching applications
1089 that may need to compute untrusted bytecode during their
1090 execution. By using pipes or other transports made available to
1091 the process as file descriptors supporting the read/write
1092 syscalls, it's possible to isolate those applications in
1093 their own address space using seccomp. Once seccomp is
1094 enabled via /proc/<pid>/seccomp, it cannot be disabled
1095 and the task is only allowed to execute a few safe syscalls
1096 defined by each seccomp mode.
1097
1098 If unsure, say Y. Only embedded should say N here.
1099
Linus Torvalds1da177e2005-04-16 15:20:36 -07001100endmenu
1101
Al Viro5cae8412005-05-04 05:39:22 +01001102config ISA_DMA_API
1103 bool
1104 default y
1105
Linus Torvalds1da177e2005-04-16 15:20:36 -07001106menu "Bus options"
1107
1108config ISA
1109 bool "Support for ISA-bus hardware"
1110 depends on PPC_PREP || PPC_CHRP
1111 help
1112 Find out whether you have ISA slots on your motherboard. ISA is the
1113 name of a bus system, i.e. the way the CPU talks to the other stuff
1114 inside your box. If you have an Apple machine, say N here; if you
1115 have an IBM RS/6000 or pSeries machine or a PReP machine, say Y. If
1116 you have an embedded board, consult your board documentation.
1117
1118config GENERIC_ISA_DMA
1119 bool
1120 depends on POWER3 || POWER4 || 6xx && !CPM2
1121 default y
1122
1123config EISA
1124 bool
1125 help
1126 The Extended Industry Standard Architecture (EISA) bus is a bus
1127 architecture used on some older intel-based PCs.
1128
1129config SBUS
1130 bool
1131
1132# Yes MCA RS/6000s exist but Linux-PPC does not currently support any
1133config MCA
1134 bool
1135
1136config PCI
1137 bool "PCI support" if 40x || CPM2 || 83xx || 85xx || PPC_MPC52xx
1138 default y if !40x && !CPM2 && !8xx && !APUS && !83xx && !85xx
1139 default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
1140 default PCI_QSPAN if !4xx && !CPM2 && 8xx
1141 help
1142 Find out whether your system includes a PCI bus. PCI is the name of
1143 a bus system, i.e. the way the CPU talks to the other stuff inside
1144 your box. If you say Y here, the kernel will include drivers and
1145 infrastructure code to support PCI bus devices.
1146
1147config PCI_DOMAINS
1148 bool
1149 default PCI
1150
1151config PCI_QSPAN
1152 bool "QSpan PCI"
1153 depends on !4xx && !CPM2 && 8xx
1154 help
1155 Say Y here if you have a system based on a Motorola 8xx-series
1156 embedded processor with a QSPAN PCI interface, otherwise say N.
1157
1158config PCI_8260
1159 bool
Vitaly Borduga6dbba72005-05-28 15:52:09 -07001160 depends on PCI && 8260
Linus Torvalds1da177e2005-04-16 15:20:36 -07001161 default y
1162
1163config 8260_PCI9
1164 bool " Enable workaround for MPC826x erratum PCI 9"
Vitaly Borduga6dbba72005-05-28 15:52:09 -07001165 depends on PCI_8260 && !ADS8272
Linus Torvalds1da177e2005-04-16 15:20:36 -07001166 default y
1167
1168choice
1169 prompt " IDMA channel for PCI 9 workaround"
1170 depends on 8260_PCI9
1171
1172config 8260_PCI9_IDMA1
1173 bool "IDMA1"
1174
1175config 8260_PCI9_IDMA2
1176 bool "IDMA2"
1177
1178config 8260_PCI9_IDMA3
1179 bool "IDMA3"
1180
1181config 8260_PCI9_IDMA4
1182 bool "IDMA4"
1183
1184endchoice
1185
1186config PCI_PERMEDIA
1187 bool "PCI for Permedia2"
1188 depends on !4xx && !8xx && APUS
1189
1190source "drivers/pci/Kconfig"
1191
1192source "drivers/pcmcia/Kconfig"
1193
1194endmenu
1195
1196menu "Advanced setup"
1197
1198config ADVANCED_OPTIONS
1199 bool "Prompt for advanced kernel configuration options"
1200 help
1201 This option will enable prompting for a variety of advanced kernel
1202 configuration options. These options can cause the kernel to not
1203 work if they are set incorrectly, but can be used to optimize certain
1204 aspects of kernel memory management.
1205
1206 Unless you know what you are doing, say N here.
1207
1208comment "Default settings for advanced configuration options are used"
1209 depends on !ADVANCED_OPTIONS
1210
1211config HIGHMEM_START_BOOL
1212 bool "Set high memory pool address"
1213 depends on ADVANCED_OPTIONS && HIGHMEM
1214 help
1215 This option allows you to set the base address of the kernel virtual
1216 area used to map high memory pages. This can be useful in
1217 optimizing the layout of kernel virtual memory.
1218
1219 Say N here unless you know what you are doing.
1220
1221config HIGHMEM_START
1222 hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
1223 default "0xfe000000"
1224
1225config LOWMEM_SIZE_BOOL
1226 bool "Set maximum low memory"
1227 depends on ADVANCED_OPTIONS
1228 help
1229 This option allows you to set the maximum amount of memory which
1230 will be used as "low memory", that is, memory which the kernel can
1231 access directly, without having to set up a kernel virtual mapping.
1232 This can be useful in optimizing the layout of kernel virtual
1233 memory.
1234
1235 Say N here unless you know what you are doing.
1236
1237config LOWMEM_SIZE
1238 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
1239 default "0x30000000"
1240
1241config KERNEL_START_BOOL
1242 bool "Set custom kernel base address"
1243 depends on ADVANCED_OPTIONS
1244 help
1245 This option allows you to set the kernel virtual address at which
1246 the kernel will map low memory (the kernel image will be linked at
1247 this address). This can be useful in optimizing the virtual memory
1248 layout of the system.
1249
1250 Say N here unless you know what you are doing.
1251
1252config KERNEL_START
1253 hex "Virtual address of kernel base" if KERNEL_START_BOOL
1254 default "0xc0000000"
1255
1256config TASK_SIZE_BOOL
1257 bool "Set custom user task size"
1258 depends on ADVANCED_OPTIONS
1259 help
1260 This option allows you to set the amount of virtual address space
1261 allocated to user tasks. This can be useful in optimizing the
1262 virtual memory layout of the system.
1263
1264 Say N here unless you know what you are doing.
1265
1266config TASK_SIZE
1267 hex "Size of user task space" if TASK_SIZE_BOOL
1268 default "0x80000000"
1269
1270config CONSISTENT_START_BOOL
1271 bool "Set custom consistent memory pool address"
1272 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1273 help
1274 This option allows you to set the base virtual address
1275 of the the consistent memory pool. This pool of virtual
1276 memory is used to make consistent memory allocations.
1277
1278config CONSISTENT_START
1279 hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
1280 default "0xff100000" if NOT_COHERENT_CACHE
1281
1282config CONSISTENT_SIZE_BOOL
1283 bool "Set custom consistent memory pool size"
1284 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
1285 help
1286 This option allows you to set the size of the the
1287 consistent memory pool. This pool of virtual memory
1288 is used to make consistent memory allocations.
1289
1290config CONSISTENT_SIZE
1291 hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
1292 default "0x00200000" if NOT_COHERENT_CACHE
1293
1294config BOOT_LOAD_BOOL
1295 bool "Set the boot link/load address"
1296 depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
1297 help
1298 This option allows you to set the initial load address of the zImage
1299 or zImage.initrd file. This can be useful if you are on a board
1300 which has a small amount of memory.
1301
1302 Say N here unless you know what you are doing.
1303
1304config BOOT_LOAD
1305 hex "Link/load address for booting" if BOOT_LOAD_BOOL
1306 default "0x00400000" if 40x || 8xx || 8260
1307 default "0x01000000" if 44x
1308 default "0x00800000"
1309
1310config PIN_TLB
1311 bool "Pinned Kernel TLBs (860 ONLY)"
1312 depends on ADVANCED_OPTIONS && 8xx
1313endmenu
1314
1315source "drivers/Kconfig"
1316
1317source "fs/Kconfig"
1318
1319source "arch/ppc/8xx_io/Kconfig"
1320
1321source "arch/ppc/8260_io/Kconfig"
1322
1323
1324menu "IBM 40x options"
1325 depends on 40x
1326
1327config SERIAL_SICC
1328 bool "SICC Serial port"
1329 depends on STB03xxx
1330
1331config UART1_DFLT_CONSOLE
1332 bool
1333 depends on SERIAL_SICC && UART0_TTYS1
1334 default y
1335
1336config SERIAL_SICC_CONSOLE
1337 bool
1338 depends on SERIAL_SICC && UART0_TTYS1
1339 default y
1340
1341endmenu
1342
1343source "lib/Kconfig"
1344
1345source "arch/ppc/oprofile/Kconfig"
1346
1347source "arch/ppc/Kconfig.debug"
1348
1349source "security/Kconfig"
1350
1351source "crypto/Kconfig"