[PATCH v3 00/12] binman: Add support for generating more complex FITs

Michal Simek michal.simek at xilinx.com
Wed Sep 2 12:26:54 CEST 2020


Hi Simon,

On 01. 09. 20 13:13, 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.
> 
> Note: This series is available at u-boot-dm/binman-working and is based
> on u-boot-dm/testing

I continue on testing this series on ZynqMP and reach one issue. One of
our usecase is to put u-boot on memory above 32bit address space.
To be accurate to this memory range.
reg = <0x8 0x00000000 0x0 0x80000000>;

One way to get there is to setup TEXT_BASE to for example 0x808000000.
Then u-boot.itb fragment for binmap looks like this.

	u-boot-itb {
		filename = "u-boot.itb";
		fit {
			description = "FIT image with ATF support";
			fit,fdt-list = "of-list";
			#address-cells = <2>;

			images {
				uboot {
					description = "U-Boot (64-bit)";
					type = "firmware";
					os = "u-boot";
					arch = "arm64";
					compression = "none";
					load = <8 0x8000000>;
					entry = <8 0x8000000>;
					u-boot-nodtb {
					};
				};
...
The key properties are load/entry. In example above I have address-cells
= 2 and entries written by hand and it works fine.
But I want to use CONFIG_SYS_TEXT_BASE there which is already in 64bit
format.

When this is used I get
Error: arch/arm/dts/zynqmp-u-boot.dtsi:31.14-25 Value out of range for
32-bit array element
Error: arch/arm/dts/zynqmp-u-boot.dtsi:32.15-26 Value out of range for
32-bit array element

Which is understandable but my question is how to handle 64bit addresses
which are properly filled via Kconfig?

I have the same issue with one more DT property.

Thanks,
Michal





More information about the U-Boot mailing list