Hi Quentin, On Wed, 9 Apr 2025 at 04:57, Quentin Schulz <[email protected]> wrote: > > Hi Jonas, Simon, > > On 3/29/25 4:06 PM, Jonas Karlman wrote: > > From: Simon Glass <[email protected]> > > > > The simple-bin image is normally written to MMC media at block 64, which > > is a 32K offset from start of storage media. > > > > Set the skip-at-start property to 0x8000 (32 KiB) so that fdtmap and > > other embedded binman symbols in the output binary is referencing image > > offsets correctly. > > > > Shouldn't we have this commit BEFORE we add the `fdtmap` node since we > know it's wrong before this commit? > > > Signed-off-by: Simon Glass <[email protected]> > > Signed-off-by: Jonas Karlman <[email protected]> > > --- > > Changes in v4: > > - Drop defconfig changes > > - Split from "VBE serial part H: Implement VBE on Rockchip RK3399" > > > > Changes in v2: > > - Move this patch to the end of the series > > - Drop 0x8000 offset for SPI > > --- > > arch/arm/dts/rockchip-u-boot.dtsi | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/arch/arm/dts/rockchip-u-boot.dtsi > > b/arch/arm/dts/rockchip-u-boot.dtsi > > index fb38b7b80c43..65b81bf58626 100644 > > --- a/arch/arm/dts/rockchip-u-boot.dtsi > > +++ b/arch/arm/dts/rockchip-u-boot.dtsi > > @@ -154,6 +154,7 @@ > > simple-bin { > > filename = "u-boot-rockchip.bin"; > > pad-byte = <0xff>; > > + skip-at-start = <0x8000>; > > > > mkimage { > > filename = "idbloader.img"; > > @@ -178,7 +179,7 @@ > > #else > > u-boot-img { > > #endif > > - offset = <CONFIG_SPL_PAD_TO>; > > + offset = <(CONFIG_SPL_PAD_TO + 0x8000)>; > > This is confusing. The documentation states: > > """ > offset: > This sets the offset of an entry within the image or section containing > it. > """ > > My understanding is that it should be relative to the beginning of the > image but this now needs the knowledge of where it will be stored on the > MMC device (via the value in skip-at-start). > > Why is skip-at-start automatically deducted from offset?
This is how binman works[1]. We are trying to use the feature designs for this purpose (dealing with implied / missing chunks at the start of an image). At this point in the series CONFIG_SPL_PAD_TO is set to 0x78000 I believe, so we need to add another 0x8000 to get the offset that binman uses. Regards, Simon [1] https://docs.u-boot.org/en/latest/develop/package/binman.html#image-properties

