diff options
author | Matthias Brugger <mbrugger@suse.com> | 2019-11-19 18:01:02 +0300 |
---|---|---|
committer | Matthias Brugger <mbrugger@suse.com> | 2019-11-24 12:46:27 +0300 |
commit | 37964494c03f0d23c58c0e43cd694df0733ec1ca (patch) | |
tree | c550de134d1f2d54af02532e216201374b6fe4a3 /board/raspberrypi/rpi/lowlevel_init.S | |
parent | 3f8b8e303655397a15d53660884c8de7c6cdf49f (diff) | |
download | u-boot-37964494c03f0d23c58c0e43cd694df0733ec1ca.tar.xz |
rpi: push fw_dtb_pointer in the .data section
The fw_dtb_pointer was defined in the assembly code, which makes him
live in section .text_rest
Put that's not necessary, we can push the variable in the .data section.
This will prevent relocation errors like:
board/raspberrypi/rpi/rpi.c:317:(.text.board_get_usable_ram_top+0x8):
relocation truncated to fit: R_AARCH64_LDST64_ABS_LO12_NC against symbol
`fw_dtb_pointer' defined in .text section in board/raspberrypi/rpi/built-in.o
Signed-off-by: Matthias Brugger <mbrugger@suse.com>
Diffstat (limited to 'board/raspberrypi/rpi/lowlevel_init.S')
-rw-r--r-- | board/raspberrypi/rpi/lowlevel_init.S | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/board/raspberrypi/rpi/lowlevel_init.S b/board/raspberrypi/rpi/lowlevel_init.S index 435eed521f..8c39b3e12e 100644 --- a/board/raspberrypi/rpi/lowlevel_init.S +++ b/board/raspberrypi/rpi/lowlevel_init.S @@ -6,15 +6,6 @@ #include <config.h> -.align 8 -.global fw_dtb_pointer -fw_dtb_pointer: -#ifdef CONFIG_ARM64 - .dword 0x0 -#else - .word 0x0 -#endif - /* * Routine: save_boot_params (called after reset from start.S) * Description: save ATAG/FDT address provided by the firmware at boot time @@ -28,7 +19,8 @@ save_boot_params: adr x8, fw_dtb_pointer str x0, [x8] #else - str r2, fw_dtb_pointer + ldr r8, =fw_dtb_pointer + str r2, [r8] #endif /* Returns */ |