
On 2 Apr 2023, at 6:41 am, Simon Glass sjg@chromium.org wrote:
Hi Mark,
On Sun, 2 Apr 2023 at 09:28, Mark Kettenis mark.kettenis@xs4all.nl wrote:
From: Simon Glass sjg@chromium.org Date: Sun, 2 Apr 2023 06:54:57 +1200
The Odroid-C2 is quite a complicated image with many steps. It is an ideal example for how Binman can be used.
You say Odroid-C2, but the patches seem to address the Odroid-C4...
Ah, yes. The difference seems to be an Amlogic S905 on the C2 and an S902X3 on the C4. I wonder if that affects the image makeup?
There are currently four different signing recipes that depend on the board family that you are building for:
- GXBB - GXL/GXM - G12A/SM1 - G12B
The G12A/SM1 and G12B recipes are identical except for a different signing binary used. The latest Amlogic boards (S905X4, T7, etc.) also have incremental changes, but none are currently supported in Linux or u-boot.
One of the challenges for binman will be the signing tools. Currently this patchset depends upon Amlogic binaries. Apart from them being closed-source and thus undesirable, they are also x86_64 only and there are quite a few users (and at least one major distro) needing to build on arm64 hardware.
There is an open-source tool called gxlimg which supports GXL and newer boards. IMHO it would make a lot of sense for u-boot to absorb the functionality of gxlimg (and extend support backwards to GXBB) as this would remove the dependency on Amlogic binaries and allow u-boot build and binman signing to be done anywhere.
https://github.com/repk/gxlimg
The patch is for testing by Christian, who I hope can help get this landed for all the Amlogic boards.
I will try to find the time to test this, but it’s not something I could do more with (as only supporting 1/4 of the board families that I need to build for, bu I do appreciate it’s a POC).
In case you’re not aware, Makefile based signing is implemented in the amlogic-boot-fip repo that I’m currently tooled around:
https://github.com/LibreELEC/amlogic-boot-fip
This is the “competition” so to speak. It’s quite simple and widely used by most of the Amlogic supporting distros right now.
Christian
Add a binman description and update the instructions accordingly.
Changes in v2:
- Rebase to -next
Simon Glass (1): RFC: Move Odroid-C2 to use binman to produce the image
arch/arm/dts/meson-sm1-odroid-c4-u-boot.dtsi | 107 ++++++++++++++++ arch/arm/mach-meson/Kconfig | 1 + doc/board/amlogic/odroid-c4.rst | 127 +++++-------------- tools/binman/etype/aml_encrypt.py | 124 ++++++++++++++++++ tools/binman/ftest.py | 3 + tools/binman/missing-blob-help | 6 + tools/binman/test/213_aml_encrypt.dts | 38 ++++++ tools/binman/test/214_list_no_dtb.dts | 23 ++++ 8 files changed, 337 insertions(+), 92 deletions(-) create mode 100644 tools/binman/etype/aml_encrypt.py create mode 100644 tools/binman/test/213_aml_encrypt.dts create mode 100644 tools/binman/test/214_list_no_dtb.dts
Regards, SImon