]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
ARM: fix LTO for imx28_xea
authorMarek Behún <marek.behun@nic.cz>
Thu, 20 May 2021 11:24:12 +0000 (13:24 +0200)
committerTom Rini <trini@konsulko.com>
Mon, 24 May 2021 18:21:30 +0000 (14:21 -0400)
When imx28_xea_defconfig is built with LTO, the compiler complains about
the two different declarations of _start:
   include/asm-generic/sections.h    as  extern void _start(void);
   arch/arm/cpu/arm926ejs/mxs/mxs.c  as  extern uint32_t _start;

Fix this.

Signed-off-by: Marek Behún <marek.behun@nic.cz>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
arch/arm/cpu/arm926ejs/mxs/mxs.c
arch/arm/cpu/arm926ejs/mxs/spl_boot.c

index 344b9b4e550af1c9f322a018e1d078f4fe685788..4d21e3df76eca374609932e2f80d5b875b07c576 100644 (file)
@@ -25,6 +25,7 @@
 #include <asm/arch/iomux.h>
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
+#include <asm/sections.h>
 #include <linux/compiler.h>
 
 DECLARE_GLOBAL_DATA_PTR;
@@ -98,7 +99,6 @@ int arch_cpu_init(void)
 {
        struct mxs_clkctrl_regs *clkctrl_regs =
                (struct mxs_clkctrl_regs *)MXS_CLKCTRL_BASE;
-       extern uint32_t _start;
 
        mx28_fixup_vt((uint32_t)&_start);
 
index 66406cc85795ade9f685e5f2da9da4293a2782dd..0a8985b90a938fb8df8f5ea130e75aa74d5548df 100644 (file)
@@ -16,6 +16,7 @@
 #include <asm/arch/imx-regs.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/gpio.h>
+#include <asm/sections.h>
 #include <linux/compiler.h>
 
 #include "mxs_init.h"
@@ -100,7 +101,6 @@ static void mxs_spl_fixup_vectors(void)
         * thus this fixup. Our vectoring table is PIC, so copying is
         * fine.
         */
-       extern uint32_t _start;
 
        /* cppcheck-suppress nullPointer */
        memcpy(0x0, &_start, 0x60);