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