xref: /openbmc/linux/arch/powerpc/Kconfig (revision ca9153a3a2a7556d091dfe080e42b0e67881fff6)
114cf11afSPaul Mackerras# For a description of the syntax of this configuration file,
214cf11afSPaul Mackerras# see Documentation/kbuild/kconfig-language.txt.
314cf11afSPaul Mackerras#
414cf11afSPaul Mackerras
514cf11afSPaul Mackerrasmainmenu "Linux/PowerPC Kernel Configuration"
614cf11afSPaul Mackerras
7a0ae9c7cSArnd Bergmannsource "arch/powerpc/platforms/Kconfig.cputype"
817e638bcSJohannes Berg
914cf11afSPaul Mackerrasconfig PPC32
1014cf11afSPaul Mackerras	bool
1114cf11afSPaul Mackerras	default y if !PPC64
1214cf11afSPaul Mackerras
1314cf11afSPaul Mackerrasconfig 64BIT
1414cf11afSPaul Mackerras	bool
1514cf11afSPaul Mackerras	default y if PPC64
1614cf11afSPaul Mackerras
172578bfaeSStephen Rothwellconfig WORD_SIZE
182578bfaeSStephen Rothwell	int
192578bfaeSStephen Rothwell	default 64 if PPC64
202578bfaeSStephen Rothwell	default 32 if !PPC64
212578bfaeSStephen Rothwell
22600715dcSJeremy Fitzhardingeconfig ARCH_PHYS_ADDR_T_64BIT
23600715dcSJeremy Fitzhardinge       def_bool PPC64 || PHYS_64BIT
24600715dcSJeremy Fitzhardinge
2514cf11afSPaul Mackerrasconfig MMU
2614cf11afSPaul Mackerras	bool
2714cf11afSPaul Mackerras	default y
2814cf11afSPaul Mackerras
29aa3be5f3STony Breedsconfig GENERIC_CMOS_UPDATE
30aa3be5f3STony Breeds	def_bool y
31aa3be5f3STony Breeds
324a4cfe38STony Breedsconfig GENERIC_TIME
334a4cfe38STony Breeds	def_bool y
344a4cfe38STony Breeds
354a4cfe38STony Breedsconfig GENERIC_TIME_VSYSCALL
364a4cfe38STony Breeds	def_bool y
374a4cfe38STony Breeds
38d831d0b8STony Breedsconfig GENERIC_CLOCKEVENTS
39d831d0b8STony Breeds	def_bool y
40d831d0b8STony Breeds
4114cf11afSPaul Mackerrasconfig GENERIC_HARDIRQS
4214cf11afSPaul Mackerras	bool
4314cf11afSPaul Mackerras	default y
4414cf11afSPaul Mackerras
45988c388aStravis@sgi.comconfig HAVE_SETUP_PER_CPU_AREA
46b32ef636Stravis@sgi.com	def_bool PPC64
47b32ef636Stravis@sgi.com
480d7012a9SIngo Molnarconfig IRQ_PER_CPU
490d7012a9SIngo Molnar	bool
500d7012a9SIngo Molnar	default y
510d7012a9SIngo Molnar
52fd3e0bbcSChristoph Hellwigconfig STACKTRACE_SUPPORT
53fd3e0bbcSChristoph Hellwig	bool
54fd3e0bbcSChristoph Hellwig	default y
55fd3e0bbcSChristoph Hellwig
5601f4b8b8SArnd Bergmannconfig HAVE_LATENCYTOP_SUPPORT
5701f4b8b8SArnd Bergmann	def_bool y
5801f4b8b8SArnd Bergmann
59945feb17SBenjamin Herrenschmidtconfig TRACE_IRQFLAGS_SUPPORT
60945feb17SBenjamin Herrenschmidt	bool
61945feb17SBenjamin Herrenschmidt	depends on PPC64
62945feb17SBenjamin Herrenschmidt	default y
63945feb17SBenjamin Herrenschmidt
64945feb17SBenjamin Herrenschmidtconfig LOCKDEP_SUPPORT
65945feb17SBenjamin Herrenschmidt	bool
66945feb17SBenjamin Herrenschmidt	default y
67945feb17SBenjamin Herrenschmidt
6814cf11afSPaul Mackerrasconfig RWSEM_GENERIC_SPINLOCK
6914cf11afSPaul Mackerras	bool
7014cf11afSPaul Mackerras
7114cf11afSPaul Mackerrasconfig RWSEM_XCHGADD_ALGORITHM
7214cf11afSPaul Mackerras	bool
7314cf11afSPaul Mackerras	default y
7414cf11afSPaul Mackerras
7595c354feSNick Pigginconfig GENERIC_LOCKBREAK
7695c354feSNick Piggin	bool
7795c354feSNick Piggin	default y
7895c354feSNick Piggin	depends on SMP && PREEMPT
7995c354feSNick Piggin
80f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U32
81f0d1b0b3SDavid Howells	bool
82ef55d53cSDavid Howells	default y
83f0d1b0b3SDavid Howells
84f0d1b0b3SDavid Howellsconfig ARCH_HAS_ILOG2_U64
85f0d1b0b3SDavid Howells	bool
86ef55d53cSDavid Howells	default y if 64BIT
87f0d1b0b3SDavid Howells
88e779b2f9SAkinobu Mitaconfig GENERIC_HWEIGHT
89e779b2f9SAkinobu Mita	bool
90e779b2f9SAkinobu Mita	default y
91e779b2f9SAkinobu Mita
9214cf11afSPaul Mackerrasconfig GENERIC_CALIBRATE_DELAY
9314cf11afSPaul Mackerras	bool
9414cf11afSPaul Mackerras	default y
9514cf11afSPaul Mackerras
960a9cb46aSJon Masonconfig GENERIC_FIND_NEXT_BIT
970a9cb46aSJon Mason	bool
980a9cb46aSJon Mason	default y
990a9cb46aSJon Mason
100b7ce3415SAnton Vorontsovconfig GENERIC_GPIO
101b7ce3415SAnton Vorontsov	bool
102b7ce3415SAnton Vorontsov	help
103b7ce3415SAnton Vorontsov	  Generic GPIO API support
104b7ce3415SAnton Vorontsov
105f057eac0SStephen Rothwellconfig ARCH_NO_VIRT_TO_BUS
106f057eac0SStephen Rothwell	def_bool PPC64
107f057eac0SStephen Rothwell
10814cf11afSPaul Mackerrasconfig PPC
10914cf11afSPaul Mackerras	bool
11014cf11afSPaul Mackerras	default y
111606576ceSSteven Rostedt	select HAVE_FUNCTION_TRACER
1127444a72eSMichael Buesch	select ARCH_WANT_OPTIONAL_GPIOLIB
113ec7748b5SSam Ravnborg	select HAVE_IDE
114a1f242ffSBenjamin Herrenschmidt	select HAVE_IOREMAP_PROT
11558340a07SJohannes Berg	select HAVE_EFFICIENT_UNALIGNED_ACCESS
1163f550096SMathieu Desnoyers	select HAVE_KPROBES
11717ce452fSJason Wessel	select HAVE_ARCH_KGDB
1189edddaa2SAnanth N Mavinakayanahalli	select HAVE_KRETPROBES
119dec2b0d0SRoland McGrath	select HAVE_ARCH_TRACEHOOK
120d9b2b2a2SDavid S. Miller	select HAVE_LMB
1217ff86b03STakashi Iwai	select HAVE_DMA_ATTRS if PPC64
122b7d7a240SJens Axboe	select USE_GENERIC_SMP_HELPERS if SMP
1234e491d14SSteven Rostedt	select HAVE_OPROFILE
12414cf11afSPaul Mackerras
12514cf11afSPaul Mackerrasconfig EARLY_PRINTK
12614cf11afSPaul Mackerras	bool
12751d3082fSBenjamin Herrenschmidt	default y
12814cf11afSPaul Mackerras
12914cf11afSPaul Mackerrasconfig COMPAT
13014cf11afSPaul Mackerras	bool
13114cf11afSPaul Mackerras	default y if PPC64
13201e31dbaSRoland McGrath	select COMPAT_BINFMT_ELF
13314cf11afSPaul Mackerras
13414cf11afSPaul Mackerrasconfig SYSVIPC_COMPAT
13514cf11afSPaul Mackerras	bool
13614cf11afSPaul Mackerras	depends on COMPAT && SYSVIPC
13714cf11afSPaul Mackerras	default y
13814cf11afSPaul Mackerras
13914cf11afSPaul Mackerras# All PPC32s use generic nvram driver through ppc_md
14014cf11afSPaul Mackerrasconfig GENERIC_NVRAM
14114cf11afSPaul Mackerras	bool
14214cf11afSPaul Mackerras	default y if PPC32
14314cf11afSPaul Mackerras
14414cf11afSPaul Mackerrasconfig SCHED_NO_NO_OMIT_FRAME_POINTER
14514cf11afSPaul Mackerras	bool
14614cf11afSPaul Mackerras	default y
14714cf11afSPaul Mackerras
14814cf11afSPaul Mackerrasconfig ARCH_MAY_HAVE_PC_FDC
14914cf11afSPaul Mackerras	bool
150bed59275SStephen Rothwell	default !PPC_PSERIES || PCI
15114cf11afSPaul Mackerras
15208264cbcSKumar Galaconfig PPC_OF
15308264cbcSKumar Gala	def_bool y
15408264cbcSKumar Gala
15597e873e5SStephen Rothwellconfig OF
15697e873e5SStephen Rothwell	def_bool y
15797e873e5SStephen Rothwell
15808264cbcSKumar Galaconfig PPC_UDBG_16550
15908264cbcSKumar Gala	bool
16008264cbcSKumar Gala	default n
16108264cbcSKumar Gala
16208264cbcSKumar Galaconfig GENERIC_TBSYNC
16308264cbcSKumar Gala	bool
16408264cbcSKumar Gala	default y if PPC32 && SMP
16508264cbcSKumar Gala	default n
16608264cbcSKumar Gala
167e65e1fc2SAl Viroconfig AUDIT_ARCH
168e65e1fc2SAl Viro	bool
169e65e1fc2SAl Viro	default y
170e65e1fc2SAl Viro
17173c9ceabSJeremy Fitzhardingeconfig GENERIC_BUG
17273c9ceabSJeremy Fitzhardinge	bool
17373c9ceabSJeremy Fitzhardinge	default y
17473c9ceabSJeremy Fitzhardinge	depends on BUG
17573c9ceabSJeremy Fitzhardinge
176b3028878SJohannes Bergconfig SYS_SUPPORTS_APM_EMULATION
17758da10bbSKumar Gala	default y if PMAC_APM_EMU
178b3028878SJohannes Berg	bool
179b3028878SJohannes Berg
180f4fc4a5bSKumar Galaconfig DEFAULT_UIMAGE
181f4fc4a5bSKumar Gala	bool
182f4fc4a5bSKumar Gala	help
183f4fc4a5bSKumar Gala	  Used to allow a board to specify it wants a uImage built by default
184f4fc4a5bSKumar Gala	default n
185f4fc4a5bSKumar Gala
186b09c1644SScott Woodconfig REDBOOT
187b09c1644SScott Wood	bool
188b09c1644SScott Wood
189801e4062SJohannes Bergconfig HIBERNATE_32
190543b9fd3SJohannes Berg	bool
191801e4062SJohannes Berg	depends on (PPC_PMAC && !SMP) || BROKEN
192801e4062SJohannes Berg	default y
193801e4062SJohannes Berg
194801e4062SJohannes Bergconfig HIBERNATE_64
195801e4062SJohannes Berg	bool
196801e4062SJohannes Berg	depends on BROKEN || (PPC_PMAC64 && EXPERIMENTAL)
197801e4062SJohannes Berg	default y
198801e4062SJohannes Berg
199801e4062SJohannes Bergconfig ARCH_HIBERNATION_POSSIBLE
200801e4062SJohannes Berg	bool
201801e4062SJohannes Berg	depends on (PPC64 && HIBERNATE_64) || (PPC32 && HIBERNATE_32)
202543b9fd3SJohannes Berg	default y
203543b9fd3SJohannes Berg
204f4cb5700SJohannes Bergconfig ARCH_SUSPEND_POSSIBLE
205f4cb5700SJohannes Berg	def_bool y
206d49747bdSScott Wood	depends on ADB_PMU || PPC_EFIKA || PPC_LITE5200 || PPC_83xx
207f4cb5700SJohannes Berg
2084c75a6f4SBenjamin Herrenschmidtconfig PPC_DCR_NATIVE
2094c75a6f4SBenjamin Herrenschmidt	bool
2104c75a6f4SBenjamin Herrenschmidt	default n
2114c75a6f4SBenjamin Herrenschmidt
2124c75a6f4SBenjamin Herrenschmidtconfig PPC_DCR_MMIO
2134c75a6f4SBenjamin Herrenschmidt	bool
2144c75a6f4SBenjamin Herrenschmidt	default n
2154c75a6f4SBenjamin Herrenschmidt
2164c75a6f4SBenjamin Herrenschmidtconfig PPC_DCR
2174c75a6f4SBenjamin Herrenschmidt	bool
2184c75a6f4SBenjamin Herrenschmidt	depends on PPC_DCR_NATIVE || PPC_DCR_MMIO
2194c75a6f4SBenjamin Herrenschmidt	default y
2204c75a6f4SBenjamin Herrenschmidt
2214c9d2800SBenjamin Herrenschmidtconfig PPC_OF_PLATFORM_PCI
2224c9d2800SBenjamin Herrenschmidt	bool
223373a6da1SStephen Rothwell	depends on PCI
2244c9d2800SBenjamin Herrenschmidt	depends on PPC64 # not supported on 32 bits yet
2254c9d2800SBenjamin Herrenschmidt	default n
2264c9d2800SBenjamin Herrenschmidt
22714cf11afSPaul Mackerrassource "init/Kconfig"
22814cf11afSPaul Mackerras
229dc52ddc0SMatt Helsleysource "kernel/Kconfig.freezer"
230dc52ddc0SMatt Helsley
231a2d2e1ecSBenjamin Herrenschmidtsource "arch/powerpc/sysdev/Kconfig"
2324330f5daSKumar Galasource "arch/powerpc/platforms/Kconfig"
23314cf11afSPaul Mackerras
23414cf11afSPaul Mackerrasmenu "Kernel options"
23514cf11afSPaul Mackerras
23614cf11afSPaul Mackerrasconfig HIGHMEM
23714cf11afSPaul Mackerras	bool "High memory support"
23814cf11afSPaul Mackerras	depends on PPC32
23914cf11afSPaul Mackerras
2401ad74998STony Breedssource kernel/time/Kconfig
24114cf11afSPaul Mackerrassource kernel/Kconfig.hz
24214cf11afSPaul Mackerrassource kernel/Kconfig.preempt
24314cf11afSPaul Mackerrassource "fs/Kconfig.binfmt"
24414cf11afSPaul Mackerras
245ba72cb8cSMel Gormanconfig HUGETLB_PAGE_SIZE_VARIABLE
246ba72cb8cSMel Gorman	bool
247ba72cb8cSMel Gorman	depends on HUGETLB_PAGE
248ba72cb8cSMel Gorman	default y
249ba72cb8cSMel Gorman
25014cf11afSPaul Mackerrasconfig MATH_EMULATION
25114cf11afSPaul Mackerras	bool "Math emulation"
2524d52719aSKumar Gala	depends on 4xx || 8xx || E200 || PPC_MPC832x || E500
25314cf11afSPaul Mackerras	---help---
25414cf11afSPaul Mackerras	  Some PowerPC chips designed for embedded applications do not have
25514cf11afSPaul Mackerras	  a floating-point unit and therefore do not implement the
25614cf11afSPaul Mackerras	  floating-point instructions in the PowerPC instruction set.  If you
25714cf11afSPaul Mackerras	  say Y here, the kernel will include code to emulate a floating-point
25814cf11afSPaul Mackerras	  unit, which will allow programs that use floating-point
25914cf11afSPaul Mackerras	  instructions to run.
26014cf11afSPaul Mackerras
2615dd57a13SScott Woodconfig 8XX_MINIMAL_FPEMU
2625dd57a13SScott Wood	bool "Minimal math emulation for 8xx"
2635dd57a13SScott Wood	depends on 8xx && !MATH_EMULATION
2645dd57a13SScott Wood	help
2655dd57a13SScott Wood	  Older arch/ppc kernels still emulated a few floating point
2665dd57a13SScott Wood	  instructions such as load and store, even when full math
2675dd57a13SScott Wood	  emulation is disabled.  Say "Y" here if you want to preserve
2685dd57a13SScott Wood	  this behavior.
2695dd57a13SScott Wood
2705dd57a13SScott Wood	  It is recommended that you build a soft-float userspace instead.
2715dd57a13SScott Wood
27214cf11afSPaul Mackerrasconfig IOMMU_VMERGE
273768cc2d3SLinas Vepstas	bool "Enable IOMMU virtual merging"
274768cc2d3SLinas Vepstas	depends on PPC64
275768cc2d3SLinas Vepstas	default y
27614cf11afSPaul Mackerras	help
27714cf11afSPaul Mackerras	  Cause IO segments sent to a device for DMA to be merged virtually
27814cf11afSPaul Mackerras	  by the IOMMU when they happen to have been allocated contiguously.
27914cf11afSPaul Mackerras	  This doesn't add pressure to the IOMMU allocator. However, some
28014cf11afSPaul Mackerras	  drivers don't support getting large merged segments coming back
281768cc2d3SLinas Vepstas	  from *_map_sg().
282768cc2d3SLinas Vepstas
283768cc2d3SLinas Vepstas	  Most drivers don't have this problem; it is safe to say Y here.
28414cf11afSPaul Mackerras
285fb3475e9SFUJITA Tomonoriconfig IOMMU_HELPER
286fb3475e9SFUJITA Tomonori	def_bool PPC64
287fb3475e9SFUJITA Tomonori
28815e09c0eSBecky Bruceconfig PPC_NEED_DMA_SYNC_OPS
28915e09c0eSBecky Bruce	def_bool y
29015e09c0eSBecky Bruce	depends on NOT_COHERENT_CACHE
29115e09c0eSBecky Bruce
29214cf11afSPaul Mackerrasconfig HOTPLUG_CPU
29314cf11afSPaul Mackerras	bool "Support for enabling/disabling CPUs"
29414cf11afSPaul Mackerras	depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
29514cf11afSPaul Mackerras	---help---
29614cf11afSPaul Mackerras	  Say Y here to be able to disable and re-enable individual
29714cf11afSPaul Mackerras	  CPUs at runtime on SMP machines.
29814cf11afSPaul Mackerras
29914cf11afSPaul Mackerras	  Say N if you are unsure.
30014cf11afSPaul Mackerras
301cc57637bSYasunori Gotoconfig ARCH_ENABLE_MEMORY_HOTPLUG
302cc57637bSYasunori Goto	def_bool y
303cc57637bSYasunori Goto
304a99824f3SBadari Pulavartyconfig ARCH_HAS_WALK_MEMORY
305a99824f3SBadari Pulavarty	def_bool y
306a99824f3SBadari Pulavarty
3071482471dSBadari Pulavartyconfig ARCH_ENABLE_MEMORY_HOTREMOVE
3081482471dSBadari Pulavarty	def_bool y
3091482471dSBadari Pulavarty
31014cf11afSPaul Mackerrasconfig KEXEC
31114cf11afSPaul Mackerras	bool "kexec system call (EXPERIMENTAL)"
312fd4ba7e2SDale Farnsworth	depends on (PPC_PRPMC2800 || PPC_MULTIPLATFORM) && EXPERIMENTAL
31314cf11afSPaul Mackerras	help
31414cf11afSPaul Mackerras	  kexec is a system call that implements the ability to shutdown your
31514cf11afSPaul Mackerras	  current kernel, and to start another kernel.  It is like a reboot
3161f1332f7SMatt LaPlante	  but it is independent of the system firmware.   And like a reboot
31714cf11afSPaul Mackerras	  you can start any kernel with it, not just Linux.
31814cf11afSPaul Mackerras
3191f1332f7SMatt LaPlante	  The name comes from the similarity to the exec system call.
32014cf11afSPaul Mackerras
32114cf11afSPaul Mackerras	  It is an ongoing process to be certain the hardware in a machine
32214cf11afSPaul Mackerras	  is properly shutdown, so do not be surprised if this code does not
32314cf11afSPaul Mackerras	  initially work for you.  It may help to enable device hotplugging
32414cf11afSPaul Mackerras	  support.  As of this writing the exact hardware interface is
32514cf11afSPaul Mackerras	  strongly in flux, so no good recommendation can be made.
32614cf11afSPaul Mackerras
327e8625d46SHaren Myneniconfig CRASH_DUMP
3283420b5daSBernhard Walle	bool "Build a kdump crash kernel"
329f8f50b1bSDale Farnsworth	depends on (PPC64 && RELOCATABLE) || 6xx
330e8625d46SHaren Myneni	help
331e8625d46SHaren Myneni	  Build a kernel suitable for use as a kdump capture kernel.
33254622f10SMohan Kumar M	  The same kernel binary can be used as production kernel and dump
33354622f10SMohan Kumar M	  capture kernel.
334e8625d46SHaren Myneni
335242f271cSManish Ahujaconfig PHYP_DUMP
336242f271cSManish Ahuja	bool "Hypervisor-assisted dump (EXPERIMENTAL)"
337242f271cSManish Ahuja	depends on PPC_PSERIES && EXPERIMENTAL
338242f271cSManish Ahuja	help
339242f271cSManish Ahuja	  Hypervisor-assisted dump is meant to be a kdump replacement
340242f271cSManish Ahuja	  offering robustness and speed not possible without system
341242f271cSManish Ahuja	  hypervisor assistence.
342242f271cSManish Ahuja
343242f271cSManish Ahuja	  If unsure, say "N"
344242f271cSManish Ahuja
34514cf11afSPaul Mackerrasconfig PPCBUG_NVRAM
34614cf11afSPaul Mackerras	bool "Enable reading PPCBUG NVRAM during boot" if PPLUS || LOPEC
34714cf11afSPaul Mackerras	default y if PPC_PREP
34814cf11afSPaul Mackerras
34914cf11afSPaul Mackerrasconfig IRQ_ALL_CPUS
35014cf11afSPaul Mackerras	bool "Distribute interrupts on all CPUs by default"
35114cf11afSPaul Mackerras	depends on SMP && !MV64360
35214cf11afSPaul Mackerras	help
35314cf11afSPaul Mackerras	  This option gives the kernel permission to distribute IRQs across
35414cf11afSPaul Mackerras	  multiple CPUs.  Saying N here will route all IRQs to the first
35514cf11afSPaul Mackerras	  CPU.  Generally saying Y is safe, although some problems have been
35614cf11afSPaul Mackerras	  reported with SMP Power Macintoshes with this option enabled.
35714cf11afSPaul Mackerras
358ffa27b6bSAndy Whitcroftconfig NUMA
359ffa27b6bSAndy Whitcroft	bool "NUMA support"
360ffa27b6bSAndy Whitcroft	depends on PPC64
361ffa27b6bSAndy Whitcroft	default y if SMP && PPC_PSERIES
362ffa27b6bSAndy Whitcroft
363c80d79d7SYasunori Gotoconfig NODES_SHIFT
364c80d79d7SYasunori Goto	int
365c80d79d7SYasunori Goto	default "4"
366c80d79d7SYasunori Goto	depends on NEED_MULTIPLE_NODES
367c80d79d7SYasunori Goto
36814cf11afSPaul Mackerrasconfig ARCH_SELECT_MEMORY_MODEL
36914cf11afSPaul Mackerras	def_bool y
37014cf11afSPaul Mackerras	depends on PPC64
37114cf11afSPaul Mackerras
37214cf11afSPaul Mackerrasconfig ARCH_FLATMEM_ENABLE
37314cf11afSPaul Mackerras	def_bool y
3749100b205SAndy Whitcroft	depends on (PPC64 && !NUMA) || PPC32
37514cf11afSPaul Mackerras
37614cf11afSPaul Mackerrasconfig ARCH_SPARSEMEM_ENABLE
37714cf11afSPaul Mackerras	def_bool y
3789100b205SAndy Whitcroft	depends on PPC64
379d29eff7bSAndy Whitcroft	select SPARSEMEM_VMEMMAP_ENABLE
38045fb6ceaSAnton Blanchard
38145fb6ceaSAnton Blanchardconfig ARCH_SPARSEMEM_DEFAULT
38245fb6ceaSAnton Blanchard	def_bool y
38378bde53eSBenjamin Herrenschmidt	depends on (SMP && PPC_PSERIES) || PPC_PS3
38414cf11afSPaul Mackerras
385c67c3cb4SMel Gormanconfig ARCH_POPULATES_NODE_MAP
38614cf11afSPaul Mackerras	def_bool y
387c67c3cb4SMel Gorman
388c67c3cb4SMel Gormansource "mm/Kconfig"
38914cf11afSPaul Mackerras
3907e9191daSMike Kravetzconfig ARCH_MEMORY_PROBE
3917e9191daSMike Kravetz	def_bool y
3927e9191daSMike Kravetz	depends on MEMORY_HOTPLUG
3937e9191daSMike Kravetz
39475167957SAndy Whitcroft# Some NUMA nodes have memory ranges that span
39575167957SAndy Whitcroft# other nodes.  Even though a pfn is valid and
39675167957SAndy Whitcroft# between a node's start and end pfns, it may not
39775167957SAndy Whitcroft# reside on that node.  See memmap_init_zone()
39875167957SAndy Whitcroft# for details.
39975167957SAndy Whitcroftconfig NODES_SPAN_OTHER_NODES
40075167957SAndy Whitcroft	def_bool y
40175167957SAndy Whitcroft	depends on NEED_MULTIPLE_NODES
40275167957SAndy Whitcroft
40316c2d476SBenjamin Herrenschmidtconfig PPC_HAS_HASH_64K
40416c2d476SBenjamin Herrenschmidt	bool
40516c2d476SBenjamin Herrenschmidt	depends on PPC64
40616c2d476SBenjamin Herrenschmidt	default n
40716c2d476SBenjamin Herrenschmidt
408*ca9153a3SIlya Yanokchoice
409*ca9153a3SIlya Yanok	prompt "Page size"
410*ca9153a3SIlya Yanok	default PPC_4K_PAGES
4113c726f8dSBenjamin Herrenschmidt	help
412*ca9153a3SIlya Yanok	  Select the kernel logical page size. Increasing the page size
413*ca9153a3SIlya Yanok	  will reduce software overhead at each page boundary, allow
414*ca9153a3SIlya Yanok	  hardware prefetch mechanisms to be more effective, and allow
415*ca9153a3SIlya Yanok	  larger dma transfers increasing IO efficiency and reducing
416*ca9153a3SIlya Yanok	  overhead. However the utilization of memory will increase.
417*ca9153a3SIlya Yanok	  For example, each cached file will using a multiple of the
418*ca9153a3SIlya Yanok	  page size to hold its contents and the difference between the
419*ca9153a3SIlya Yanok	  end of file and the end of page is wasted.
420*ca9153a3SIlya Yanok
421*ca9153a3SIlya Yanok	  Some dedicated systems, such as software raid serving with
422*ca9153a3SIlya Yanok	  accelerated calculations, have shown significant increases.
423*ca9153a3SIlya Yanok
424*ca9153a3SIlya Yanok	  If you configure a 64 bit kernel for 64k pages but the
425*ca9153a3SIlya Yanok	  processor does not support them, then the kernel will simulate
426*ca9153a3SIlya Yanok	  them with 4k pages, loading them on demand, but with the
427*ca9153a3SIlya Yanok	  reduced software overhead and larger internal fragmentation.
428*ca9153a3SIlya Yanok	  For the 32 bit kernel, a large page option will not be offered
429*ca9153a3SIlya Yanok	  unless it is supported by the configured processor.
430*ca9153a3SIlya Yanok
431*ca9153a3SIlya Yanok	  If unsure, choose 4K_PAGES.
432*ca9153a3SIlya Yanok
433*ca9153a3SIlya Yanokconfig PPC_4K_PAGES
434*ca9153a3SIlya Yanok	bool "4k page size"
435*ca9153a3SIlya Yanok
436*ca9153a3SIlya Yanokconfig PPC_16K_PAGES
437*ca9153a3SIlya Yanok	bool "16k page size" if 44x
438*ca9153a3SIlya Yanok
439*ca9153a3SIlya Yanokconfig PPC_64K_PAGES
440*ca9153a3SIlya Yanok	bool "64k page size" if 44x || PPC_STD_MMU_64
441*ca9153a3SIlya Yanok	select PPC_HAS_HASH_64K if PPC_STD_MMU_64
442*ca9153a3SIlya Yanok
443*ca9153a3SIlya Yanokendchoice
4443c726f8dSBenjamin Herrenschmidt
44553bcddb9SStephen Rothwellconfig FORCE_MAX_ZONEORDER
44653bcddb9SStephen Rothwell	int "Maximum zone order"
447*ca9153a3SIlya Yanok	range 9 64 if PPC_STD_MMU_64 && PPC_64K_PAGES
448*ca9153a3SIlya Yanok	default "9" if PPC_STD_MMU_64 && PPC_64K_PAGES
449*ca9153a3SIlya Yanok	range 13 64 if PPC_STD_MMU_64 && !PPC_64K_PAGES
450*ca9153a3SIlya Yanok	default "13" if PPC_STD_MMU_64 && !PPC_64K_PAGES
451*ca9153a3SIlya Yanok	range 9 64 if PPC_STD_MMU_32 && PPC_16K_PAGES
452*ca9153a3SIlya Yanok	default "9" if PPC_STD_MMU_32 && PPC_16K_PAGES
453*ca9153a3SIlya Yanok	range 7 64 if PPC_STD_MMU_32 && PPC_64K_PAGES
454*ca9153a3SIlya Yanok	default "7" if PPC_STD_MMU_32 && PPC_64K_PAGES
455ebe40c5cSJohannes Berg	range 11 64
45653bcddb9SStephen Rothwell	default "11"
45753bcddb9SStephen Rothwell	help
45853bcddb9SStephen Rothwell	  The kernel memory allocator divides physically contiguous memory
45953bcddb9SStephen Rothwell	  blocks into "zones", where each zone is a power of two number of
46053bcddb9SStephen Rothwell	  pages.  This option selects the largest power of two that the kernel
46153bcddb9SStephen Rothwell	  keeps in the memory allocator.  If you need to allocate very large
46253bcddb9SStephen Rothwell	  blocks of physically contiguous memory, then you may need to
46353bcddb9SStephen Rothwell	  increase this value.
46453bcddb9SStephen Rothwell
46553bcddb9SStephen Rothwell	  This config option is actually maximum order plus one. For example,
46653bcddb9SStephen Rothwell	  a value of 11 means that the largest free memory block is 2^10 pages.
46753bcddb9SStephen Rothwell
46853bcddb9SStephen Rothwell	  The page size is not necessarily 4KB.  For example, on 64-bit
46953bcddb9SStephen Rothwell	  systems, 64KB pages can be enabled via CONFIG_PPC_64K_PAGES.  Keep
47053bcddb9SStephen Rothwell	  this in mind when choosing a value for this option.
47153bcddb9SStephen Rothwell
472fa28237cSPaul Mackerrasconfig PPC_SUBPAGE_PROT
473fa28237cSPaul Mackerras	bool "Support setting protections for 4k subpages"
474*ca9153a3SIlya Yanok	depends on PPC_STD_MMU_64 && PPC_64K_PAGES
475fa28237cSPaul Mackerras	help
476fa28237cSPaul Mackerras	  This option adds support for a system call to allow user programs
477fa28237cSPaul Mackerras	  to set access permissions (read/write, readonly, or no access)
478fa28237cSPaul Mackerras	  on the 4k subpages of each 64k page.
479fa28237cSPaul Mackerras
48014cf11afSPaul Mackerrasconfig SCHED_SMT
48114cf11afSPaul Mackerras	bool "SMT (Hyperthreading) scheduler support"
48214cf11afSPaul Mackerras	depends on PPC64 && SMP
48314cf11afSPaul Mackerras	help
48414cf11afSPaul Mackerras	  SMT scheduler support improves the CPU scheduler's decision making
48514cf11afSPaul Mackerras	  when dealing with POWER5 cpus at a cost of slightly increased
48614cf11afSPaul Mackerras	  overhead in some places. If unsure say N here.
48714cf11afSPaul Mackerras
48814cf11afSPaul Mackerrasconfig PROC_DEVICETREE
4895f296755SPaul Mackerras	bool "Support for device tree in /proc"
4905f296755SPaul Mackerras	depends on PROC_FS
49114cf11afSPaul Mackerras	help
49214cf11afSPaul Mackerras	  This option adds a device-tree directory under /proc which contains
49314cf11afSPaul Mackerras	  an image of the device tree that the kernel copies from Open
4945f296755SPaul Mackerras	  Firmware or other boot firmware. If unsure, say Y here.
49514cf11afSPaul Mackerras
49614cf11afSPaul Mackerrasconfig CMDLINE_BOOL
49714cf11afSPaul Mackerras	bool "Default bootloader kernel arguments"
49814cf11afSPaul Mackerras
49914cf11afSPaul Mackerrasconfig CMDLINE
50014cf11afSPaul Mackerras	string "Initial kernel command string"
50114cf11afSPaul Mackerras	depends on CMDLINE_BOOL
50214cf11afSPaul Mackerras	default "console=ttyS0,9600 console=tty0 root=/dev/sda2"
50314cf11afSPaul Mackerras	help
50414cf11afSPaul Mackerras	  On some platforms, there is currently no way for the boot loader to
50514cf11afSPaul Mackerras	  pass arguments to the kernel. For these platforms, you can supply
50614cf11afSPaul Mackerras	  some command-line options at build time by entering them here.  In
50714cf11afSPaul Mackerras	  most cases you will need to specify the root device here.
50814cf11afSPaul Mackerras
509c356aa45SGrant Likelyconfig EXTRA_TARGETS
510c356aa45SGrant Likely	string "Additional default image types"
511c356aa45SGrant Likely	help
512c356aa45SGrant Likely	  List additional targets to be built by the bootwrapper here (separated
513c356aa45SGrant Likely	  by spaces).  This is useful for targets that depend of device tree
514c356aa45SGrant Likely	  files in the .dts directory.
515c356aa45SGrant Likely
516c356aa45SGrant Likely	  Targets in this list will be build as part of the default build
517c356aa45SGrant Likely	  target, or when the user does a 'make zImage' or a
518c356aa45SGrant Likely	  'make zImage.initrd'.
519c356aa45SGrant Likely
520c356aa45SGrant Likely	  If unsure, leave blank
521c356aa45SGrant Likely
52214cf11afSPaul Mackerrasif !44x || BROKEN
523b28f5081SJohannes Bergconfig ARCH_WANTS_FREEZER_CONTROL
524b28f5081SJohannes Berg	def_bool y
525b28f5081SJohannes Berg	depends on ADB_PMU
526b28f5081SJohannes Berg
52714cf11afSPaul Mackerrassource kernel/power/Kconfig
52814cf11afSPaul Mackerrasendif
52914cf11afSPaul Mackerras
53014cf11afSPaul Mackerrasconfig SECCOMP
53114cf11afSPaul Mackerras	bool "Enable seccomp to safely compute untrusted bytecode"
53214cf11afSPaul Mackerras	depends on PROC_FS
53314cf11afSPaul Mackerras	default y
53414cf11afSPaul Mackerras	help
53514cf11afSPaul Mackerras	  This kernel feature is useful for number crunching applications
53614cf11afSPaul Mackerras	  that may need to compute untrusted bytecode during their
53714cf11afSPaul Mackerras	  execution. By using pipes or other transports made available to
53814cf11afSPaul Mackerras	  the process as file descriptors supporting the read/write
53914cf11afSPaul Mackerras	  syscalls, it's possible to isolate those applications in
54014cf11afSPaul Mackerras	  their own address space using seccomp. Once seccomp is
54114cf11afSPaul Mackerras	  enabled via /proc/<pid>/seccomp, it cannot be disabled
54214cf11afSPaul Mackerras	  and the task is only allowed to execute a few safe syscalls
54314cf11afSPaul Mackerras	  defined by each seccomp mode.
54414cf11afSPaul Mackerras
54514cf11afSPaul Mackerras	  If unsure, say Y. Only embedded should say N here.
54614cf11afSPaul Mackerras
54714cf11afSPaul Mackerrasendmenu
54814cf11afSPaul Mackerras
54914cf11afSPaul Mackerrasconfig ISA_DMA_API
55014cf11afSPaul Mackerras	bool
551373a6da1SStephen Rothwell	default !PPC_ISERIES || PCI
55214cf11afSPaul Mackerras
55314cf11afSPaul Mackerrasmenu "Bus options"
55414cf11afSPaul Mackerras
55514cf11afSPaul Mackerrasconfig ISA
55614cf11afSPaul Mackerras	bool "Support for ISA-bus hardware"
55714cf11afSPaul Mackerras	depends on PPC_PREP || PPC_CHRP
558f9bd170aSPaul Mackerras	select PPC_I8259
55914cf11afSPaul Mackerras	help
56014cf11afSPaul Mackerras	  Find out whether you have ISA slots on your motherboard.  ISA is the
56114cf11afSPaul Mackerras	  name of a bus system, i.e. the way the CPU talks to the other stuff
56214cf11afSPaul Mackerras	  inside your box.  If you have an Apple machine, say N here; if you
56314cf11afSPaul Mackerras	  have an IBM RS/6000 or pSeries machine or a PReP machine, say Y.  If
56414cf11afSPaul Mackerras	  you have an embedded board, consult your board documentation.
56514cf11afSPaul Mackerras
5665ac6da66SChristoph Lameterconfig ZONE_DMA
5675ac6da66SChristoph Lameter	bool
5685ac6da66SChristoph Lameter	default y
5695ac6da66SChristoph Lameter
57014cf11afSPaul Mackerrasconfig GENERIC_ISA_DMA
57114cf11afSPaul Mackerras	bool
57214cf11afSPaul Mackerras	depends on PPC64 || POWER4 || 6xx && !CPM2
57314cf11afSPaul Mackerras	default y
57414cf11afSPaul Mackerras
57525635c71SPaul Mackerrasconfig PPC_INDIRECT_PCI
57625635c71SPaul Mackerras	bool
57725635c71SPaul Mackerras	depends on PCI
57863dafe57SBecky Bruce	default y if 40x || 44x
57925635c71SPaul Mackerras	default n
58025635c71SPaul Mackerras
58114cf11afSPaul Mackerrasconfig EISA
58214cf11afSPaul Mackerras	bool
58314cf11afSPaul Mackerras
58414cf11afSPaul Mackerrasconfig SBUS
58514cf11afSPaul Mackerras	bool
58614cf11afSPaul Mackerras
58708264cbcSKumar Galaconfig FSL_SOC
58808264cbcSKumar Gala	bool
58908264cbcSKumar Gala
59055c44991SRoy Zangconfig FSL_PCI
59155c44991SRoy Zang 	bool
59255c44991SRoy Zang	select PPC_INDIRECT_PCI
59355c44991SRoy Zang
5942a706919SStefan Roeseconfig 4xx_SOC
5952a706919SStefan Roese	bool
5962a706919SStefan Roese
597acaa7aa3SAnton Vorontsovconfig FSL_LBC
598acaa7aa3SAnton Vorontsov	bool
599acaa7aa3SAnton Vorontsov	help
600acaa7aa3SAnton Vorontsov	  Freescale Localbus support
601acaa7aa3SAnton Vorontsov
60283ff9dcfSAnton Vorontsovconfig FSL_GTM
60383ff9dcfSAnton Vorontsov	bool
60483ff9dcfSAnton Vorontsov	depends on PPC_83xx || QUICC_ENGINE || CPM2
60583ff9dcfSAnton Vorontsov	help
60683ff9dcfSAnton Vorontsov	  Freescale General-purpose Timers support
60783ff9dcfSAnton Vorontsov
60814cf11afSPaul Mackerras# Yes MCA RS/6000s exist but Linux-PPC does not currently support any
60914cf11afSPaul Mackerrasconfig MCA
61014cf11afSPaul Mackerras	bool
61114cf11afSPaul Mackerras
612b500563bSJohn Rigby# Platforms that what PCI turned unconditionally just do select PCI
613b500563bSJohn Rigby# in their config node.  Platforms that want to choose at config
614b500563bSJohn Rigby# time should select PPC_PCI_CHOICE
615b500563bSJohn Rigbyconfig PPC_PCI_CHOICE
616b500563bSJohn Rigby	bool
617b500563bSJohn Rigby
61814cf11afSPaul Mackerrasconfig PCI
619b500563bSJohn Rigby	bool "PCI support" if PPC_PCI_CHOICE
620b500563bSJohn Rigby	default y if !40x && !CPM2 && !8xx && !PPC_83xx \
62153158620SJon Loeliger		&& !PPC_85xx && !PPC_86xx
622f21f49eaSDavid Gibson	default PCI_PERMEDIA if !4xx && !CPM2 && !8xx
62314cf11afSPaul Mackerras	default PCI_QSPAN if !4xx && !CPM2 && 8xx
624df87ef55SMichael Ellerman	select ARCH_SUPPORTS_MSI
62514cf11afSPaul Mackerras	help
62614cf11afSPaul Mackerras	  Find out whether your system includes a PCI bus. PCI is the name of
62714cf11afSPaul Mackerras	  a bus system, i.e. the way the CPU talks to the other stuff inside
62814cf11afSPaul Mackerras	  your box.  If you say Y here, the kernel will include drivers and
62914cf11afSPaul Mackerras	  infrastructure code to support PCI bus devices.
63014cf11afSPaul Mackerras
63114cf11afSPaul Mackerrasconfig PCI_DOMAINS
63236e23590SMatthew Wilcox	def_bool PCI
63336e23590SMatthew Wilcox
63436e23590SMatthew Wilcoxconfig PCI_SYSCALL
63536e23590SMatthew Wilcox	def_bool PCI
63614cf11afSPaul Mackerras
63714cf11afSPaul Mackerrasconfig PCI_QSPAN
63814cf11afSPaul Mackerras	bool "QSpan PCI"
63914cf11afSPaul Mackerras	depends on !4xx && !CPM2 && 8xx
640f9bd170aSPaul Mackerras	select PPC_I8259
64114cf11afSPaul Mackerras	help
64214cf11afSPaul Mackerras	  Say Y here if you have a system based on a Motorola 8xx-series
64314cf11afSPaul Mackerras	  embedded processor with a QSPAN PCI interface, otherwise say N.
64414cf11afSPaul Mackerras
64514cf11afSPaul Mackerrasconfig PCI_8260
64614cf11afSPaul Mackerras	bool
64714cf11afSPaul Mackerras	depends on PCI && 8260
64825635c71SPaul Mackerras	select PPC_INDIRECT_PCI
64914cf11afSPaul Mackerras	default y
65014cf11afSPaul Mackerras
65114cf11afSPaul Mackerrasconfig 8260_PCI9
65214cf11afSPaul Mackerras	bool "Enable workaround for MPC826x erratum PCI 9"
653e00c5498SScott Wood	depends on PCI_8260 && !8272
65414cf11afSPaul Mackerras	default y
65514cf11afSPaul Mackerras
65614cf11afSPaul Mackerraschoice
65714cf11afSPaul Mackerras	prompt "IDMA channel for PCI 9 workaround"
65814cf11afSPaul Mackerras	depends on 8260_PCI9
65914cf11afSPaul Mackerras
66014cf11afSPaul Mackerrasconfig 8260_PCI9_IDMA1
66114cf11afSPaul Mackerras	bool "IDMA1"
66214cf11afSPaul Mackerras
66314cf11afSPaul Mackerrasconfig 8260_PCI9_IDMA2
66414cf11afSPaul Mackerras	bool "IDMA2"
66514cf11afSPaul Mackerras
66614cf11afSPaul Mackerrasconfig 8260_PCI9_IDMA3
66714cf11afSPaul Mackerras	bool "IDMA3"
66814cf11afSPaul Mackerras
66914cf11afSPaul Mackerrasconfig 8260_PCI9_IDMA4
67014cf11afSPaul Mackerras	bool "IDMA4"
67114cf11afSPaul Mackerras
67214cf11afSPaul Mackerrasendchoice
67314cf11afSPaul Mackerras
674bb53bb3dSJake Moilanensource "drivers/pci/pcie/Kconfig"
675bb53bb3dSJake Moilanen
67614cf11afSPaul Mackerrassource "drivers/pci/Kconfig"
67714cf11afSPaul Mackerras
67814cf11afSPaul Mackerrassource "drivers/pcmcia/Kconfig"
67914cf11afSPaul Mackerras
68014cf11afSPaul Mackerrassource "drivers/pci/hotplug/Kconfig"
68114cf11afSPaul Mackerras
682f1f389d5SZhang Weiconfig HAS_RAPIDIO
683f1f389d5SZhang Wei	bool
684f1f389d5SZhang Wei	default n
685f1f389d5SZhang Wei
686f1f389d5SZhang Weiconfig RAPIDIO
687f1f389d5SZhang Wei	bool "RapidIO support"
688f1f389d5SZhang Wei	depends on HAS_RAPIDIO
689f1f389d5SZhang Wei	help
690f1f389d5SZhang Wei	  If you say Y here, the kernel will include drivers and
691f1f389d5SZhang Wei	  infrastructure code to support RapidIO interconnect devices.
692f1f389d5SZhang Wei
693f1f389d5SZhang Weisource "drivers/rapidio/Kconfig"
694f1f389d5SZhang Wei
69514cf11afSPaul Mackerrasendmenu
69614cf11afSPaul Mackerras
69714cf11afSPaul Mackerrasmenu "Advanced setup"
69814cf11afSPaul Mackerras	depends on PPC32
69914cf11afSPaul Mackerras
70014cf11afSPaul Mackerrasconfig ADVANCED_OPTIONS
70114cf11afSPaul Mackerras	bool "Prompt for advanced kernel configuration options"
70214cf11afSPaul Mackerras	help
70314cf11afSPaul Mackerras	  This option will enable prompting for a variety of advanced kernel
70414cf11afSPaul Mackerras	  configuration options.  These options can cause the kernel to not
70514cf11afSPaul Mackerras	  work if they are set incorrectly, but can be used to optimize certain
70614cf11afSPaul Mackerras	  aspects of kernel memory management.
70714cf11afSPaul Mackerras
70814cf11afSPaul Mackerras	  Unless you know what you are doing, say N here.
70914cf11afSPaul Mackerras
71014cf11afSPaul Mackerrascomment "Default settings for advanced configuration options are used"
71114cf11afSPaul Mackerras	depends on !ADVANCED_OPTIONS
71214cf11afSPaul Mackerras
71314cf11afSPaul Mackerrasconfig LOWMEM_SIZE_BOOL
71414cf11afSPaul Mackerras	bool "Set maximum low memory"
71514cf11afSPaul Mackerras	depends on ADVANCED_OPTIONS
71614cf11afSPaul Mackerras	help
71714cf11afSPaul Mackerras	  This option allows you to set the maximum amount of memory which
71814cf11afSPaul Mackerras	  will be used as "low memory", that is, memory which the kernel can
71914cf11afSPaul Mackerras	  access directly, without having to set up a kernel virtual mapping.
72014cf11afSPaul Mackerras	  This can be useful in optimizing the layout of kernel virtual
72114cf11afSPaul Mackerras	  memory.
72214cf11afSPaul Mackerras
72314cf11afSPaul Mackerras	  Say N here unless you know what you are doing.
72414cf11afSPaul Mackerras
72514cf11afSPaul Mackerrasconfig LOWMEM_SIZE
72614cf11afSPaul Mackerras	hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
72714cf11afSPaul Mackerras	default "0x30000000"
72814cf11afSPaul Mackerras
72937dd2badSKumar Galaconfig RELOCATABLE
73037dd2badSKumar Gala	bool "Build a relocatable kernel (EXPERIMENTAL)"
73137dd2badSKumar Gala	depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && FSL_BOOKE
73237dd2badSKumar Gala	help
73337dd2badSKumar Gala	  This builds a kernel image that is capable of running at the
73437dd2badSKumar Gala	  location the kernel is loaded at (some alignment restrictions may
73537dd2badSKumar Gala	  exist).
73637dd2badSKumar Gala
73737dd2badSKumar Gala	  One use is for the kexec on panic case where the recovery kernel
73837dd2badSKumar Gala	  must live at a different physical address than the primary
73937dd2badSKumar Gala	  kernel.
74037dd2badSKumar Gala
74137dd2badSKumar Gala	  Note: If CONFIG_RELOCATABLE=y, then the kernel runs from the address
74237dd2badSKumar Gala	  it has been loaded at and the compile time physical addresses
74337dd2badSKumar Gala	  CONFIG_PHYSICAL_START is ignored.  However CONFIG_PHYSICAL_START
74437dd2badSKumar Gala	  setting can still be useful to bootwrappers that need to know the
74537dd2badSKumar Gala	  load location of the kernel (eg. u-boot/mkimage).
74637dd2badSKumar Gala
74737dd2badSKumar Galaconfig PAGE_OFFSET_BOOL
74837dd2badSKumar Gala	bool "Set custom page offset address"
74937dd2badSKumar Gala	depends on ADVANCED_OPTIONS
75037dd2badSKumar Gala	help
75137dd2badSKumar Gala	  This option allows you to set the kernel virtual address at which
75237dd2badSKumar Gala	  the kernel will map low memory.  This can be useful in optimizing
75337dd2badSKumar Gala	  the virtual memory layout of the system.
75437dd2badSKumar Gala
75537dd2badSKumar Gala	  Say N here unless you know what you are doing.
75637dd2badSKumar Gala
75737dd2badSKumar Galaconfig PAGE_OFFSET
75837dd2badSKumar Gala	hex "Virtual address of memory base" if PAGE_OFFSET_BOOL
75937dd2badSKumar Gala	default "0xc0000000"
76037dd2badSKumar Gala
76114cf11afSPaul Mackerrasconfig KERNEL_START_BOOL
76214cf11afSPaul Mackerras	bool "Set custom kernel base address"
76314cf11afSPaul Mackerras	depends on ADVANCED_OPTIONS
76414cf11afSPaul Mackerras	help
76514cf11afSPaul Mackerras	  This option allows you to set the kernel virtual address at which
76637dd2badSKumar Gala	  the kernel will be loaded.  Normally this should match PAGE_OFFSET
76737dd2badSKumar Gala	  however there are times (like kdump) that one might not want them
76837dd2badSKumar Gala	  to be the same.
76914cf11afSPaul Mackerras
77014cf11afSPaul Mackerras	  Say N here unless you know what you are doing.
77114cf11afSPaul Mackerras
77214cf11afSPaul Mackerrasconfig KERNEL_START
77314cf11afSPaul Mackerras	hex "Virtual address of kernel base" if KERNEL_START_BOOL
77437dd2badSKumar Gala	default PAGE_OFFSET if PAGE_OFFSET_BOOL
77537dd2badSKumar Gala	default "0xc2000000" if CRASH_DUMP
77614cf11afSPaul Mackerras	default "0xc0000000"
77714cf11afSPaul Mackerras
77837dd2badSKumar Galaconfig PHYSICAL_START_BOOL
77937dd2badSKumar Gala	bool "Set physical address where the kernel is loaded"
78037dd2badSKumar Gala	depends on ADVANCED_OPTIONS && FLATMEM && FSL_BOOKE
78137dd2badSKumar Gala	help
78237dd2badSKumar Gala	  This gives the physical address where the kernel is loaded.
78337dd2badSKumar Gala
78437dd2badSKumar Gala	  Say N here unless you know what you are doing.
78537dd2badSKumar Gala
78637dd2badSKumar Galaconfig PHYSICAL_START
78737dd2badSKumar Gala	hex "Physical address where the kernel is loaded" if PHYSICAL_START_BOOL
78837dd2badSKumar Gala	default "0x02000000" if PPC_STD_MMU && CRASH_DUMP
78937dd2badSKumar Gala	default "0x00000000"
79037dd2badSKumar Gala
79137dd2badSKumar Galaconfig PHYSICAL_ALIGN
79237dd2badSKumar Gala	hex
79337dd2badSKumar Gala	default "0x10000000" if FSL_BOOKE
79437dd2badSKumar Gala	help
79537dd2badSKumar Gala	  This value puts the alignment restrictions on physical address
79637dd2badSKumar Gala	  where kernel is loaded and run from. Kernel is compiled for an
79737dd2badSKumar Gala	  address which meets above alignment restriction.
79837dd2badSKumar Gala
79914cf11afSPaul Mackerrasconfig TASK_SIZE_BOOL
80014cf11afSPaul Mackerras	bool "Set custom user task size"
80114cf11afSPaul Mackerras	depends on ADVANCED_OPTIONS
80214cf11afSPaul Mackerras	help
80314cf11afSPaul Mackerras	  This option allows you to set the amount of virtual address space
80414cf11afSPaul Mackerras	  allocated to user tasks.  This can be useful in optimizing the
80514cf11afSPaul Mackerras	  virtual memory layout of the system.
80614cf11afSPaul Mackerras
80714cf11afSPaul Mackerras	  Say N here unless you know what you are doing.
80814cf11afSPaul Mackerras
80914cf11afSPaul Mackerrasconfig TASK_SIZE
81014cf11afSPaul Mackerras	hex "Size of user task space" if TASK_SIZE_BOOL
8114d9e5510SKumar Gala	default "0x80000000" if PPC_PREP || PPC_8xx
8124d9e5510SKumar Gala	default "0xc0000000"
81314cf11afSPaul Mackerras
81414cf11afSPaul Mackerrasconfig CONSISTENT_START_BOOL
81514cf11afSPaul Mackerras	bool "Set custom consistent memory pool address"
81614cf11afSPaul Mackerras	depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
81714cf11afSPaul Mackerras	help
81814cf11afSPaul Mackerras	  This option allows you to set the base virtual address
8194b3f686dSMatt LaPlante	  of the consistent memory pool.  This pool of virtual
82014cf11afSPaul Mackerras	  memory is used to make consistent memory allocations.
82114cf11afSPaul Mackerras
82214cf11afSPaul Mackerrasconfig CONSISTENT_START
82314cf11afSPaul Mackerras	hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
824ccf0d68eSScott Wood	default "0xfd000000" if (NOT_COHERENT_CACHE && 8xx)
82514cf11afSPaul Mackerras	default "0xff100000" if NOT_COHERENT_CACHE
82614cf11afSPaul Mackerras
82714cf11afSPaul Mackerrasconfig CONSISTENT_SIZE_BOOL
82814cf11afSPaul Mackerras	bool "Set custom consistent memory pool size"
82914cf11afSPaul Mackerras	depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
83014cf11afSPaul Mackerras	help
8314b3f686dSMatt LaPlante	  This option allows you to set the size of the
83214cf11afSPaul Mackerras	  consistent memory pool.  This pool of virtual memory
83314cf11afSPaul Mackerras	  is used to make consistent memory allocations.
83414cf11afSPaul Mackerras
83514cf11afSPaul Mackerrasconfig CONSISTENT_SIZE
83614cf11afSPaul Mackerras	hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
83714cf11afSPaul Mackerras	default "0x00200000" if NOT_COHERENT_CACHE
83814cf11afSPaul Mackerras
83914cf11afSPaul Mackerrasconfig PIN_TLB
84014cf11afSPaul Mackerras	bool "Pinned Kernel TLBs (860 ONLY)"
84114cf11afSPaul Mackerras	depends on ADVANCED_OPTIONS && 8xx
84214cf11afSPaul Mackerrasendmenu
84314cf11afSPaul Mackerras
844cabb5587SStephen Rothwellif PPC64
845549e8152SPaul Mackerrasconfig RELOCATABLE
846549e8152SPaul Mackerras	bool "Build a relocatable kernel"
847549e8152SPaul Mackerras	help
848549e8152SPaul Mackerras	  This builds a kernel image that is capable of running anywhere
849549e8152SPaul Mackerras	  in the RMA (real memory area) at any 16k-aligned base address.
850549e8152SPaul Mackerras	  The kernel is linked as a position-independent executable (PIE)
851549e8152SPaul Mackerras	  and contains dynamic relocations which are processed early
852549e8152SPaul Mackerras	  in the bootup process.
853549e8152SPaul Mackerras
854549e8152SPaul Mackerras	  One use is for the kexec on panic case where the recovery kernel
855549e8152SPaul Mackerras	  must live at a different physical address than the primary
856549e8152SPaul Mackerras	  kernel.
857549e8152SPaul Mackerras
85837dd2badSKumar Galaconfig PAGE_OFFSET
859cabb5587SStephen Rothwell	hex
860eeb2d218SStephen Rothwell	default "0xc000000000000000"
86137dd2badSKumar Galaconfig KERNEL_START
86237dd2badSKumar Gala	hex
86337dd2badSKumar Gala	default "0xc000000000000000"
86437dd2badSKumar Galaconfig PHYSICAL_START
86537dd2badSKumar Gala	hex
86637dd2badSKumar Gala	default "0x00000000"
867cabb5587SStephen Rothwellendif
868cabb5587SStephen Rothwell
86914cf11afSPaul Mackerrassource "net/Kconfig"
87014cf11afSPaul Mackerras
87114cf11afSPaul Mackerrassource "drivers/Kconfig"
87214cf11afSPaul Mackerras
87314cf11afSPaul Mackerrassource "fs/Kconfig"
87414cf11afSPaul Mackerras
87514cf11afSPaul Mackerras# XXX source "arch/ppc/8xx_io/Kconfig"
87614cf11afSPaul Mackerras
87714cf11afSPaul Mackerras# XXX source "arch/ppc/8260_io/Kconfig"
87814cf11afSPaul Mackerras
87998658538SLi Yangsource "arch/powerpc/sysdev/qe_lib/Kconfig"
88098658538SLi Yang
88114cf11afSPaul Mackerrassource "lib/Kconfig"
88214cf11afSPaul Mackerras
88314cf11afSPaul Mackerrassource "arch/powerpc/Kconfig.debug"
88414cf11afSPaul Mackerras
88514cf11afSPaul Mackerrassource "security/Kconfig"
88614cf11afSPaul Mackerras
88714cf11afSPaul Mackerrasconfig KEYS_COMPAT
88814cf11afSPaul Mackerras	bool
88914cf11afSPaul Mackerras	depends on COMPAT && KEYS
89014cf11afSPaul Mackerras	default y
89114cf11afSPaul Mackerras
89214cf11afSPaul Mackerrassource "crypto/Kconfig"
8936f668280SDomen Puncer
8946f668280SDomen Puncerconfig PPC_CLOCK
8956f668280SDomen Puncer	bool
8966f668280SDomen Puncer	default n
8979483a578SDavid Brownell	select HAVE_CLK
8981088a209SSylvain Munaut
8991088a209SSylvain Munautconfig PPC_LIB_RHEAP
9001088a209SSylvain Munaut	bool
9011088a209SSylvain Munaut
902bbf45ba5SHollis Blanchardsource "arch/powerpc/kvm/Kconfig"
903