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