binman: Honour the skip-at-start property more faithfully
authorSimon Glass <sjg@chromium.org>
Wed, 26 Feb 2025 16:26:17 +0000 (09:26 -0700)
committerTom Rini <trini@konsulko.com>
Tue, 4 Mar 2025 14:22:11 +0000 (08:22 -0600)
commit2c252d36b8da37e5601af5421bc672474b849e97
tree291eca56522e87590dd06754ba706d4c01045970
parent91fa9d9ed2e10d6f96a80b9655c105fe99592519
binman: Honour the skip-at-start property more faithfully

A discussion on the mailing list about dealing with block offsets and
binman symbols made me think that something is wrong with how Binman
deals with the skip-at-start property.

The feature was originally designed to handle x86 ROMs, which are mapped
at the top of the address space. That seemed too specific, whereas
skipping some space at the start seemed more generally useful.

It has proved useful. For example, rockchip images start at block 64,
so a skip-at-start of 0x8000 deals with this.

But it doesn't actually work correctly, since the image_pos value does
not give the actual position on the media.

Fix this and update the documentation, moving it into the 'section'
section.

Signed-off-by: Simon Glass <sjg@chromium.org>
tools/binman/binman.rst
tools/binman/entry.py
tools/binman/etype/fmap.py
tools/binman/etype/section.py
tools/binman/ftest.py