Hi Simon

On 21/01/23 01:16, Simon Glass wrote:
Hi Neha,

On Fri, 20 Jan 2023 at 03:19, Neha Malcom Francis <n-fran...@ti.com> wrote:

This series aims to eliminate the use of additional custom repositories
such as k3-image-gen (K3 Image Generation) repo that was plumbed into
the U-Boot build flow to generate boot images for TI K3 platform devices.
And instead, we move towards using binman that aligns better with the
community standard build flow.

This series uses binman for all K3 platforms supported on U-Boot currently;
both HS (High Security) and GP (General Purpose) devices.

Background on using k3-image-gen:
         * TI K3 devices require a SYSFW (System Firmware) image consisting
         of a signed system firmware image and board configuration binaries,
         this is needed to bring up system firmware during U-Boot R5 SPL
         startup.
         * Board configuration data contain board-specific information
         such as resource management, power management and security.

Series intends to use binman to take over the packaging and signing for
the R5 bootloader images tiboot3.bin (and sysfw.itb, for non-combined
boot flow) instead of k3-image-gen.

Series also packages the A72/A53 bootloader images (tispl.bin and
u-boot.img) using ATF, OPTEE and DM (Device Manager)

Neha Malcom Francis (21):
   ti: tools: config: Add board config class to generate config binaries
   tools: sysfw: Add script for generating configuration blobs
   tools: binman: add ti-secure entry type
   ti: sysfw: tiboot3: Add support for packaging sysfw.itb and
     tiboot3.bin
   j721e: schema: yaml: Add general schema and J721E board config files
   j721e: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin,
     u-boot.img
   j7200: yaml: Add J7200 board config files
   j7200: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img
   am65x: yaml: Add AM65x board config files
   am65: dts: binman: Package tiboot3.bin, sysfw.itb, tispl.bin,
     u-boot.img
   config: am64x: Add board config for AM64x
   am64x: dts: binman: Package tiboot3.bin, tispl.bin u-boot.img
   Makefile: Add DM, SYSFW_PATH, SYSFW_HS_INNER_CERT_PATH to
     BINMAN_INDIRS
   j721s2: yaml: Add board config for J721S2
   j721s2: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img
   am62: yaml: Add board config for AM62
   am625: dts: binman: Package tiboot3.bin, tispl.bin and u-boot.img
   am62a: yaml: Add board config for AM62ax
   am62a: dts: binman: Package tiboot3.bin, tispl.bin, u-boot.img
   k3: tools: config.mk: Update makefile and remove scripts
   doc: board: ti: Update documentation for binman flow

  Makefile                                      |   17 +
  arch/arm/dts/k3-am625-r5-sk.dts               |    1 +
  arch/arm/dts/k3-am625-sk-binman.dtsi          |  377 ++
  arch/arm/dts/k3-am625-sk-u-boot.dtsi          |    2 +
  arch/arm/dts/k3-am62a-sk-binman.dtsi          |  377 ++
  arch/arm/dts/k3-am62a7-r5-sk.dts              |    1 +
  arch/arm/dts/k3-am62a7-sk.dts                 |    1 +
  arch/arm/dts/k3-am642-evm-u-boot.dtsi         |    2 +
  arch/arm/dts/k3-am642-r5-evm.dts              |    1 +
  arch/arm/dts/k3-am64x-binman.dtsi             |  440 +++
  arch/arm/dts/k3-am654-base-board-u-boot.dtsi  |    1 +
  .../dts/k3-am654-r5-base-board-u-boot.dtsi    |    1 +
  arch/arm/dts/k3-am65x-binman.dtsi             |  482 +++
  arch/arm/dts/k3-j7200-binman.dtsi             |  377 ++
  .../k3-j7200-common-proc-board-u-boot.dtsi    |    2 +
  arch/arm/dts/k3-j721e-binman.dtsi             |  605 +++
  .../k3-j721e-common-proc-board-u-boot.dtsi    |    1 +
  .../arm/dts/k3-j721e-r5-common-proc-board.dts |    1 +
  arch/arm/dts/k3-j721s2-binman.dtsi            |  377 ++
  .../k3-j721s2-common-proc-board-u-boot.dtsi   |    2 +
  .../dts/k3-j721s2-r5-common-proc-board.dts    |    1 +
  arch/arm/mach-k3/config.mk                    |  102 +-
  board/ti/am62ax/Kconfig                       |    2 +
  board/ti/am62ax/config.yaml                   | 1553 ++++++++
  board/ti/am62x/Kconfig                        |    2 +
  board/ti/am62x/config.yaml                    | 1490 ++++++++
  board/ti/am64x/Kconfig                        |    2 +
  board/ti/am64x/config.yaml                    | 1805 +++++++++
  board/ti/am65x/Kconfig                        |    2 +
  board/ti/am65x/config.yaml                    | 2469 ++++++++++++
  board/ti/common/schema.yaml                   |  355 ++
  board/ti/j721e/Kconfig                        |    4 +
  board/ti/j721e/config.yaml                    | 3162 ++++++++++++++++
  board/ti/j721e/config_j7200.yaml              | 2467 ++++++++++++
  board/ti/j721s2/Kconfig                       |    2 +
  board/ti/j721s2/config.yaml                   | 3303 +++++++++++++++++
  doc/board/ti/am62x_sk.rst                     |   22 +-
  doc/board/ti/j721e_evm.rst                    |   35 +-
  doc/board/ti/k3.rst                           |   50 +-

Please move all of that into a separate patch. The binman changes
should be in their own 'binman:' patch, with tests and docs related
just to binman.

  include/binman_sym.h                          |    2 +
  scripts/Makefile.spl                          |    2 +
  test/py/requirements.txt                      |    1 +
  tools/binman/entries.rst                      |   15 +
  tools/binman/etype/ti_secure.py               |  133 +
  tools/binman/ftest.py                         |    8 +
  tools/k3_fit_atf.sh                           |  123 -
  tools/k3_gen_x509_cert.sh                     |  262 --
  tools/k3_sysfw_boardcfg_blob_creator.py       |  116 +
  tools/tibcfg_gen.py                           |  117 +
  49 files changed, 20146 insertions(+), 529 deletions(-)
  create mode 100644 arch/arm/dts/k3-am625-sk-binman.dtsi
  create mode 100644 arch/arm/dts/k3-am62a-sk-binman.dtsi
  create mode 100644 arch/arm/dts/k3-am64x-binman.dtsi
  create mode 100644 arch/arm/dts/k3-am65x-binman.dtsi
  create mode 100644 arch/arm/dts/k3-j7200-binman.dtsi
  create mode 100644 arch/arm/dts/k3-j721e-binman.dtsi
  create mode 100644 arch/arm/dts/k3-j721s2-binman.dtsi
  create mode 100644 board/ti/am62ax/config.yaml
  create mode 100644 board/ti/am62x/config.yaml
  create mode 100644 board/ti/am64x/config.yaml
  create mode 100644 board/ti/am65x/config.yaml
  create mode 100644 board/ti/common/schema.yaml
  create mode 100644 board/ti/j721e/config.yaml
  create mode 100644 board/ti/j721e/config_j7200.yaml
  create mode 100644 board/ti/j721s2/config.yaml
  create mode 100644 tools/binman/etype/ti_secure.py
  delete mode 100755 tools/k3_fit_atf.sh
  delete mode 100755 tools/k3_gen_x509_cert.sh
  create mode 100755 tools/k3_sysfw_boardcfg_blob_creator.py
  create mode 100644 tools/tibcfg_gen.py

--
2.34.1


It is great to see this and thank you for working on it.

My general comments are:

- we need to avoid adding new scripts (they should go into binman) so
please let me know what is needed there and how we can adjust it
- needs some work in testing - e.g. 'binman test' and 'binman test -T'
need to pass without errors

Regards,
Simon

Thanks for the review comments! I am working on it and will reach out if I need any help.

--
Thanking You
Neha Malcom Francis

Reply via email to