linux: Add a load address option for building uImage on 3.7+ multi-platform kernels
authorJulien Boibessot <julien.boibessot@armadeus.com>
Wed, 13 Mar 2013 11:13:24 +0000 (11:13 +0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Fri, 15 Mar 2013 09:58:13 +0000 (10:58 +0100)
[Peter: add quotes as suggested by Arnout]
Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
linux/Config.in
linux/linux.mk

index 94ce951469308a80d9fd33393832935972cedf55..a44880f5b7daf3648bb794e9d18473bfd7aeb6d3 100644 (file)
@@ -213,6 +213,19 @@ config BR2_LINUX_KERNEL_IMAGE_TARGET_NAME
          Specify the kernel make target to build the kernel that you
          need.
 
+config BR2_LINUX_KERNEL_UIMAGE_LOADADDR
+       string "load address (for 3.7+ multi-platform image)"
+       depends on BR2_arm || BR2_armeb
+       depends on BR2_LINUX_KERNEL_UIMAGE || BR2_LINUX_KERNEL_APPENDED_UIMAGE
+       help
+         If your ARM system's Linux kernel is configured with the new (3.7+)
+         multi-architecture support (CONFIG_ARCH_MULTIPLATFORM=y in your
+         kernel config), then it is necessary to specify a kernel load address
+         when building the uImage. This should be a hexadecimal string
+         beginning with 0x, for example: 0x00008000.
+
+         If unsure, let this option empty.
+
 config BR2_LINUX_KERNEL_DTS_SUPPORT
        bool "Device tree support"
        help
index 0352acd505764d772788549faf67951c76491c39..8a73767df9afd0587e186a474fd48e0ce2023b82 100644 (file)
@@ -95,6 +95,11 @@ LINUX_IMAGE_NAME=vmlinuz
 endif
 endif
 
+LINUX_KERNEL_UIMAGE_LOADADDR=$(call qstrip,$(BR2_LINUX_KERNEL_UIMAGE_LOADADDR))
+ifneq ($(LINUX_KERNEL_UIMAGE_LOADADDR),)
+LINUX_MAKE_FLAGS+=LOADADDR="$(LINUX_KERNEL_UIMAGE_LOADADDR)"
+endif
+
 ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),y)
 LINUX_IMAGE_TARGET=zImage
 else