diff options
author | Simon Horman <horms@verge.net.au> | 2011-09-15 07:13:00 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2011-10-28 02:03:43 -0400 |
commit | e66ac3f26aef131f5ca60350d25fba95f43acd0d (patch) | |
tree | 480337b09468bb5e8d1660c218d04a1a63b940e3 /arch/sh/boot | |
parent | d11584a0449f881181dc94dd697d3f3896c15c73 (diff) |
sh: kexec: Add PHYSICAL_START
Add PHYSICAL_START kernel configuration parameter to set the address at
which the kernel should be loaded.
It has been observed on an sh7757lcr that simply modifying MEMORY_START
does not achieve this goal for 32bit sh. This is due to MEMORY_OFFSET in
arch/sh/kernel/vmlinux.lds.S bot being based on MEMORY_START on such
systems.
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/boot')
-rw-r--r-- | arch/sh/boot/Makefile | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/sh/boot/Makefile b/arch/sh/boot/Makefile index ba515d800245..e4ea31a62c55 100644 --- a/arch/sh/boot/Makefile +++ b/arch/sh/boot/Makefile | |||
@@ -19,6 +19,7 @@ CONFIG_MEMORY_START ?= 0x0c000000 | |||
19 | CONFIG_BOOT_LINK_OFFSET ?= 0x00800000 | 19 | CONFIG_BOOT_LINK_OFFSET ?= 0x00800000 |
20 | CONFIG_ZERO_PAGE_OFFSET ?= 0x00001000 | 20 | CONFIG_ZERO_PAGE_OFFSET ?= 0x00001000 |
21 | CONFIG_ENTRY_OFFSET ?= 0x00001000 | 21 | CONFIG_ENTRY_OFFSET ?= 0x00001000 |
22 | CONFIG_PHYSICAL_START ?= $(CONFIG_MEMORY_START) | ||
22 | 23 | ||
23 | suffix-y := bin | 24 | suffix-y := bin |
24 | suffix-$(CONFIG_KERNEL_GZIP) := gz | 25 | suffix-$(CONFIG_KERNEL_GZIP) := gz |
@@ -48,7 +49,7 @@ $(obj)/romimage/vmlinux: $(obj)/zImage FORCE | |||
48 | $(Q)$(MAKE) $(build)=$(obj)/romimage $@ | 49 | $(Q)$(MAKE) $(build)=$(obj)/romimage $@ |
49 | 50 | ||
50 | KERNEL_MEMORY := $(shell /bin/bash -c 'printf "0x%08x" \ | 51 | KERNEL_MEMORY := $(shell /bin/bash -c 'printf "0x%08x" \ |
51 | $$[$(CONFIG_MEMORY_START) & 0x1fffffff]') | 52 | $$[$(CONFIG_PHYSICAL_START) & 0x1fffffff]') |
52 | 53 | ||
53 | KERNEL_LOAD := $(shell /bin/bash -c 'printf "0x%08x" \ | 54 | KERNEL_LOAD := $(shell /bin/bash -c 'printf "0x%08x" \ |
54 | $$[$(CONFIG_PAGE_OFFSET) + \ | 55 | $$[$(CONFIG_PAGE_OFFSET) + \ |
@@ -114,4 +115,5 @@ $(obj)/uImage: $(obj)/uImage.$(suffix-y) | |||
114 | @echo ' Image $@ is ready' | 115 | @echo ' Image $@ is ready' |
115 | 116 | ||
116 | export CONFIG_PAGE_OFFSET CONFIG_MEMORY_START CONFIG_BOOT_LINK_OFFSET \ | 117 | export CONFIG_PAGE_OFFSET CONFIG_MEMORY_START CONFIG_BOOT_LINK_OFFSET \ |
117 | CONFIG_ZERO_PAGE_OFFSET CONFIG_ENTRY_OFFSET KERNEL_MEMORY suffix-y | 118 | CONFIG_PHYSICAL_START CONFIG_ZERO_PAGE_OFFSET CONFIG_ENTRY_OFFSET \ |
119 | KERNEL_MEMORY suffix-y | ||