aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/Kconfig
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/Kconfig')
-rw-r--r--arch/powerpc/Kconfig74
1 files changed, 47 insertions, 27 deletions
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 74cc312c347c..ad6b1c084fe3 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -111,6 +111,7 @@ config PPC
111 select HAVE_FTRACE_MCOUNT_RECORD 111 select HAVE_FTRACE_MCOUNT_RECORD
112 select HAVE_DYNAMIC_FTRACE 112 select HAVE_DYNAMIC_FTRACE
113 select HAVE_FUNCTION_TRACER 113 select HAVE_FUNCTION_TRACER
114 select HAVE_FUNCTION_GRAPH_TRACER
114 select ARCH_WANT_OPTIONAL_GPIOLIB 115 select ARCH_WANT_OPTIONAL_GPIOLIB
115 select HAVE_IDE 116 select HAVE_IDE
116 select HAVE_IOREMAP_PROT 117 select HAVE_IOREMAP_PROT
@@ -312,7 +313,7 @@ config ARCH_ENABLE_MEMORY_HOTREMOVE
312 313
313config KEXEC 314config KEXEC
314 bool "kexec system call (EXPERIMENTAL)" 315 bool "kexec system call (EXPERIMENTAL)"
315 depends on (PPC_PRPMC2800 || PPC_MULTIPLATFORM) && EXPERIMENTAL 316 depends on BOOK3S && EXPERIMENTAL
316 help 317 help
317 kexec is a system call that implements the ability to shutdown your 318 kexec is a system call that implements the ability to shutdown your
318 current kernel, and to start another kernel. It is like a reboot 319 current kernel, and to start another kernel. It is like a reboot
@@ -409,6 +410,18 @@ config PPC_HAS_HASH_64K
409 depends on PPC64 410 depends on PPC64
410 default n 411 default n
411 412
413config STDBINUTILS
414 bool "Using standard binutils settings"
415 depends on 44x
416 default y
417 help
418 Turning this option off allows you to select 256KB PAGE_SIZE on 44x.
419 Note, that kernel will be able to run only those applications,
420 which had been compiled using binutils later than 2.17.50.0.3 with
421 '-zmax-page-size' set to 256K (the default is 64K). Or, if using
422 the older binutils, you can patch them with a trivial patch, which
423 changes the ELF_MAXPAGESIZE definition from 0x10000 to 0x40000.
424
412choice 425choice
413 prompt "Page size" 426 prompt "Page size"
414 default PPC_4K_PAGES 427 default PPC_4K_PAGES
@@ -444,6 +457,19 @@ config PPC_64K_PAGES
444 bool "64k page size" if 44x || PPC_STD_MMU_64 457 bool "64k page size" if 44x || PPC_STD_MMU_64
445 select PPC_HAS_HASH_64K if PPC_STD_MMU_64 458 select PPC_HAS_HASH_64K if PPC_STD_MMU_64
446 459
460config PPC_256K_PAGES
461 bool "256k page size" if 44x
462 depends on !STDBINUTILS && (!SHMEM || BROKEN)
463 help
464 Make the page size 256k.
465
466 As the ELF standard only requires alignment to support page
467 sizes up to 64k, you will need to compile all of your user
468 space applications with a non-standard binutils settings
469 (see the STDBINUTILS description for details).
470
471 Say N unless you know what you are doing.
472
447endchoice 473endchoice
448 474
449config FORCE_MAX_ZONEORDER 475config FORCE_MAX_ZONEORDER
@@ -456,6 +482,8 @@ config FORCE_MAX_ZONEORDER
456 default "9" if PPC_STD_MMU_32 && PPC_16K_PAGES 482 default "9" if PPC_STD_MMU_32 && PPC_16K_PAGES
457 range 7 64 if PPC_STD_MMU_32 && PPC_64K_PAGES 483 range 7 64 if PPC_STD_MMU_32 && PPC_64K_PAGES
458 default "7" if PPC_STD_MMU_32 && PPC_64K_PAGES 484 default "7" if PPC_STD_MMU_32 && PPC_64K_PAGES
485 range 5 64 if PPC_STD_MMU_32 && PPC_256K_PAGES
486 default "5" if PPC_STD_MMU_32 && PPC_256K_PAGES
459 range 11 64 487 range 11 64
460 default "11" 488 default "11"
461 help 489 help
@@ -594,6 +622,7 @@ config FSL_SOC
594config FSL_PCI 622config FSL_PCI
595 bool 623 bool
596 select PPC_INDIRECT_PCI 624 select PPC_INDIRECT_PCI
625 select PCI_QUIRKS
597 626
598config 4xx_SOC 627config 4xx_SOC
599 bool 628 bool
@@ -730,6 +759,22 @@ config LOWMEM_SIZE
730 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL 759 hex "Maximum low memory size (in bytes)" if LOWMEM_SIZE_BOOL
731 default "0x30000000" 760 default "0x30000000"
732 761
762config LOWMEM_CAM_NUM_BOOL
763 bool "Set number of CAMs to use to map low memory"
764 depends on ADVANCED_OPTIONS && FSL_BOOKE
765 help
766 This option allows you to set the maximum number of CAM slots that
767 will be used to map low memory. There are a limited number of slots
768 available and even more limited number that will fit in the L1 MMU.
769 However, using more entries will allow mapping more low memory. This
770 can be useful in optimizing the layout of kernel virtual memory.
771
772 Say N here unless you know what you are doing.
773
774config LOWMEM_CAM_NUM
775 int "Number of CAMs to use to map low memory" if LOWMEM_CAM_NUM_BOOL
776 default 3
777
733config RELOCATABLE 778config RELOCATABLE
734 bool "Build a relocatable kernel (EXPERIMENTAL)" 779 bool "Build a relocatable kernel (EXPERIMENTAL)"
735 depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && FSL_BOOKE 780 depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && FSL_BOOKE
@@ -794,7 +839,7 @@ config PHYSICAL_START
794 839
795config PHYSICAL_ALIGN 840config PHYSICAL_ALIGN
796 hex 841 hex
797 default "0x10000000" if FSL_BOOKE 842 default "0x04000000" if FSL_BOOKE
798 help 843 help
799 This value puts the alignment restrictions on physical address 844 This value puts the alignment restrictions on physical address
800 where kernel is loaded and run from. Kernel is compiled for an 845 where kernel is loaded and run from. Kernel is compiled for an
@@ -815,31 +860,6 @@ config TASK_SIZE
815 default "0x80000000" if PPC_PREP || PPC_8xx 860 default "0x80000000" if PPC_PREP || PPC_8xx
816 default "0xc0000000" 861 default "0xc0000000"
817 862
818config CONSISTENT_START_BOOL
819 bool "Set custom consistent memory pool address"
820 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
821 help
822 This option allows you to set the base virtual address
823 of the consistent memory pool. This pool of virtual
824 memory is used to make consistent memory allocations.
825
826config CONSISTENT_START
827 hex "Base virtual address of consistent memory pool" if CONSISTENT_START_BOOL
828 default "0xfd000000" if (NOT_COHERENT_CACHE && 8xx)
829 default "0xff100000" if NOT_COHERENT_CACHE
830
831config CONSISTENT_SIZE_BOOL
832 bool "Set custom consistent memory pool size"
833 depends on ADVANCED_OPTIONS && NOT_COHERENT_CACHE
834 help
835 This option allows you to set the size of the
836 consistent memory pool. This pool of virtual memory
837 is used to make consistent memory allocations.
838
839config CONSISTENT_SIZE
840 hex "Size of consistent memory pool" if CONSISTENT_SIZE_BOOL
841 default "0x00200000" if NOT_COHERENT_CACHE
842
843config PIN_TLB 863config PIN_TLB
844 bool "Pinned Kernel TLBs (860 ONLY)" 864 bool "Pinned Kernel TLBs (860 ONLY)"
845 depends on ADVANCED_OPTIONS && 8xx 865 depends on ADVANCED_OPTIONS && 8xx