powerpc: Merge i8259.c into arch/powerpc/sysdev
[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 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         default y
280
281 config PPC_CHRP
282         bool "  Common Hardware Reference Platform (CHRP) based machines"
283         depends on PPC_MULTIPLATFORM && PPC32
284         select PPC_I8259
285         select PPC_INDIRECT_PCI
286         default y
287
288 config PPC_PMAC
289         bool "  Apple PowerMac based machines"
290         depends on PPC_MULTIPLATFORM
291         select PPC_INDIRECT_PCI if PPC32
292         default y
293
294 config PPC_PMAC64
295         bool
296         depends on PPC_PMAC && POWER4
297         select U3_DART
298         default y
299
300 config PPC_PREP
301         bool "  PowerPC Reference Platform (PReP) based machines"
302         depends on PPC_MULTIPLATFORM && PPC32
303         select PPC_I8259
304         select PPC_INDIRECT_PCI
305         default y
306
307 config PPC_MAPLE
308         depends on PPC_MULTIPLATFORM && PPC64
309         bool "  Maple 970FX Evaluation Board"
310         select U3_DART
311         select MPIC_BROKEN_U3
312         default n
313         help
314           This option enables support for the Maple 970FX Evaluation Board.
315           For more informations, refer to <http://www.970eval.com>
316
317 config PPC_BPA
318         bool "  Broadband Processor Architecture"
319         depends on PPC_MULTIPLATFORM && PPC64
320
321 config PPC_OF
322         bool
323         depends on PPC_MULTIPLATFORM    # for now
324         default y
325
326 config XICS
327         depends on PPC_PSERIES
328         bool
329         default y
330
331 config U3_DART
332         bool 
333         depends on PPC_MULTIPLATFORM && PPC64
334         default n
335
336 config MPIC
337         depends on PPC_PSERIES || PPC_PMAC || PPC_MAPLE
338         bool
339         default y
340
341 config MPIC_BROKEN_U3
342         bool
343         depends on PPC_MAPLE
344         default y
345
346 config BPA_IIC
347         depends on PPC_BPA
348         bool
349         default y
350
351 config IBMVIO
352         depends on PPC_PSERIES || PPC_ISERIES
353         bool
354         default y
355
356 source "drivers/cpufreq/Kconfig"
357
358 config CPU_FREQ_PMAC
359         bool "Support for Apple PowerBooks"
360         depends on CPU_FREQ && ADB_PMU && PPC32
361         select CPU_FREQ_TABLE
362         help
363           This adds support for frequency switching on Apple PowerBooks,
364           this currently includes some models of iBook & Titanium
365           PowerBook.
366
367 config PPC601_SYNC_FIX
368         bool "Workarounds for PPC601 bugs"
369         depends on 6xx && (PPC_PREP || PPC_PMAC)
370         help
371           Some versions of the PPC601 (the first PowerPC chip) have bugs which
372           mean that extra synchronization instructions are required near
373           certain instructions, typically those that make major changes to the
374           CPU state.  These extra instructions reduce performance slightly.
375           If you say N here, these extra instructions will not be included,
376           resulting in a kernel which will run faster but may not run at all
377           on some systems with the PPC601 chip.
378
379           If in doubt, say Y here.
380
381 config TAU
382         bool "Thermal Management Support"
383         depends on 6xx
384         help
385           G3 and G4 processors have an on-chip temperature sensor called the
386           'Thermal Assist Unit (TAU)', which, in theory, can measure the on-die
387           temperature within 2-4 degrees Celsius. This option shows the current
388           on-die temperature in /proc/cpuinfo if the cpu supports it.
389
390           Unfortunately, on some chip revisions, this sensor is very inaccurate
391           and in some cases, does not work at all, so don't assume the cpu
392           temp is actually what /proc/cpuinfo says it is.
393
394 config TAU_INT
395         bool "Interrupt driven TAU driver (DANGEROUS)"
396         depends on TAU
397         ---help---
398           The TAU supports an interrupt driven mode which causes an interrupt
399           whenever the temperature goes out of range. This is the fastest way
400           to get notified the temp has exceeded a range. With this option off,
401           a timer is used to re-check the temperature periodically.
402
403           However, on some cpus it appears that the TAU interrupt hardware
404           is buggy and can cause a situation which would lead unexplained hard
405           lockups.
406
407           Unless you are extending the TAU driver, or enjoy kernel/hardware
408           debugging, leave this option off.
409
410 config TAU_AVERAGE
411         bool "Average high and low temp"
412         depends on TAU
413         ---help---
414           The TAU hardware can compare the temperature to an upper and lower
415           bound.  The default behavior is to show both the upper and lower
416           bound in /proc/cpuinfo. If the range is large, the temperature is
417           either changing a lot, or the TAU hardware is broken (likely on some
418           G4's). If the range is small (around 4 degrees), the temperature is
419           relatively stable.  If you say Y here, a single temperature value,
420           halfway between the upper and lower bounds, will be reported in
421           /proc/cpuinfo.
422
423           If in doubt, say N here.
424 endmenu
425
426 source arch/powerpc/platforms/embedded6xx/Kconfig
427 source arch/powerpc/platforms/4xx/Kconfig
428 source arch/powerpc/platforms/85xx/Kconfig
429 source arch/powerpc/platforms/8xx/Kconfig
430
431 menu "Kernel options"
432
433 config HIGHMEM
434         bool "High memory support"
435         depends on PPC32
436
437 source kernel/Kconfig.hz
438 source kernel/Kconfig.preempt
439 source "fs/Kconfig.binfmt"
440
441 # We optimistically allocate largepages from the VM, so make the limit
442 # large enough (16MB). This badly named config option is actually
443 # max order + 1
444 config FORCE_MAX_ZONEORDER
445         int
446         depends on PPC64
447         default "13"
448
449 config MATH_EMULATION
450         bool "Math emulation"
451         depends on 4xx || 8xx || E200 || E500
452         ---help---
453           Some PowerPC chips designed for embedded applications do not have
454           a floating-point unit and therefore do not implement the
455           floating-point instructions in the PowerPC instruction set.  If you
456           say Y here, the kernel will include code to emulate a floating-point
457           unit, which will allow programs that use floating-point
458           instructions to run.
459
460 config IOMMU_VMERGE
461         bool "Enable IOMMU virtual merging (EXPERIMENTAL)"
462         depends on EXPERIMENTAL && PPC64
463         default n
464         help
465           Cause IO segments sent to a device for DMA to be merged virtually
466           by the IOMMU when they happen to have been allocated contiguously.
467           This doesn't add pressure to the IOMMU allocator. However, some
468           drivers don't support getting large merged segments coming back
469           from *_map_sg(). Say Y if you know the drivers you are using are
470           properly handling this case.
471
472 config HOTPLUG_CPU
473         bool "Support for enabling/disabling CPUs"
474         depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
475         ---help---
476           Say Y here to be able to disable and re-enable individual
477           CPUs at runtime on SMP machines.
478
479           Say N if you are unsure.
480
481 config KEXEC
482         bool "kexec system call (EXPERIMENTAL)"
483         depends on PPC_MULTIPLATFORM && EXPERIMENTAL
484         help
485           kexec is a system call that implements the ability to shutdown your
486           current kernel, and to start another kernel.  It is like a reboot
487           but it is indepedent of the system firmware.   And like a reboot
488           you can start any kernel with it, not just Linux.
489
490           The name comes from the similiarity to the exec system call.
491
492           It is an ongoing process to be certain the hardware in a machine
493           is properly shutdown, so do not be surprised if this code does not
494           initially work for you.  It may help to enable device hotplugging
495           support.  As of this writing the exact hardware interface is
496           strongly in flux, so no good recommendation can be made.
497
498 config EMBEDDEDBOOT
499         bool
500         depends on 8xx || 8260
501         default y
502
503 config PC_KEYBOARD
504         bool "PC PS/2 style Keyboard"
505         depends on 4xx || CPM2
506
507 config PPCBUG_NVRAM
508         bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
509         default y if PPC_PREP
510
511 config IRQ_ALL_CPUS
512         bool "Distribute interrupts on all CPUs by default"
513         depends on SMP && !MV64360
514         help
515           This option gives the kernel permission to distribute IRQs across
516           multiple CPUs.  Saying N here will route all IRQs to the first
517           CPU.  Generally saying Y is safe, although some problems have been
518           reported with SMP Power Macintoshes with this option enabled.
519
520 source "arch/powerpc/platforms/pseries/Kconfig"
521
522 config ARCH_SELECT_MEMORY_MODEL
523         def_bool y
524         depends on PPC64
525
526 config ARCH_FLATMEM_ENABLE
527        def_bool y
528        depends on PPC64 && !NUMA
529
530 config ARCH_DISCONTIGMEM_ENABLE
531         def_bool y
532         depends on SMP && PPC_PSERIES
533
534 config ARCH_DISCONTIGMEM_DEFAULT
535         def_bool y
536         depends on ARCH_DISCONTIGMEM_ENABLE
537
538 config ARCH_FLATMEM_ENABLE
539         def_bool y
540         depends on PPC64
541
542 config ARCH_SPARSEMEM_ENABLE
543         def_bool y
544         depends on ARCH_DISCONTIGMEM_ENABLE
545
546 source "mm/Kconfig"
547
548 config HAVE_ARCH_EARLY_PFN_TO_NID
549         def_bool y
550         depends on NEED_MULTIPLE_NODES
551
552 # Some NUMA nodes have memory ranges that span
553 # other nodes.  Even though a pfn is valid and
554 # between a node's start and end pfns, it may not
555 # reside on that node.
556 #
557 # This is a relatively temporary hack that should
558 # be able to go away when sparsemem is fully in
559 # place
560
561 config NODES_SPAN_OTHER_NODES
562         def_bool y
563         depends on NEED_MULTIPLE_NODES
564
565 config NUMA
566         bool "NUMA support"
567         default y if DISCONTIGMEM || SPARSEMEM
568
569 config SCHED_SMT
570         bool "SMT (Hyperthreading) scheduler support"
571         depends on PPC64 && SMP
572         default off
573         help
574           SMT scheduler support improves the CPU scheduler's decision making
575           when dealing with POWER5 cpus at a cost of slightly increased
576           overhead in some places. If unsure say N here.
577
578 config PROC_DEVICETREE
579         bool "Support for device tree in /proc"
580         depends on PROC_FS
581         help
582           This option adds a device-tree directory under /proc which contains
583           an image of the device tree that the kernel copies from Open
584           Firmware or other boot firmware. If unsure, say Y here.
585
586 source "arch/powerpc/platforms/prep/Kconfig"
587
588 config CMDLINE_BOOL
589         bool "Default bootloader kernel arguments"
590         depends on !PPC_ISERIES
591
592 config CMDLINE
593         string "Initial kernel command string"
594         depends on CMDLINE_BOOL
595         default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
596         help
597           On some platforms, there is currently no way for the boot loader to
598           pass arguments to the kernel. For these platforms, you can supply
599           some command-line options at build time by entering them here.  In
600           most cases you will need to specify the root device here.
601
602 if !44x || BROKEN
603 source kernel/power/Kconfig
604 endif
605
606 config SECCOMP
607         bool "Enable seccomp to safely compute untrusted bytecode"
608         depends on PROC_FS
609         default y
610         help
611           This kernel feature is useful for number crunching applications
612           that may need to compute untrusted bytecode during their
613           execution. By using pipes or other transports made available to
614           the process as file descriptors supporting the read/write
615           syscalls, it's possible to isolate those applications in
616           their own address space using seccomp. Once seccomp is
617           enabled via /proc/<pid>/seccomp, it cannot be disabled
618           and the task is only allowed to execute a few safe syscalls
619           defined by each seccomp mode.
620
621           If unsure, say Y. Only embedded should say N here.
622
623 endmenu
624
625 config ISA_DMA_API
626         bool
627         default y
628
629 menu "Bus options"
630
631 config ISA
632         bool "Support for ISA-bus hardware"
633         depends on PPC_PREP || PPC_CHRP
634         select PPC_I8259
635         help
636           Find out whether you have ISA slots on your motherboard.  ISA is the
637           name of a bus system, i.e. the way the CPU talks to the other stuff
638           inside your box.  If you have an Apple machine, say N here; if you
639           have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
640           you have an embedded board, consult your board documentation.
641
642 config GENERIC_ISA_DMA
643         bool
644         depends on PPC64 || POWER4 || 6xx && !CPM2
645         default y
646
647 config PPC_I8259
648         bool
649         default y if 85xx
650         default n
651
652 config PPC_INDIRECT_PCI
653         bool
654         depends on PCI
655         default y if 40x || 44x || 85xx || 83xx
656         default n
657
658 config EISA
659         bool
660
661 config SBUS
662         bool
663
664 # Yes MCA RS/6000s exist but Linux-PPC does not currently support any
665 config MCA
666         bool
667
668 config PCI
669         bool "PCI support" if 40x || CPM2 || 83xx || 85xx || PPC_MPC52xx || (EMBEDDED && PPC_ISERIES)
670         default y if !40x && !CPM2 && !8xx && !APUS && !83xx && !85xx
671         default PCI_PERMEDIA if !4xx && !CPM2 && !8xx && APUS
672         default PCI_QSPAN if !4xx && !CPM2 && 8xx
673         help
674           Find out whether your system includes a PCI bus. PCI is the name of
675           a bus system, i.e. the way the CPU talks to the other stuff inside
676           your box.  If you say Y here, the kernel will include drivers and
677           infrastructure code to support PCI bus devices.
678
679 config PCI_DOMAINS
680         bool
681         default PCI
682
683 config MPC83xx_PCI2
684         bool "  Supprt for 2nd PCI host controller"
685         depends on PCI && MPC834x
686         default y if MPC834x_SYS
687
688 config PCI_QSPAN
689         bool "QSpan PCI"
690         depends on !4xx && !CPM2 && 8xx
691         select PPC_I8259
692         help
693           Say Y here if you have a system based on a Motorola 8xx-series
694           embedded processor with a QSPAN PCI interface, otherwise say N.
695
696 config PCI_8260
697         bool
698         depends on PCI && 8260
699         select PPC_INDIRECT_PCI
700         default y
701
702 config 8260_PCI9
703         bool "  Enable workaround for MPC826x erratum PCI 9"
704         depends on PCI_8260 && !ADS8272
705         default y
706
707 choice
708         prompt "  IDMA channel for PCI 9 workaround"
709         depends on 8260_PCI9
710
711 config 8260_PCI9_IDMA1
712         bool "IDMA1"
713
714 config 8260_PCI9_IDMA2
715         bool "IDMA2"
716
717 config 8260_PCI9_IDMA3
718         bool "IDMA3"
719
720 config 8260_PCI9_IDMA4
721         bool "IDMA4"
722
723 endchoice
724
725 source "drivers/pci/Kconfig"
726
727 source "drivers/pcmcia/Kconfig"
728
729 source "drivers/pci/hotplug/Kconfig"
730
731 endmenu
732
733 menu "Advanced setup"
734         depends on PPC32
735
736 config ADVANCED_OPTIONS
737         bool "Prompt for advanced kernel configuration options"
738         help
739           This option will enable prompting for a variety of advanced kernel
740           configuration options.  These options can cause the kernel to not
741           work if they are set incorrectly, but can be used to optimize certain
742           aspects of kernel memory management.
743
744           Unless you know what you are doing, say N here.
745
746 comment "Default settings for advanced configuration options are used"
747         depends on !ADVANCED_OPTIONS
748
749 config HIGHMEM_START_BOOL
750         bool "Set high memory pool address"
751         depends on ADVANCED_OPTIONS && HIGHMEM
752         help
753           This option allows you to set the base address of the kernel virtual
754           area used to map high memory pages.  This can be useful in
755           optimizing the layout of kernel virtual memory.
756
757           Say N here unless you know what you are doing.
758
759 config HIGHMEM_START
760         hex "Virtual start address of high memory pool" if HIGHMEM_START_BOOL
761         default "0xfe000000"
762
763 config LOWMEM_SIZE_BOOL
764         bool "Set maximum low memory"
765         depends on ADVANCED_OPTIONS
766         help
767           This option allows you to set the maximum amount of memory which
768           will be used as "low memory", that is, memory which the kernel can
769           access directly, without having to set up a kernel virtual mapping.
770           This can be useful in optimizing the layout of kernel virtual
771           memory.
772
773           Say N here unless you know what you are doing.
774
775 config LOWMEM_SIZE
776         hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
777         default "0x30000000"
778
779 config KERNEL_START_BOOL
780         bool "Set custom kernel base address"
781         depends on ADVANCED_OPTIONS
782         help
783           This option allows you to set the kernel virtual address at which
784           the kernel will map low memory (the kernel image will be linked at
785           this address).  This can be useful in optimizing the virtual memory
786           layout of the system.
787
788           Say N here unless you know what you are doing.
789
790 config KERNEL_START
791         hex "Virtual address of kernel base" if KERNEL_START_BOOL
792         default "0xc0000000"
793
794 config TASK_SIZE_BOOL
795         bool "Set custom user task size"
796         depends on ADVANCED_OPTIONS
797         help
798           This option allows you to set the amount of virtual address space
799           allocated to user tasks.  This can be useful in optimizing the
800           virtual memory layout of the system.
801
802           Say N here unless you know what you are doing.
803
804 config TASK_SIZE
805         hex "Size of user task space" if TASK_SIZE_BOOL
806         default "0x80000000"
807
808 config CONSISTENT_START_BOOL
809         bool "Set custom consistent memory pool address"
810         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
811         help
812           This option allows you to set the base virtual address
813           of the the consistent memory pool.  This pool of virtual
814           memory is used to make consistent memory allocations.
815
816 config CONSISTENT_START
817         hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
818         default "0xff100000" if NOT_COHERENT_CACHE
819
820 config CONSISTENT_SIZE_BOOL
821         bool "Set custom consistent memory pool size"
822         depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
823         help
824           This option allows you to set the size of the the
825           consistent memory pool.  This pool of virtual memory
826           is used to make consistent memory allocations.
827
828 config CONSISTENT_SIZE
829         hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
830         default "0x00200000" if NOT_COHERENT_CACHE
831
832 config BOOT_LOAD_BOOL
833         bool "Set the boot link/load address"
834         depends on ADVANCED_OPTIONS && !PPC_MULTIPLATFORM
835         help
836           This option allows you to set the initial load address of the zImage
837           or zImage.initrd file.  This can be useful if you are on a board
838           which has a small amount of memory.
839
840           Say N here unless you know what you are doing.
841
842 config BOOT_LOAD
843         hex "Link/load address for booting" if BOOT_LOAD_BOOL
844         default "0x00400000" if 40x || 8xx || 8260
845         default "0x01000000" if 44x
846         default "0x00800000"
847
848 config PIN_TLB
849         bool "Pinned Kernel TLBs (860 ONLY)"
850         depends on ADVANCED_OPTIONS && 8xx
851 endmenu
852
853 if PPC64
854 config KERNEL_START
855         hex
856         default "0xc000000000000000"
857 endif
858
859 source "net/Kconfig"
860
861 source "drivers/Kconfig"
862
863 source "fs/Kconfig"
864
865 # XXX source "arch/ppc/8xx_io/Kconfig"
866
867 # XXX source "arch/ppc/8260_io/Kconfig"
868
869 source "arch/powerpc/platforms/iseries/Kconfig"
870
871 source "lib/Kconfig"
872
873 source "arch/powerpc/oprofile/Kconfig"
874
875 source "arch/powerpc/Kconfig.debug"
876
877 source "security/Kconfig"
878
879 config KEYS_COMPAT
880         bool
881         depends on COMPAT && KEYS
882         default y
883
884 source "crypto/Kconfig"