On 25.08.20 06:07, Heinrich Schuchardt wrote: > 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
This is u-boot.its created without your patches: /dts-v1/; / { description = "Configuration to load ATF before U-Boot"; #address-cells = <1>; images { uboot { description = "U-Boot (64-bit)"; data = /incbin/("u-boot-nodtb.bin"); type = "standalone"; arch = "arm64"; compression = "none"; load = <0x4a000000>; }; atf { description = "ARM Trusted Firmware"; data = /incbin/("../trusted-firmware-a/build/sun50i_a64/debug/bl31.bin"); type = "firmware"; arch = "arm64"; compression = "none"; load = <0x44000>; entry = <0x44000>; }; fdt_1 { description = "sun50i-a64-pine64-lts"; data = /incbin/("arch/arm/dts/sun50i-a64-pine64-lts.dtb"); type = "flat_dt"; compression = "none"; }; }; configurations { default = "config_1"; config_1 { description = "sun50i-a64-pine64-lts"; firmware = "uboot"; loadables = "atf"; fdt = "fdt_1"; }; }; }; This is the itb that is created with your patches: /dts-v1/; / { description = "Configuration to load ATF before U-Boot"; #address-cells = < 0x01 >; images { uboot { data = < 0x1f000 ... description = "U-Boot (64-bit)"; type = "standalone"; arch = "arm64"; compression = "none"; load = < 0x4a000000 >; }; atf { data = [ f4 ... description = "ARM Trusted Firmware"; type = "firmware"; arch = "arm64"; compression = "none"; load = < 0x44000 >; entry = < 0x44000 >; }; }; configurations { default = "config-1"; }; }; The device tree is missing and the default configuration is empty. Best regards Heinrich