rk3399 u-boot docs - arm tf-a compilation failure
Peter Robinson
pbrobinson at gmail.com
Wed Apr 1 20:19:45 CEST 2026
Hi Andrew,
> Building TF-A (per https://docs.u-boot.org/en/latest/board/rockchip/rockchip.html#building) fails with the following error.
>
> LD /home/andrew/arm-u-boot/trusted-firmware-a/build/rk3399/release/bl31/bl31.elf
> /usr/lib/gcc-cross/aarch64-linux-gnu/13/../../../../aarch64-linux-gnu/bin/ld: /home/andrew/arm-u-boot/trusted-firmware-a/build/rk3399/release/bl31/bl31.elf section `.pmusram' will not fit in region `PMUSRAM'
> /usr/lib/gcc-cross/aarch64-linux-gnu/13/../../../../aarch64-linux-gnu/bin/ld: region `PMUSRAM' overflowed by 3928 bytes
> collect2: error: ld returned 1 exit status
> make: *** [Makefile:1031: /home/andrew/arm-u-boot/trusted-firmware-a/build/rk3399/release/bl31/bl31.elf] Error 1
>
> I'm using a VM freshly installed with ubuntu 24.04 and crossbuild-essential-arm64 gcc-arm-none-eabi binutils-arm-none-eabi. I'd appreciate any pointers.
Are you using a particular release or just building HEAD?
I've built 2.14.x recently.
I think that section for the rk3399 might be missing a section, the
rk3399 has a Cortex-M0 scp/pmu so you also need a armv7 cross compiler
and specify it with "export M0_CROSS_COMPILE=arm-linux-gnu-". I'm not
sure if it's auto detected so I wonder if it's trying to build it with
a 64 bit compiler.
Peter
More information about the U-Boot
mailing list