"Das U-Boot" Source Tree
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

examples: fix building on arm32

Refer to the commit a3c101a61348 ("examples: fix building on arm64")
fix for arm32. crt0.S does not even build with:
operating system and architecture:
5.15.0-130-generic x86_64
installed version of gcc and binutils:
gcc version 9.4.0 (Ubuntu 9.4.0-1ubuntu1~20.04.3)
GNU ld (GNU Binutils for Ubuntu) 2.34
used defconfig:
stm32h750-art-pi_defconfig
used commands for building:
export CROSS_COMPILE=arm-none-eabi- ARCH=arm
make stm32h750-art-pi_defconfig
make menuconfig # to add
make
examples/api/crt0.S: Assembler messages:
examples/api/crt0.S:32: Error: lo register required -- `ldr ip,=search_hint'
examples/api/crt0.S:33: Error: lo register required -- `str sp,[ip]'
examples/api/crt0.S:39: Error: lo register required -- `ldr ip,=syscall_ptr'
examples/api/crt0.S:40: Error: lo register required -- `ldr pc,[ip]'
make[2]: *** [scripts/Makefile.build:292:examples/api/crt0.o] Error 1

Use valid register names and instructions.

Signed-off-by: Liya Huang <1425075683@qq.com>

authored by

Liya Huang and committed by
Tom Rini
5cf9e61f adeea856

+6 -4
+6 -4
examples/api/crt0.S
··· 29 29 .text 30 30 .globl _start 31 31 _start: 32 - ldr ip, =search_hint 33 - str sp, [ip] 32 + ldr r4, =search_hint 33 + mov r5, sp 34 + str r5, [r4] 34 35 b main 35 36 36 37 37 38 .globl syscall 38 39 syscall: 39 - ldr ip, =syscall_ptr 40 - ldr pc, [ip] 40 + ldr r4, =syscall_ptr 41 + ldr r4, [r4] 42 + bx r4 41 43 42 44 #elif defined(CONFIG_ARM64) 43 45