karo: tx53: various fixes for CONFIG_SECURE_BOOT
authorLothar Waßmann <LW@KARO-electronics.de>
Thu, 30 Jun 2016 08:44:39 +0000 (10:44 +0200)
committerLothar Waßmann <LW@KARO-electronics.de>
Thu, 30 Jun 2016 08:44:39 +0000 (10:44 +0200)
board/karo/tx53/config.mk
board/karo/tx53/lowlevel_init.S
board/karo/tx53/u-boot.lds

index 09d6709..55eb15e 100644 (file)
@@ -2,6 +2,12 @@
 CONFIG_SYS_TEXT_BASE := 0x700ff000
 
 __HAVE_ARCH_GENERIC_BOARD := y
+
 PLATFORM_CPPFLAGS += -Werror
+ifneq ($(CONFIG_SECURE_BOOT),)
+#      promote config variable to linker script
+       PLATFORM_CPPFLAGS += -DCONFIG_SECURE_BOOT
+endif
+
 LOGO_BMP = logos/karo.bmp
 OBJCOPYFLAGS += -j .pad
index ad43e48..5aa31af 100644 (file)
@@ -382,7 +382,11 @@ boot_data_ptr:
 self_ptr:
        .word   ivt_header
 app_code_csf:
+#ifdef CONFIG_SECURE_BOOT
        .word   __csf_data
+#else
+       .word   0x0
+#endif
        .word   0x0
 boot_data:
        .long   CONFIG_SYS_TEXT_BASE
index 392a9ef..e010d99 100644 (file)
@@ -83,19 +83,18 @@ SECTIONS
                . = ALIGN(4096);
        } = 0x01f0adde
 
-       _image_binary_end = . + (__ivt_end - __uboot_img_start);
-
        .uboot_img_end :
        {
                KEEP(*(.__uboot_img_end))
        }
 
-       . = CONFIG_SYS_TEXT_BASE + 0x70000;
+#ifdef CONFIG_SECURE_BOOT
        .csf_data :
        {
                *(.__csf_data)
                . = . + 0x2000;
        }
+#endif
        __uboot_img_len = . - __uboot_img_start;
 
 /*
@@ -117,7 +116,6 @@ SECTIONS
                KEEP(*(.__bss_end));
        }
 
-       .dynsym _image_binary_end : { *(.dynsym) }
        /DISCARD/ : { *(.debug*) }
        /DISCARD/ : { *(.note*) }
        /DISCARD/ : { *(.comment*) }