On 8/22/20 4:36 AM, Simon Glass wrote: > This series allows binman to generate FITs that include multiple DTB > images and the configuration to use them. > > It is then possible to remove the sunxi FIT generator script, so this > series handles that also. > > With this, sunxi is fully converted to use binman.
I have applied this patch series and it does not work on my pine64-lts_defconfig. Environment variable BL31 points to my bl31.bin: $ echo $BL31 ../trusted-firmware-a/build/sun50i_a64/debug/bl31.bin U-Boot SPL 2020.10-rc2-00147-g72293dc579 (Aug 25 2020 - 03:29:28 +0000) DRAM: 2048 MiB Trying to boot from MMC1 No matching DT out of these options: Configuration to load ATF before U-Boot No matching DT out of these options: Configuration to load ATF before U-Boot mmc_load_image_raw_sector: mmc block read error SPL: failed to boot from all boot devices ### ERROR ### Please RESET the board ### Without your patches U-Boot works. But CONFIG_SYS_MALLOC_F_LEN=0x400 is too small. This results in a warning "alloc space exhausted". Cf. https://patchwork.ozlabs.org/project/uboot/patch/20200725181851.4339-1-xypron.g...@gmx.de/ U-Boot SPL 2020.10-rc2-00140-g1aa3966173 (Aug 25 2020 - 03:46:36 +0000) DRAM: 2048 MiB Trying to boot from MMC1 NOTICE: BL31: v2.2():v2.2-1138-g78460ced4 NOTICE: BL31: Built : 05:50:47, Apr 7 2020 NOTICE: BL31: Detected Allwinner A64/H64/R18 SoC (1689) NOTICE: BL31: Found U-Boot DTB at 0x4092cc8, model: Pine64 LTS INFO: ARM GICv2 driver initialized INFO: Configuring SPC Controller INFO: PMIC: Probing AXP803 on RSB INFO: PMIC: dcdc1 voltage: 3.300V INFO: PMIC: dcdc5 voltage: 1.200V INFO: PMIC: dcdc6 voltage: 1.100V INFO: PMIC: dldo1 voltage: 3.300V INFO: PMIC: dldo2 voltage: 3.300V INFO: PMIC: dldo4 voltage: 3.300V INFO: PMIC: fldo1 voltage: 1.200V INFO: PMIC: Enabling DC SW INFO: BL31: Platform setup done INFO: BL31: Initializing runtime services INFO: BL31: cortex_a53: CPU workaround for 843419 was applied INFO: BL31: cortex_a53: CPU workaround for 855873 was applied NOTICE: PSCI: System suspend is unavailable INFO: BL31: Preparing for EL3 exit to normal world INFO: Entry point address = 0x4a000000 INFO: SPSR = 0x3c9 alloc space exhausted U-Boot 2020.10-rc2-00140-g1aa3966173 (Aug 25 2020 - 03:46:36 +0000) Allwinner Technology CPU: Allwinner A64 (SUN50I) Model: Pine64 LTS DRAM: 2 GiB MMC: mmc@1c0f000: 0, mmc@1c11000: 1 Loading Environment from FAT... Card did not respond to voltage select! In: serial Out: serial Err: serial Net: phy interface7 eth0: ethernet@1c30000 Hit any key to stop autoboot: 0 Best regards Heinrich > > > Simon Glass (7): > binman: Allow entry args to be required > binman: Fix up a few missing comments > libfdt: Detected out-of-space with fdt_finish() > binman: Add support for ATF BL31 > binman: Support generating FITs with multiple dtbs > sunxi: Convert 64-bit boards to use binman > sunxi: Drop the FIT-generator script > > Kconfig | 3 +- > Makefile | 18 +--- > arch/arm/dts/sunxi-u-boot.dtsi | 60 +++++++++++- > board/sunxi/mksunxi_fit_atf.sh | 87 ----------------- > scripts/dtc/pylibfdt/libfdt.i_shipped | 3 +- > tools/binman/README.entries | 59 ++++++++++- > tools/binman/etype/atf_bl31.py | 20 ++++ > tools/binman/etype/blob_named_by_arg.py | 10 +- > tools/binman/etype/cros_ec_rw.py | 3 +- > tools/binman/etype/fit.py | 76 +++++++++++++-- > tools/binman/ftest.py | 124 ++++++++++++++++++++++-- > tools/binman/test/165_atf_bl31.dts | 16 +++ > tools/binman/test/166_fit_fdt.dts | 55 +++++++++++ > 13 files changed, 405 insertions(+), 129 deletions(-) > delete mode 100755 board/sunxi/mksunxi_fit_atf.sh > create mode 100644 tools/binman/etype/atf_bl31.py > create mode 100644 tools/binman/test/165_atf_bl31.dts > create mode 100644 tools/binman/test/166_fit_fdt.dts >