[PATCH v4 0/3] tools/sunxi: Use mkimage for SPL generation
andre.przywara at arm.com
Wed Jan 6 10:24:35 CET 2021
a small update fixing the strncpy bug and addressing too long DT names
properly. Thanks to Samuel for pointing this out.
So far creating a bootable SPL image for Allwinner based boards uses
the mksunxiboot tool. Most other platforms seemed to have integrated this
kind of functionality into the common mkimage tool.
Since there is nothing special about the Allwinner image in this respect,
just add support for the so-called "eGON" image type into mkimage. If there
was a particular reason this hasn't been done before, please let me know.
This will eventually allow us to remove mksunxiboot, but I leave it around
for now in case of regressions and since some people depend on it from
Patch 1/3 splits some existing sunxi specific header file, so we can
share the eGON header definition between the tools and the SPL.
Patch 2/3 adds the actual support to mkimage, patch 3/3 then switches
the Makefile to use mkimage instead of mksunxiboot.
I tested all 152 Allwinner boards by building each
u-boot-sunxi-with-spl.bin and comparing them against the version created
using mksunxiboot (using SOURCE_DATE_EPOCH and .scmversion to create
reproducible builds, and by reverting just patch 3/3).
All files before and after were identical.
Changelog v3 .. v4:
- properly check DT name length before inserting into header
Changelog v2 .. v3:
- factor out eGON struct into separate header file
- only print extended header information when applicable
- remove redundant alignment
- minor cosmetic fixes
Changelog v1 .. v2:
- Drop already merged cleanup patch (v1 1/3)
- replace relative include path
- remove already defined ALIGN macro
- rebase against current master
Andre Przywara (3):
sunxi: Factor out eGON BROM header description
tools: mkimage: Add Allwinner eGON support
sunxi: Use mkimage for SPL boot image generation
arch/arm/include/asm/arch-sunxi/spl.h | 65 +-----------
common/image.c | 1 +
include/image.h | 1 +
include/sunxi_image.h | 82 ++++++++++++++++
scripts/Makefile.spl | 8 +-
tools/Makefile | 1 +
tools/sunxi_egon.c | 136 ++++++++++++++++++++++++++
7 files changed, 226 insertions(+), 68 deletions(-)
create mode 100644 include/sunxi_image.h
create mode 100644 tools/sunxi_egon.c
More information about the U-Boot