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