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