mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Marco Felsch <m.felsch@pengutronix.de>
To: barebox@lists.infradead.org
Subject: [PATCH v2 00/29] i.MX8M HAB Fixes
Date: Tue, 17 Oct 2023 16:51:02 +0200	[thread overview]
Message-ID: <20231017145131.3069283-1-m.felsch@pengutronix.de> (raw)

Hi all,

unfortunately with the addition of the FlexSPI image support I broke
the HAB support for i.MX8M devices because I didn't honored the new CSF
location. This PR will fix this for the MMC/SD/USB boot case.

Additional the PR adds the support to HAB boot the system from a QSPI
NOR as well. For the FlexSPI HAB boot a 2nd CSF slot/area is added to
keep the very user-friendly single-image approach.

Before reviewing Patch13 and onwards I do recommend to look at Patch26
first to get an overview of the final result.

Patch1-7:
Cleanup the hab command code and image artifacts and enable it support
for all i.MX8M devices.

Patch8-9:
Add the signing support to the Makefile.imx and convert the i.MX8M rules
to use the new macro to cleanup the code.

Patch10-12:
Prepare i.MX8M*-EVKs to be able to build signed images.

Patch13-14:
Add support for multiple CSF slots.

Patch15-23:
Fix the HAB support for MMC/SD card first and add/fix the HAB support
for FlexSPI images.

Patch24:
Make it possible to pass CST command line paramters via environment.
This is very useful for new CST versions which do support PKCS11
out-of-the box if the user specify the backend via '-b pkcs11'.

Patch25-26:
Documentation patches to become an overview of the FlexSPI HAB single
image implementation.

Testers are very welcome :)

Marco Felsch (20):
  i.MX: HAB: remove unused init() hook
  ARM: i.MX8M: add flexspi-imx8m{m,p}-cfg.h header
  ARM: boards: i.MX8M: make use of new flexspi-imx8m{m,p}-cfg.h header
  ARM: lds: introduce HAB_CSF_LEN define for the hab_csf section
  ARM: lds: add support for a 2nd CSF area
  scripts: imx: force flexspi and hab option order
  scripts: imx: move flexspi_image() into header
  scripts: imx: fix i.MX8M CSF header placement
  scripts: imx: add imx8m_get_offset_size helper
  scripts: imx-image: header_v2: add CSF slots
  scripts: imx-image: hab_sign: refactor function
  scripts: imx: replace static string allocation
  scripts: imx: add hab_qspi support
  scripts: imx: add helper to write CSF Blocks command
  scripts: imx: fix HAB for FlexSPI boot
  scripts: imx-image: add missing close()
  scripts: imx-image: add support for CST_EXTRA_CMDLINE_OPTIONS
  ARM: i.MX: add hab qspi support if enabled
  Documentation: boards: imx: replace i.MX8MQ with i.MX8M
  Documentation: boards: imx: add FlexSPI sub-section

Rouven Czerwinski (9):
  kbuild: clean start*_*.{p,ps}imximg files
  i.MX: HABv4: fix event status comparison
  i.MX: HABv4: fix i.MX8MQ device lockdown
  i.MX: HABv4: extend support to i.MX8M SoCs
  i.MX: HABv4: retrieve HAB ROM version for i.MX8M
  ARM: i.MX: allow HAB for i.MX8M family
  ARM: i.MX: introduce build_imx8m_habv4img
  ARM: i.MX: convert i.MX8M to helper
  ARM: boards: i.MX8M: add HAB image support

 Documentation/boards/imx.rst                  |  86 ++++++++++-
 .../flash-header-imx8mm-evk.imxcfg            |   4 +-
 .../flash-header-imx8mn-evk.imxcfg            |   4 +-
 .../flash-header-imx8mp-evk.imxcfg            |   4 +-
 arch/arm/lib/pbl.lds.S                        |   8 +-
 arch/arm/mach-imx/Kconfig                     |  10 +-
 drivers/hab/hab.c                             |  65 ++++++---
 drivers/hab/habv4.c                           |  40 +++--
 images/Makefile                               |   3 +-
 images/Makefile.imx                           | 110 +++++---------
 include/mach/imx/flexspi-imx8mm-cfg.h         |   8 +
 include/mach/imx/flexspi-imx8mp-cfg.h         |   8 +
 include/mach/imx/habv4-imx8-gencsf.h          |   3 +
 include/mach/imx/imx-header.h                 |   4 +-
 include/mach/imx/ocotp-fusemap.h              |   3 +
 scripts/imx/imx-image.c                       |  65 +++++----
 scripts/imx/imx.c                             | 137 +++++++++++++++---
 scripts/imx/imx.h                             |  13 ++
 18 files changed, 413 insertions(+), 162 deletions(-)
 create mode 100644 include/mach/imx/flexspi-imx8mm-cfg.h
 create mode 100644 include/mach/imx/flexspi-imx8mp-cfg.h

-- 
2.39.2




             reply	other threads:[~2023-10-17 14:54 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-17 14:51 Marco Felsch [this message]
2023-10-17 14:51 ` [PATCH v2 01/29] kbuild: clean start*_*.{p,ps}imximg files Marco Felsch
2023-10-17 14:51 ` [PATCH v2 02/29] i.MX: HABv4: fix event status comparison Marco Felsch
2023-10-17 14:51 ` [PATCH v2 03/29] i.MX: HABv4: fix i.MX8MQ device lockdown Marco Felsch
2023-10-17 14:51 ` [PATCH v2 04/29] i.MX: HAB: remove unused init() hook Marco Felsch
2023-10-17 14:51 ` [PATCH v2 05/29] i.MX: HABv4: extend support to i.MX8M SoCs Marco Felsch
2023-10-17 14:51 ` [PATCH v2 06/29] i.MX: HABv4: retrieve HAB ROM version for i.MX8M Marco Felsch
2023-10-17 14:51 ` [PATCH v2 07/29] ARM: i.MX: allow HAB for i.MX8M family Marco Felsch
2023-10-17 14:51 ` [PATCH v2 08/29] ARM: i.MX: introduce build_imx8m_habv4img Marco Felsch
2023-10-17 14:51 ` [PATCH v2 09/29] ARM: i.MX: convert i.MX8M to helper Marco Felsch
2023-10-17 14:51 ` [PATCH v2 10/29] ARM: boards: i.MX8M: add HAB image support Marco Felsch
2023-10-17 14:51 ` [PATCH v2 11/29] ARM: i.MX8M: add flexspi-imx8m{m,p}-cfg.h header Marco Felsch
2023-10-17 14:51 ` [PATCH v2 12/29] ARM: boards: i.MX8M: make use of new " Marco Felsch
2023-10-17 14:51 ` [PATCH v2 13/29] ARM: lds: introduce HAB_CSF_LEN define for the hab_csf section Marco Felsch
2023-10-17 14:51 ` [PATCH v2 14/29] ARM: lds: add support for a 2nd CSF area Marco Felsch
2023-10-17 14:51 ` [PATCH v2 15/29] scripts: imx: force flexspi and hab option order Marco Felsch
2023-10-17 14:51 ` [PATCH v2 16/29] scripts: imx: move flexspi_image() into header Marco Felsch
2023-10-17 14:51 ` [PATCH v2 17/29] scripts: imx: fix i.MX8M CSF header placement Marco Felsch
2023-10-17 14:51 ` [PATCH v2 18/29] scripts: imx: add imx8m_get_offset_size helper Marco Felsch
2023-10-17 14:51 ` [PATCH v2 19/29] scripts: imx-image: header_v2: add CSF slots Marco Felsch
2023-10-17 14:51 ` [PATCH v2 20/29] scripts: imx-image: hab_sign: refactor function Marco Felsch
2023-10-17 14:51 ` [PATCH v2 21/29] scripts: imx: replace static string allocation Marco Felsch
2023-10-17 14:51 ` [PATCH v2 22/29] scripts: imx: add hab_qspi support Marco Felsch
2023-10-17 14:51 ` [PATCH v2 23/29] scripts: imx: add helper to write CSF Blocks command Marco Felsch
2023-10-17 14:51 ` [PATCH v2 24/29] scripts: imx: fix HAB for FlexSPI boot Marco Felsch
2023-10-17 14:51 ` [PATCH v2 25/29] scripts: imx-image: add missing close() Marco Felsch
2023-10-17 14:51 ` [PATCH v2 26/29] scripts: imx-image: add support for CST_EXTRA_CMDLINE_OPTIONS Marco Felsch
2023-10-17 14:51 ` [PATCH v2 27/29] ARM: i.MX: add hab qspi support if enabled Marco Felsch
2023-10-17 14:51 ` [PATCH v2 28/29] Documentation: boards: imx: replace i.MX8MQ with i.MX8M Marco Felsch
2023-10-17 14:51 ` [PATCH v2 29/29] Documentation: boards: imx: add FlexSPI sub-section Marco Felsch
2023-10-18  8:08 ` [PATCH v2 00/29] i.MX8M HAB Fixes Sascha Hauer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231017145131.3069283-1-m.felsch@pengutronix.de \
    --to=m.felsch@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox