aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/Kconfig
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2012-01-06 20:58:22 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2012-01-06 20:58:22 -0500
commite4e88f31bcb5f05f24b9ae518d4ecb44e1a7774d (patch)
tree9eef6998f5bbd1a2c999011d9e0151f00c6e7297 /arch/powerpc/Kconfig
parent9753dfe19a85e7e45a34a56f4cb2048bb4f50e27 (diff)
parentef88e3911c0e0301e73fa3b3b2567aabdbe17cc4 (diff)
Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (185 commits) powerpc: fix compile error with 85xx/p1010rdb.c powerpc: fix compile error with 85xx/p1023_rds.c powerpc/fsl: add MSI support for the Freescale hypervisor arch/powerpc/sysdev/fsl_rmu.c: introduce missing kfree powerpc/fsl: Add support for Integrated Flash Controller powerpc/fsl: update compatiable on fsl 16550 uart nodes powerpc/85xx: fix PCI and localbus properties in p1022ds.dts powerpc/85xx: re-enable ePAPR byte channel driver in corenet32_smp_defconfig powerpc/fsl: Update defconfigs to enable some standard FSL HW features powerpc: Add TBI PHY node to first MDIO bus sbc834x: put full compat string in board match check powerpc/fsl-pci: Allow 64-bit PCIe devices to DMA to any memory address powerpc: Fix unpaired probe_hcall_entry and probe_hcall_exit offb: Fix setting of the pseudo-palette for >8bpp offb: Add palette hack for qemu "standard vga" framebuffer offb: Fix bug in calculating requested vram size powerpc/boot: Change the WARN to INFO for boot wrapper overlap message powerpc/44x: Fix build error on currituck platform powerpc/boot: Change the load address for the wrapper to fit the kernel powerpc/44x: Enable CRASH_DUMP for 440x ... Fix up a trivial conflict in arch/powerpc/include/asm/cputime.h due to the additional sparse-checking code for cputime_t.
Diffstat (limited to 'arch/powerpc/Kconfig')
-rw-r--r--arch/powerpc/Kconfig54
1 files changed, 46 insertions, 8 deletions
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index ead0bc68439d..692ac7588e20 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -87,6 +87,10 @@ config ARCH_HAS_ILOG2_U64
87 bool 87 bool
88 default y if 64BIT 88 default y if 64BIT
89 89
90config ARCH_HAS_CPU_IDLE_WAIT
91 bool
92 default y
93
90config GENERIC_HWEIGHT 94config GENERIC_HWEIGHT
91 bool 95 bool
92 default y 96 default y
@@ -133,6 +137,7 @@ config PPC
133 select IRQ_PER_CPU 137 select IRQ_PER_CPU
134 select GENERIC_IRQ_SHOW 138 select GENERIC_IRQ_SHOW
135 select GENERIC_IRQ_SHOW_LEVEL 139 select GENERIC_IRQ_SHOW_LEVEL
140 select IRQ_FORCED_THREADING
136 select HAVE_RCU_TABLE_FREE if SMP 141 select HAVE_RCU_TABLE_FREE if SMP
137 select HAVE_SYSCALL_TRACEPOINTS 142 select HAVE_SYSCALL_TRACEPOINTS
138 select HAVE_BPF_JIT if (PPC64 && NET) 143 select HAVE_BPF_JIT if (PPC64 && NET)
@@ -363,8 +368,9 @@ config KEXEC
363 368
364config CRASH_DUMP 369config CRASH_DUMP
365 bool "Build a kdump crash kernel" 370 bool "Build a kdump crash kernel"
366 depends on PPC64 || 6xx || FSL_BOOKE 371 depends on PPC64 || 6xx || FSL_BOOKE || (44x && !SMP && !PPC_47x)
367 select RELOCATABLE if PPC64 || FSL_BOOKE 372 select RELOCATABLE if PPC64 || 44x
373 select DYNAMIC_MEMSTART if FSL_BOOKE
368 help 374 help
369 Build a kernel suitable for use as a kdump capture kernel. 375 Build a kernel suitable for use as a kdump capture kernel.
370 The same kernel binary can be used as production kernel and dump 376 The same kernel binary can be used as production kernel and dump
@@ -685,6 +691,10 @@ config FSL_LBC
685 controller. Also contains some common code used by 691 controller. Also contains some common code used by
686 drivers for specific local bus peripherals. 692 drivers for specific local bus peripherals.
687 693
694config FSL_IFC
695 bool
696 depends on FSL_SOC
697
688config FSL_GTM 698config FSL_GTM
689 bool 699 bool
690 depends on PPC_83xx || QUICC_ENGINE || CPM2 700 depends on PPC_83xx || QUICC_ENGINE || CPM2
@@ -770,6 +780,10 @@ source "drivers/rapidio/Kconfig"
770 780
771endmenu 781endmenu
772 782
783config NONSTATIC_KERNEL
784 bool
785 default n
786
773menu "Advanced setup" 787menu "Advanced setup"
774 depends on PPC32 788 depends on PPC32
775 789
@@ -819,13 +833,32 @@ config LOWMEM_CAM_NUM
819 int "Number of CAMs to use to map low memory" if LOWMEM_CAM_NUM_BOOL 833 int "Number of CAMs to use to map low memory" if LOWMEM_CAM_NUM_BOOL
820 default 3 834 default 3
821 835
836config DYNAMIC_MEMSTART
837 bool "Enable page aligned dynamic load address for kernel (EXPERIMENTAL)"
838 depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && (FSL_BOOKE || 44x)
839 select NONSTATIC_KERNEL
840 help
841 This option enables the kernel to be loaded at any page aligned
842 physical address. The kernel creates a mapping from KERNELBASE to
843 the address where the kernel is loaded. The page size here implies
844 the TLB page size of the mapping for kernel on the particular platform.
845 Please refer to the init code for finding the TLB page size.
846
847 DYNAMIC_MEMSTART is an easy way of implementing pseudo-RELOCATABLE
848 kernel image, where the only restriction is the page aligned kernel
849 load address. When this option is enabled, the compile time physical
850 address CONFIG_PHYSICAL_START is ignored.
851
852 This option is overridden by CONFIG_RELOCATABLE
853
822config RELOCATABLE 854config RELOCATABLE
823 bool "Build a relocatable kernel (EXPERIMENTAL)" 855 bool "Build a relocatable kernel (EXPERIMENTAL)"
824 depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && (FSL_BOOKE || PPC_47x) 856 depends on EXPERIMENTAL && ADVANCED_OPTIONS && FLATMEM && 44x
857 select NONSTATIC_KERNEL
825 help 858 help
826 This builds a kernel image that is capable of running at the 859 This builds a kernel image that is capable of running at the
827 location the kernel is loaded at (some alignment restrictions may 860 location the kernel is loaded at, without any alignment restrictions.
828 exist). 861 This feature is a superset of DYNAMIC_MEMSTART and hence overrides it.
829 862
830 One use is for the kexec on panic case where the recovery kernel 863 One use is for the kexec on panic case where the recovery kernel
831 must live at a different physical address than the primary 864 must live at a different physical address than the primary
@@ -835,7 +868,11 @@ config RELOCATABLE
835 it has been loaded at and the compile time physical addresses 868 it has been loaded at and the compile time physical addresses
836 CONFIG_PHYSICAL_START is ignored. However CONFIG_PHYSICAL_START 869 CONFIG_PHYSICAL_START is ignored. However CONFIG_PHYSICAL_START
837 setting can still be useful to bootwrappers that need to know the 870 setting can still be useful to bootwrappers that need to know the
838 load location of the kernel (eg. u-boot/mkimage). 871 load address of the kernel (eg. u-boot/mkimage).
872
873config RELOCATABLE_PPC32
874 def_bool y
875 depends on PPC32 && RELOCATABLE
839 876
840config PAGE_OFFSET_BOOL 877config PAGE_OFFSET_BOOL
841 bool "Set custom page offset address" 878 bool "Set custom page offset address"
@@ -865,7 +902,7 @@ config KERNEL_START_BOOL
865config KERNEL_START 902config KERNEL_START
866 hex "Virtual address of kernel base" if KERNEL_START_BOOL 903 hex "Virtual address of kernel base" if KERNEL_START_BOOL
867 default PAGE_OFFSET if PAGE_OFFSET_BOOL 904 default PAGE_OFFSET if PAGE_OFFSET_BOOL
868 default "0xc2000000" if CRASH_DUMP && !RELOCATABLE 905 default "0xc2000000" if CRASH_DUMP && !NONSTATIC_KERNEL
869 default "0xc0000000" 906 default "0xc0000000"
870 907
871config PHYSICAL_START_BOOL 908config PHYSICAL_START_BOOL
@@ -878,7 +915,7 @@ config PHYSICAL_START_BOOL
878 915
879config PHYSICAL_START 916config PHYSICAL_START
880 hex "Physical address where the kernel is loaded" if PHYSICAL_START_BOOL 917 hex "Physical address where the kernel is loaded" if PHYSICAL_START_BOOL
881 default "0x02000000" if PPC_STD_MMU && CRASH_DUMP && !RELOCATABLE 918 default "0x02000000" if PPC_STD_MMU && CRASH_DUMP && !NONSTATIC_KERNEL
882 default "0x00000000" 919 default "0x00000000"
883 920
884config PHYSICAL_ALIGN 921config PHYSICAL_ALIGN
@@ -924,6 +961,7 @@ endmenu
924if PPC64 961if PPC64
925config RELOCATABLE 962config RELOCATABLE
926 bool "Build a relocatable kernel" 963 bool "Build a relocatable kernel"
964 select NONSTATIC_KERNEL
927 help 965 help
928 This builds a kernel image that is capable of running anywhere 966 This builds a kernel image that is capable of running anywhere
929 in the RMA (real memory area) at any 16k-aligned base address. 967 in the RMA (real memory area) at any 16k-aligned base address.