Introduce CONFIG_VIRT_TO_BUS
[linux-2.6.git] / arch / powerpc / 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 PPC64
8         bool "64-bit kernel"
9         default n
10         help
11           This option selects whether a 32-bit or a 64-bit kernel
12           will be built.
13
14 config PPC_PM_NEEDS_RTC_LIB
15         bool
16         select RTC_LIB
17         default y if PM
18
19 config PPC32
20         bool
21         default y if !PPC64
22
23 config 64BIT
24         bool
25         default y if PPC64
26
27 config PPC_MERGE
28         def_bool y
29
30 config MMU
31         bool
32         default y
33
34 config GENERIC_HARDIRQS
35         bool
36         default y
37
38 config IRQ_PER_CPU
39         bool
40         default y
41
42 config RWSEM_GENERIC_SPINLOCK
43         bool
44
45 config RWSEM_XCHGADD_ALGORITHM
46         bool
47         default y
48
49 config ARCH_HAS_ILOG2_U32
50         bool
51         default y
52
53 config ARCH_HAS_ILOG2_U64
54         bool
55         default y if 64BIT
56
57 config GENERIC_HWEIGHT
58         bool
59         default y
60
61 config GENERIC_CALIBRATE_DELAY
62         bool
63         default y
64
65 config GENERIC_FIND_NEXT_BIT
66         bool
67         default y
68
69 config ARCH_NO_VIRT_TO_BUS
70         def_bool PPC64
71
72 config PPC
73         bool
74         default y
75
76 config EARLY_PRINTK
77         bool
78         default y
79
80 config COMPAT
81         bool
82         default y if PPC64
83
84 config SYSVIPC_COMPAT
85         bool
86         depends on COMPAT && SYSVIPC
87         default y
88
89 # All PPC32s use generic nvram driver through ppc_md
90 config GENERIC_NVRAM
91         bool
92         default y if PPC32
93
94 config SCHED_NO_NO_OMIT_FRAME_POINTER
95         bool
96         default y
97
98 config ARCH_MAY_HAVE_PC_FDC
99         bool
100         default !PPC_PSERIES || PCI
101
102 config PPC_OF
103         def_bool y
104
105 config PPC_UDBG_16550
106         bool
107         default n
108
109 config GENERIC_TBSYNC
110         bool
111         default y if PPC32 && SMP
112         default n
113
114 config AUDIT_ARCH
115         bool
116         default y
117
118 config GENERIC_BUG
119         bool
120         default y
121         depends on BUG
122
123 config SYS_SUPPORTS_APM_EMULATION
124         default y if PMAC_APM_EMU
125         bool
126
127 config DEFAULT_UIMAGE
128         bool
129         help
130           Used to allow a board to specify it wants a uImage built by default
131         default n
132
133 config PPC64_SWSUSP
134         bool
135         depends on PPC64 && (BROKEN || (PPC_PMAC64 && EXPERIMENTAL))
136         default y
137
138 menu "Processor support"
139 choice
140         prompt "Processor Type"
141         depends on PPC32
142         default 6xx
143
144 config CLASSIC32
145         bool "52xx/6xx/7xx/74xx"
146         select PPC_FPU
147         select 6xx
148         help
149           There are four families of PowerPC chips supported.  The more common
150           types (601, 603, 604, 740, 750, 7400), the Motorola embedded
151           versions (821, 823, 850, 855, 860, 52xx, 82xx, 83xx), the AMCC
152           embedded versions (403 and 405) and the high end 64 bit Power
153           processors (POWER 3, POWER4, and IBM PPC970 also known as G5).
154
155           This option is the catch-all for 6xx types, including some of the
156           embedded versions.  Unless there is see an option for the specific
157           chip family you are using, you want this option.
158           
159           You do not want this if you are building a kernel for a 64 bit
160           IBM RS/6000 or an Apple G5, choose 6xx.
161           
162           If unsure, select this option
163           
164           Note that the kernel runs in 32-bit mode even on 64-bit chips.
165
166 config PPC_82xx
167         bool "Freescale 82xx"
168         select 6xx
169         select PPC_FPU
170
171 config PPC_83xx
172         bool "Freescale 83xx"
173         select 6xx
174         select FSL_SOC
175         select 83xx
176         select PPC_FPU
177         select WANT_DEVICE_TREE
178
179 config PPC_85xx
180         bool "Freescale 85xx"
181         select E500
182         select FSL_SOC
183         select 85xx
184         select WANT_DEVICE_TREE
185
186 config PPC_86xx
187         bool "Freescale 86xx"
188         select 6xx
189         select FSL_SOC
190         select FSL_PCIE
191         select PPC_FPU
192         select ALTIVEC
193         help
194           The Freescale E600 SoCs have 74xx cores.
195
196 config PPC_8xx
197         bool "Freescale 8xx"
198         select FSL_SOC
199         select 8xx
200
201 config 40x
202         bool "AMCC 40x"
203         select PPC_DCR_NATIVE
204
205 config 44x
206         bool "AMCC 44x"
207         select PPC_DCR_NATIVE
208         select WANT_DEVICE_TREE
209
210 config E200
211         bool "Freescale e200"
212
213 endchoice
214
215 config POWER4_ONLY
216         bool "Optimize for POWER4"
217         depends on PPC64
218         default n
219         ---help---
220           Cause the compiler to optimize for POWER4/POWER5/PPC970 processors.
221           The resulting binary will not work on POWER3 or RS64 processors
222           when compiled with binutils 2.15 or later.
223
224 config POWER3
225         bool
226         depends on PPC64
227         default y if !POWER4_ONLY
228
229 config POWER4
230         depends on PPC64
231         def_bool y
232
233 config 6xx
234         bool
235
236 # this is temp to handle compat with arch=ppc
237 config 8xx
238         bool
239
240 # this is temp to handle compat with arch=ppc
241 config 83xx
242         bool
243
244 # this is temp to handle compat with arch=ppc
245 config 85xx
246         bool
247
248 config E500
249         bool
250
251 config PPC_FPU
252         bool
253         default y if PPC64
254
255 config PPC_DCR_NATIVE
256         bool
257         default n
258
259 config PPC_DCR_MMIO
260         bool
261         default n
262
263 config PPC_DCR
264         bool
265         depends on PPC_DCR_NATIVE || PPC_DCR_MMIO
266         default y
267
268 config PPC_OF_PLATFORM_PCI
269         bool
270         depends on PPC64 # not supported on 32 bits yet
271         default n
272
273 config 4xx
274         bool
275         depends on 40x || 44x
276         default y
277
278 config BOOKE
279         bool
280         depends on E200 || E500 || 44x
281         default y
282
283 config FSL_BOOKE
284         bool
285         depends on E200 || E500
286         default y
287
288 config PTE_64BIT
289         bool
290         depends on 44x || E500
291         default y if 44x
292         default y if E500 && PHYS_64BIT
293
294 config PHYS_64BIT
295         bool 'Large physical address support' if E500
296         depends on 44x || E500
297         select RESOURCES_64BIT
298         default y if 44x
299         ---help---
300           This option enables kernel support for larger than 32-bit physical
301           addresses.  This features is not be available on all e500 cores.
302
303           If in doubt, say N here.
304
305 config ALTIVEC
306         bool "AltiVec Support"
307         depends on CLASSIC32 || POWER4
308         ---help---
309           This option enables kernel support for the Altivec extensions to the
310           PowerPC processor. The kernel currently supports saving and restoring
311           altivec registers, and turning on the 'altivec enable' bit so user
312           processes can execute altivec instructions.
313
314           This option is only usefully if you have a processor that supports
315           altivec (G4, otherwise known as 74xx series), but does not have
316           any affect on a non-altivec cpu (it does, however add code to the
317           kernel).
318
319           If in doubt, say Y here.
320
321 config SPE
322         bool "SPE Support"
323         depends on E200 || E500
324         default y
325         ---help---
326           This option enables kernel support for the Signal Processing
327           Extensions (SPE) to the PowerPC processor. The kernel currently
328           supports saving and restoring SPE registers, and turning on the
329           'spe enable' bit so user processes can execute SPE instructions.
330
331           This option is only useful if you have a processor that supports
332           SPE (e500, otherwise known as 85xx series), but does not have any
333           effect on a non-spe cpu (it does, however add code to the kernel).
334
335           If in doubt, say Y here.
336
337 config PPC_STD_MMU
338         bool
339         depends on 6xx || POWER3 || POWER4 || PPC64
340         default y
341
342 config PPC_STD_MMU_32
343         def_bool y
344         depends on PPC_STD_MMU && PPC32
345
346 config PPC_MM_SLICES
347         bool
348         default y if HUGETLB_PAGE
349         default n
350
351 config VIRT_CPU_ACCOUNTING
352         bool "Deterministic task and CPU time accounting"
353         depends on PPC64
354         default y
355         help
356           Select this option to enable more accurate task and CPU time
357           accounting.  This is done by reading a CPU counter on each
358           kernel entry and exit and on transitions within the kernel
359           between system, softirq and hardirq state, so there is a
360           small performance impact.  This also enables accounting of
361           stolen time on logically-partitioned systems running on
362           IBM POWER5-based machines.
363
364           If in doubt, say Y here.
365
366 config SMP
367         depends on PPC_STD_MMU
368         bool "Symmetric multi-processing support"
369         ---help---
370           This enables support for systems with more than one CPU. If you have
371           a system with only one CPU, say N. If you have a system with more
372           than one CPU, say Y.  Note that the kernel does not currently
373           support SMP machines with 603/603e/603ev or PPC750 ("G3") processors
374           since they have inadequate hardware support for multiprocessor
375           operation.
376
377           If you say N here, the kernel will run on single and multiprocessor
378           machines, but will use only one CPU of a multiprocessor machine. If
379           you say Y here, the kernel will run on single-processor machines.
380           On a single-processor machine, the kernel will run faster if you say
381           N here.
382
383           If you don't know what to do here, say N.
384
385 config NR_CPUS
386         int "Maximum number of CPUs (2-128)"
387         range 2 128
388         depends on SMP
389         default "32" if PPC64
390         default "4"
391
392 config NOT_COHERENT_CACHE
393         bool
394         depends on 4xx || 8xx || E200
395         default y
396
397 config CONFIG_CHECK_CACHE_COHERENCY
398         bool
399 endmenu
400
401 source "init/Kconfig"
402
403 source "arch/powerpc/platforms/Kconfig"
404
405 menu "Kernel options"
406
407 config HIGHMEM
408         bool "High memory support"
409         depends on PPC32
410
411 source kernel/Kconfig.hz
412 source kernel/Kconfig.preempt
413 source "fs/Kconfig.binfmt"
414
415 # We optimistically allocate largepages from the VM, so make the limit
416 # large enough (16MB). This badly named config option is actually
417 # max order + 1
418 config FORCE_MAX_ZONEORDER
419         int
420         depends on PPC64
421         default "9" if PPC_64K_PAGES
422         default "13"
423
424 config MATH_EMULATION
425         bool "Math emulation"
426         depends on 4xx || 8xx || E200 || PPC_MPC832x || E500
427         ---help---
428           Some PowerPC chips designed for embedded applications do not have
429           a floating-point unit and therefore do not implement the
430           floating-point instructions in the PowerPC instruction set.  If you
431           say Y here, the kernel will include code to emulate a floating-point
432           unit, which will allow programs that use floating-point
433           instructions to run.
434
435 config IOMMU_VMERGE
436         bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
437         depends on EXPERIMENTAL && PPC64
438         default n
439         help
440           Cause IO segments sent to a device for DMA to be merged virtually
441           by the IOMMU when they happen to have been allocated contiguously.
442           This doesn't add pressure to the IOMMU allocator. However, some
443           drivers don't support getting large merged segments coming back
444           from *_map_sg(). Say Y if you know the drivers you are using are
445           properly handling this case.
446
447 config HOTPLUG_CPU
448         bool "Support for enabling/disabling CPUs"
449         depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
450         ---help---
451           Say Y here to be able to disable and re-enable individual
452           CPUs at runtime on SMP machines.
453
454           Say N if you are unsure.
455
456 config ARCH_ENABLE_MEMORY_HOTPLUG
457         def_bool y
458
459 config KEXEC
460         bool "kexec system call (EXPERIMENTAL)"
461         depends on (PPC_PRPMC2800 || PPC_MULTIPLATFORM) && EXPERIMENTAL
462         help
463           kexec is a system call that implements the ability to shutdown your
464           current kernel, and to start another kernel.  It is like a reboot
465           but it is independent of the system firmware.   And like a reboot
466           you can start any kernel with it, not just Linux.
467
468           The name comes from the similarity to the exec system call.
469
470           It is an ongoing process to be certain the hardware in a machine
471           is properly shutdown, so do not be surprised if this code does not
472           initially work for you.  It may help to enable device hotplugging
473           support.  As of this writing the exact hardware interface is
474           strongly in flux, so no good recommendation can be made.
475
476 config CRASH_DUMP
477         bool "Build a kdump crash kernel (EXPERIMENTAL)"
478         depends on PPC_MULTIPLATFORM && PPC64 && EXPERIMENTAL
479         help
480           Build a kernel suitable for use as a kdump capture kernel.
481           The kernel will be linked at a different address than normal, and
482           so can only be used for Kdump.
483
484           Don't change this unless you know what you are doing.
485
486 config PPCBUG_NVRAM
487         bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
488         default y if PPC_PREP
489
490 config IRQ_ALL_CPUS
491         bool "Distribute interrupts on all CPUs by default"
492         depends on SMP && !MV64360
493         help
494           This option gives the kernel permission to distribute IRQs across
495           multiple CPUs.  Saying N here will route all IRQs to the first
496           CPU.  Generally saying Y is safe, although some problems have been
497           reported with SMP Power Macintoshes with this option enabled.
498
499 config NUMA
500         bool "NUMA support"
501         depends on PPC64
502         default y if SMP && PPC_PSERIES
503
504 config NODES_SHIFT
505         int
506         default "4"
507         depends on NEED_MULTIPLE_NODES
508
509 config ARCH_SELECT_MEMORY_MODEL
510         def_bool y
511         depends on PPC64
512
513 config ARCH_FLATMEM_ENABLE
514         def_bool y
515         depends on (PPC64 && !NUMA) || PPC32
516
517 config ARCH_SPARSEMEM_ENABLE
518         def_bool y
519         depends on PPC64
520
521 config ARCH_SPARSEMEM_DEFAULT
522         def_bool y
523         depends on (SMP && PPC_PSERIES) || PPC_PS3
524
525 config ARCH_POPULATES_NODE_MAP
526         def_bool y
527
528 source "mm/Kconfig"
529
530 config ARCH_MEMORY_PROBE
531         def_bool y
532         depends on MEMORY_HOTPLUG
533
534 # Some NUMA nodes have memory ranges that span
535 # other nodes.  Even though a pfn is valid and
536 # between a node's start and end pfns, it may not
537 # reside on that node.  See memmap_init_zone()
538 # for details.
539 config NODES_SPAN_OTHER_NODES
540         def_bool y
541         depends on NEED_MULTIPLE_NODES
542
543 config PPC_HAS_HASH_64K
544         bool
545         depends on PPC64
546         default n
547
548 config PPC_64K_PAGES
549         bool "64k page size"
550         depends on PPC64
551         select PPC_HAS_HASH_64K
552         help
553           This option changes the kernel logical page size to 64k. On machines
554           without processor support for 64k pages, the kernel will simulate
555           them by loading each individual 4k page on demand transparently,
556           while on hardware with such support, it will be used to map
557           normal application pages.
558
559 config SCHED_SMT
560         bool "SMT (Hyperthreading) scheduler support"
561         depends on PPC64 && SMP
562         help
563           SMT scheduler support improves the CPU scheduler's decision making
564           when dealing with POWER5 cpus at a cost of slightly increased
565           overhead in some places. If unsure say N here.
566
567 config PROC_DEVICETREE
568         bool "Support for device tree in /proc"
569         depends on PROC_FS
570         help
571           This option adds a device-tree directory under /proc which contains
572           an image of the device tree that the kernel copies from Open
573           Firmware or other boot firmware. If unsure, say Y here.
574
575 config CMDLINE_BOOL
576         bool "Default bootloader kernel arguments"
577
578 config CMDLINE
579         string "Initial kernel command string"
580         depends on CMDLINE_BOOL
581         default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
582         help
583           On some platforms, there is currently no way for the boot loader to
584           pass arguments to the kernel. For these platforms, you can supply
585           some command-line options at build time by entering them here.  In
586           most cases you will need to specify the root device here.
587
588 if !44x || BROKEN
589 source kernel/power/Kconfig
590 endif
591
592 config SECCOMP
593         bool "Enable seccomp to safely compute untrusted bytecode"
594         depends on PROC_FS
595         default y
596         help
597           This kernel feature is useful for number crunching applications
598           that may need to compute untrusted bytecode during their
599           execution. By using pipes or other transports made available to
600           the process as file descriptors supporting the read/write
601           syscalls, it's possible to isolate those applications in
602           their own address space using seccomp. Once seccomp is
603           enabled via /proc/<pid>/seccomp, it cannot be disabled
604           and the task is only allowed to execute a few safe syscalls
605           defined by each seccomp mode.
606
607           If unsure, say Y. Only embedded should say N here.
608
609 config WANT_DEVICE_TREE
610         bool
611         default n
612
613 config DEVICE_TREE
614         string "Static device tree source file"
615         depends on WANT_DEVICE_TREE
616         help
617           This specifies the device tree source (.dts) file to be
618           compiled and included when building the bootwrapper.  If a
619           relative filename is given, then it will be relative to
620           arch/powerpc/boot/dts.  If you are not using the bootwrapper,
621           or do not need to build a dts into the bootwrapper, this
622           field is ignored.
623
624           For example, this is required when building a cuImage target
625           for an older U-Boot, which cannot pass a device tree itself.
626           Such a kernel will not work with a newer U-Boot that tries to
627           pass a device tree (unless you tell it not to).  If your U-Boot
628           does not mention a device tree in "help bootm", then use the
629           cuImage target and specify a device tree here.  Otherwise, use
630           the uImage target and leave this field blank.
631
632 endmenu
633
634 config ISA_DMA_API
635         bool
636         default y
637
638 menu "Bus options"
639
640 config ISA
641         bool "Support for ISA-bus hardware"
642         depends on PPC_PREP || PPC_CHRP
643         select PPC_I8259
644         help
645           Find out whether you have ISA slots on your motherboard.  ISA is the
646           name of a bus system, i.e. the way the CPU talks to the other stuff
647           inside your box.  If you have an Apple machine, say N here; if you
648           have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
649           you have an embedded board, consult your board documentation.
650
651 config ZONE_DMA
652         bool
653         default y
654
655 config GENERIC_ISA_DMA
656         bool
657         depends on PPC64 || POWER4 || 6xx && !CPM2
658         default y
659
660 config PPC_INDIRECT_PCI
661         bool
662         depends on PCI
663         default y if 40x || 44x
664         default n
665
666 config PPC_INDIRECT_PCI_BE
667         bool
668         depends PPC_INDIRECT_PCI
669         default n
670
671 config EISA
672         bool
673
674 config SBUS
675         bool
676
677 config FSL_SOC
678         bool
679
680 config FSL_PCIE
681         bool
682         depends on PPC_86xx
683
684 # Yes MCA RS/6000s exist but Linux-PPC does not currently support any
685 config MCA
686         bool
687
688 config PCI
689         bool "PCI support" if 40x || CPM2 || PPC_83xx || PPC_85xx || PPC_86xx \
690                 || PPC_MPC52xx || (EMBEDDED && (PPC_PSERIES || PPC_ISERIES)) \
691                 || MPC7448HPC2 || PPC_PS3 || PPC_HOLLY
692         default y if !40x && !CPM2 && !8xx && !APUS && !PPC_83xx \
693                 && !PPC_85xx && !PPC_86xx
694         default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
695         default PCI_QSPAN if !4xx && !CPM2 && 8xx
696         select ARCH_SUPPORTS_MSI
697         help
698           Find out whether your system includes a PCI bus. PCI is the name of
699           a bus system, i.e. the way the CPU talks to the other stuff inside
700           your box.  If you say Y here, the kernel will include drivers and
701           infrastructure code to support PCI bus devices.
702
703 config PCI_DOMAINS
704         def_bool PCI
705
706 config PCI_SYSCALL
707         def_bool PCI
708
709 config PCI_QSPAN
710         bool "QSpan PCI"
711         depends on !4xx && !CPM2 && 8xx
712         select PPC_I8259
713         help
714           Say Y here if you have a system based on a Motorola 8xx-series
715           embedded processor with a QSPAN PCI interface, otherwise say N.
716
717 config PCI_8260
718         bool
719         depends on PCI && 8260
720         select PPC_INDIRECT_PCI
721         default y
722
723 config 8260_PCI9
724         bool "Enable workaround for MPC826x erratum PCI 9"
725         depends on PCI_8260 && !ADS8272
726         default y
727
728 choice
729         prompt "IDMA channel for PCI 9 workaround"
730         depends on 8260_PCI9
731
732 config 8260_PCI9_IDMA1
733         bool "IDMA1"
734
735 config 8260_PCI9_IDMA2
736         bool "IDMA2"
737
738 config 8260_PCI9_IDMA3
739         bool "IDMA3"
740
741 config 8260_PCI9_IDMA4
742         bool "IDMA4"
743
744 endchoice
745
746 source "drivers/pci/pcie/Kconfig"
747
748 source "drivers/pci/Kconfig"
749
750 source "drivers/pcmcia/Kconfig"
751
752 source "drivers/pci/hotplug/Kconfig"
753
754 endmenu
755
756 menu "Advanced setup"
757         depends on PPC32
758
759 config ADVANCED_OPTIONS
760         bool "Prompt for advanced kernel configuration options"
761         help
762           This option will enable prompting for a variety of advanced kernel
763           configuration options.  These options can cause the kernel to not
764           work if they are set incorrectly, but can be used to optimize certain
765           aspects of kernel memory management.
766
767           Unless you know what you are doing, say N here.
768
769 comment "Default settings for advanced configuration options are used"
770         depends on !ADVANCED_OPTIONS
771
772 config HIGHMEM_START_BOOL
773         bool "Set high memory pool address"
774         depends on ADVANCED_OPTIONS && HIGHMEM
775         help
776           This option allows you to set the base address of the kernel virtual
777           area used to map high memory pages.  This can be useful in
778           optimizing the layout of kernel virtual memory.
779
780           Say N here unless you know what you are doing.
781
782 config HIGHMEM_START
783         hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
784         default "0xfe000000"
785
786 config LOWMEM_SIZE_BOOL
787         bool "Set maximum low memory"
788         depends on ADVANCED_OPTIONS
789         help
790           This option allows you to set the maximum amount of memory which
791           will be used as "low memory", that is, memory which the kernel can
792           access directly, without having to set up a kernel virtual mapping.
793           This can be useful in optimizing the layout of kernel virtual
794           memory.
795
796           Say N here unless you know what you are doing.
797
798 config LOWMEM_SIZE
799         hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
800         default "0x30000000"
801
802 config KERNEL_START_BOOL
803         bool "Set custom kernel base address"
804         depends on ADVANCED_OPTIONS
805         help
806           This option allows you to set the kernel virtual address at which
807           the kernel will map low memory (the kernel image will be linked at
808           this address).  This can be useful in optimizing the virtual memory
809           layout of the system.
810
811           Say N here unless you know what you are doing.
812
813 config KERNEL_START
814         hex "Virtual address of kernel base" if KERNEL_START_BOOL
815         default "0xc0000000"
816
817 config TASK_SIZE_BOOL
818         bool "Set custom user task size"
819         depends on ADVANCED_OPTIONS
820         help
821           This option allows you to set the amount of virtual address space
822           allocated to user tasks.  This can be useful in optimizing the
823           virtual memory layout of the system.
824
825           Say N here unless you know what you are doing.
826
827 config TASK_SIZE
828         hex "Size of user task space" if TASK_SIZE_BOOL
829         default "0x80000000"
830
831 config CONSISTENT_START_BOOL
832         bool "Set custom consistent memory pool address"
833         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
834         help
835           This option allows you to set the base virtual address
836           of the consistent memory pool.  This pool of virtual
837           memory is used to make consistent memory allocations.
838
839 config CONSISTENT_START
840         hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
841         default "0xff100000" if NOT_COHERENT_CACHE
842
843 config CONSISTENT_SIZE_BOOL
844         bool "Set custom consistent memory pool size"
845         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
846         help
847           This option allows you to set the size of the
848           consistent memory pool.  This pool of virtual memory
849           is used to make consistent memory allocations.
850
851 config CONSISTENT_SIZE
852         hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
853         default "0x00200000" if NOT_COHERENT_CACHE
854
855 config BOOT_LOAD_BOOL
856         bool "Set the boot link/load address"
857         depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
858         help
859           This option allows you to set the initial load address of the zImage
860           or zImage.initrd file.  This can be useful if you are on a board
861           which has a small amount of memory.
862
863           Say N here unless you know what you are doing.
864
865 config BOOT_LOAD
866         hex "Link/load address for booting" if BOOT_LOAD_BOOL
867         default "0x00400000" if 40x || 8xx || 8260
868         default "0x01000000" if 44x
869         default "0x00800000"
870
871 config PIN_TLB
872         bool "Pinned Kernel TLBs (860 ONLY)"
873         depends on ADVANCED_OPTIONS && 8xx
874 endmenu
875
876 if PPC64
877 config KERNEL_START
878         hex
879         default "0xc000000000000000"
880 endif
881
882 source "net/Kconfig"
883
884 source "drivers/Kconfig"
885
886 source "fs/Kconfig"
887
888 # XXX source "arch/ppc/8xx_io/Kconfig"
889
890 # XXX source "arch/ppc/8260_io/Kconfig"
891
892 source "arch/powerpc/sysdev/qe_lib/Kconfig"
893
894 source "lib/Kconfig"
895
896 menu "Instrumentation Support"
897         depends on EXPERIMENTAL
898
899 source "arch/powerpc/oprofile/Kconfig"
900
901 config KPROBES
902         bool "Kprobes (EXPERIMENTAL)"
903         depends on !BOOKE && !4xx && KALLSYMS && EXPERIMENTAL && MODULES
904         help
905           Kprobes allows you to trap at almost any kernel address and
906           execute a callback function.  register_kprobe() establishes
907           a probepoint and specifies the callback.  Kprobes is useful
908           for kernel debugging, non-intrusive instrumentation and testing.
909           If in doubt, say "N".
910 endmenu
911
912 source "arch/powerpc/Kconfig.debug"
913
914 source "security/Kconfig"
915
916 config KEYS_COMPAT
917         bool
918         depends on COMPAT && KEYS
919         default y
920
921 source "crypto/Kconfig"