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

Simon Glass sjg at chromium.org
Wed Sep 2 19:07:11 CEST 2020


Hi Michal,

On Wed, 2 Sep 2020 at 04:27, Michal Simek <michal.simek at xilinx.com> wrote:
>
> 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?

If I understand the problem correctly, you can add 64-bit values like this:

load = /bits/ 64 <CONFIG_SYS_TEXT_BASE>;


>
> I have the same issue with one more DT property.
>
> Thanks,
> Michal
>
>
>


More information about the U-Boot mailing list