aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/Kconfig')
-rw-r--r--arch/powerpc/Kconfig66
1 files changed, 50 insertions, 16 deletions
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 525c13a4de93..79f25cef32df 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -141,7 +141,7 @@ config GENERIC_NVRAM
141 bool 141 bool
142 default y if PPC32 142 default y if PPC32
143 143
144config SCHED_NO_NO_OMIT_FRAME_POINTER 144config SCHED_OMIT_FRAME_POINTER
145 bool 145 bool
146 default y 146 default y
147 147
@@ -285,6 +285,10 @@ config IOMMU_VMERGE
285config IOMMU_HELPER 285config IOMMU_HELPER
286 def_bool PPC64 286 def_bool PPC64
287 287
288config PPC_NEED_DMA_SYNC_OPS
289 def_bool y
290 depends on NOT_COHERENT_CACHE
291
288config HOTPLUG_CPU 292config HOTPLUG_CPU
289 bool "Support for enabling/disabling CPUs" 293 bool "Support for enabling/disabling CPUs"
290 depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC) 294 depends on SMP && HOTPLUG && EXPERIMENTAL && (PPC_PSERIES || PPC_PMAC)
@@ -322,7 +326,7 @@ config KEXEC
322 326
323config CRASH_DUMP 327config CRASH_DUMP
324 bool "Build a kdump crash kernel" 328 bool "Build a kdump crash kernel"
325 depends on PPC_MULTIPLATFORM && PPC64 && RELOCATABLE 329 depends on (PPC64 && RELOCATABLE) || 6xx
326 help 330 help
327 Build a kernel suitable for use as a kdump capture kernel. 331 Build a kernel suitable for use as a kdump capture kernel.
328 The same kernel binary can be used as production kernel and dump 332 The same kernel binary can be used as production kernel and dump
@@ -401,23 +405,53 @@ config PPC_HAS_HASH_64K
401 depends on PPC64 405 depends on PPC64
402 default n 406 default n
403 407
404config PPC_64K_PAGES 408choice
405 bool "64k page size" 409 prompt "Page size"
406 depends on PPC64 410 default PPC_4K_PAGES
407 select PPC_HAS_HASH_64K
408 help 411 help
409 This option changes the kernel logical page size to 64k. On machines 412 Select the kernel logical page size. Increasing the page size
410 without processor support for 64k pages, the kernel will simulate 413 will reduce software overhead at each page boundary, allow
411 them by loading each individual 4k page on demand transparently, 414 hardware prefetch mechanisms to be more effective, and allow
412 while on hardware with such support, it will be used to map 415 larger dma transfers increasing IO efficiency and reducing
413 normal application pages. 416 overhead. However the utilization of memory will increase.
417 For example, each cached file will using a multiple of the
418 page size to hold its contents and the difference between the
419 end of file and the end of page is wasted.
420
421 Some dedicated systems, such as software raid serving with
422 accelerated calculations, have shown significant increases.
423
424 If you configure a 64 bit kernel for 64k pages but the
425 processor does not support them, then the kernel will simulate
426 them with 4k pages, loading them on demand, but with the
427 reduced software overhead and larger internal fragmentation.
428 For the 32 bit kernel, a large page option will not be offered
429 unless it is supported by the configured processor.
430
431 If unsure, choose 4K_PAGES.
432
433config PPC_4K_PAGES
434 bool "4k page size"
435
436config PPC_16K_PAGES
437 bool "16k page size" if 44x
438
439config PPC_64K_PAGES
440 bool "64k page size" if 44x || PPC_STD_MMU_64
441 select PPC_HAS_HASH_64K if PPC_STD_MMU_64
442
443endchoice
414 444
415config FORCE_MAX_ZONEORDER 445config FORCE_MAX_ZONEORDER
416 int "Maximum zone order" 446 int "Maximum zone order"
417 range 9 64 if PPC_64K_PAGES 447 range 9 64 if PPC_STD_MMU_64 && PPC_64K_PAGES
418 default "9" if PPC_64K_PAGES 448 default "9" if PPC_STD_MMU_64 && PPC_64K_PAGES
419 range 13 64 if PPC64 && !PPC_64K_PAGES 449 range 13 64 if PPC_STD_MMU_64 && !PPC_64K_PAGES
420 default "13" if PPC64 && !PPC_64K_PAGES 450 default "13" if PPC_STD_MMU_64 && !PPC_64K_PAGES
451 range 9 64 if PPC_STD_MMU_32 && PPC_16K_PAGES
452 default "9" if PPC_STD_MMU_32 && PPC_16K_PAGES
453 range 7 64 if PPC_STD_MMU_32 && PPC_64K_PAGES
454 default "7" if PPC_STD_MMU_32 && PPC_64K_PAGES
421 range 11 64 455 range 11 64
422 default "11" 456 default "11"
423 help 457 help
@@ -437,7 +471,7 @@ config FORCE_MAX_ZONEORDER
437 471
438config PPC_SUBPAGE_PROT 472config PPC_SUBPAGE_PROT
439 bool "Support setting protections for 4k subpages" 473 bool "Support setting protections for 4k subpages"
440 depends on PPC_64K_PAGES 474 depends on PPC_STD_MMU_64 && PPC_64K_PAGES
441 help 475 help
442 This option adds support for a system call to allow user programs 476 This option adds support for a system call to allow user programs
443 to set access permissions (read/write, readonly, or no access) 477 to set access permissions (read/write, readonly, or no access)