diff options
author | Suzuki Poulose <suzuki@in.ibm.com> | 2011-12-14 17:57:15 -0500 |
---|---|---|
committer | Josh Boyer <jwboyer@gmail.com> | 2011-12-20 10:20:19 -0500 |
commit | 0f890c8d205e47f7cb0d381ffba582a170fd4f72 (patch) | |
tree | 66d8370622f15636134b83bd19145ce61d8d719c /arch/powerpc/include/asm | |
parent | 3f53638c805f75989f4b4be07efcfd173cdd5e2d (diff) |
powerpc: Rename mapping based RELOCATABLE to DYNAMIC_MEMSTART for BookE
The current implementation of CONFIG_RELOCATABLE in BookE is based
on mapping the page aligned kernel load address to KERNELBASE. This
approach however is not enough for platforms, where the TLB page size
is large (e.g, 256M on 44x). So we are renaming the RELOCATABLE used
currently in BookE to DYNAMIC_MEMSTART to reflect the actual method.
The CONFIG_RELOCATABLE for PPC32(BookE) based on processing of the
dynamic relocations will be introduced in the later in the patch series.
This change would allow the use of the old method of RELOCATABLE for
platforms which can afford to enforce the page alignment (platforms with
smaller TLB size).
Changes since v3:
* Introduced a new config, NONSTATIC_KERNEL, to denote a kernel which is
either a RELOCATABLE or DYNAMIC_MEMSTART(Suggested by: Josh Boyer)
Suggested-by: Scott Wood <scottwood@freescale.com>
Tested-by: Scott Wood <scottwood@freescale.com>
Signed-off-by: Suzuki K. Poulose <suzuki@in.ibm.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: Josh Boyer <jwboyer@gmail.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: linux ppc dev <linuxppc-dev@lists.ozlabs.org>
Signed-off-by: Josh Boyer <jwboyer@gmail.com>
Diffstat (limited to 'arch/powerpc/include/asm')
-rw-r--r-- | arch/powerpc/include/asm/kdump.h | 4 | ||||
-rw-r--r-- | arch/powerpc/include/asm/page.h | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/arch/powerpc/include/asm/kdump.h b/arch/powerpc/include/asm/kdump.h index bffd062adf79..c9776202d7ec 100644 --- a/arch/powerpc/include/asm/kdump.h +++ b/arch/powerpc/include/asm/kdump.h | |||
@@ -32,11 +32,11 @@ | |||
32 | 32 | ||
33 | #ifndef __ASSEMBLY__ | 33 | #ifndef __ASSEMBLY__ |
34 | 34 | ||
35 | #if defined(CONFIG_CRASH_DUMP) && !defined(CONFIG_RELOCATABLE) | 35 | #if defined(CONFIG_CRASH_DUMP) && !defined(CONFIG_NONSTATIC_KERNEL) |
36 | extern void reserve_kdump_trampoline(void); | 36 | extern void reserve_kdump_trampoline(void); |
37 | extern void setup_kdump_trampoline(void); | 37 | extern void setup_kdump_trampoline(void); |
38 | #else | 38 | #else |
39 | /* !CRASH_DUMP || RELOCATABLE */ | 39 | /* !CRASH_DUMP || !NONSTATIC_KERNEL */ |
40 | static inline void reserve_kdump_trampoline(void) { ; } | 40 | static inline void reserve_kdump_trampoline(void) { ; } |
41 | static inline void setup_kdump_trampoline(void) { ; } | 41 | static inline void setup_kdump_trampoline(void) { ; } |
42 | #endif | 42 | #endif |
diff --git a/arch/powerpc/include/asm/page.h b/arch/powerpc/include/asm/page.h index 9d7485c7e6f8..f149967ee6b5 100644 --- a/arch/powerpc/include/asm/page.h +++ b/arch/powerpc/include/asm/page.h | |||
@@ -92,7 +92,7 @@ extern unsigned int HPAGE_SHIFT; | |||
92 | #define PAGE_OFFSET ASM_CONST(CONFIG_PAGE_OFFSET) | 92 | #define PAGE_OFFSET ASM_CONST(CONFIG_PAGE_OFFSET) |
93 | #define LOAD_OFFSET ASM_CONST((CONFIG_KERNEL_START-CONFIG_PHYSICAL_START)) | 93 | #define LOAD_OFFSET ASM_CONST((CONFIG_KERNEL_START-CONFIG_PHYSICAL_START)) |
94 | 94 | ||
95 | #if defined(CONFIG_RELOCATABLE) | 95 | #if defined(CONFIG_NONSTATIC_KERNEL) |
96 | #ifndef __ASSEMBLY__ | 96 | #ifndef __ASSEMBLY__ |
97 | 97 | ||
98 | extern phys_addr_t memstart_addr; | 98 | extern phys_addr_t memstart_addr; |
@@ -105,7 +105,7 @@ extern phys_addr_t kernstart_addr; | |||
105 | 105 | ||
106 | #ifdef CONFIG_PPC64 | 106 | #ifdef CONFIG_PPC64 |
107 | #define MEMORY_START 0UL | 107 | #define MEMORY_START 0UL |
108 | #elif defined(CONFIG_RELOCATABLE) | 108 | #elif defined(CONFIG_NONSTATIC_KERNEL) |
109 | #define MEMORY_START memstart_addr | 109 | #define MEMORY_START memstart_addr |
110 | #else | 110 | #else |
111 | #define MEMORY_START (PHYSICAL_START + PAGE_OFFSET - KERNELBASE) | 111 | #define MEMORY_START (PHYSICAL_START + PAGE_OFFSET - KERNELBASE) |