mail archive of the barebox mailing list
 help / color / mirror / Atom feed
From: Rouven Czerwinski <r.czerwinski@pengutronix.de>
To: Denis Osterland-Heim <denis.osterland@diehl.com>,
	 "barebox@lists.infradead.org" <barebox@lists.infradead.org>
Subject: Re: [PATCH] arch: arm: mach-imx: print HAB ROM code version
Date: Fri, 12 Mar 2021 11:21:54 +0100	[thread overview]
Message-ID: <5cec528064955430448ef721fb4a351c0ac47c19.camel@pengutronix.de> (raw)
In-Reply-To: <20210311170137.22411-1-denis.osterland@diehl.com>

Hi Denis,

On Thu, 2021-03-11 at 17:07 +0000, Denis Osterland-Heim wrote:
> From: Denis Osterland-Heim <Denis.Osterland@diehl.com>
> 
> Add the two missing function pointers according to HAB4_API.pdf
> from cst-3.1.0 and print the version of ROM code.
> 
> Signed-off-by: Denis Osterland-Heim <Denis.Osterland@diehl.com>
> ---
>  drivers/hab/habv4.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/hab/habv4.c b/drivers/hab/habv4.c
> index c2acb8136..f30e5d68c 100644
> --- a/drivers/hab/habv4.c
> +++ b/drivers/hab/habv4.c
> @@ -161,6 +161,7 @@ struct hab_header {
>  uint8_t par;
>  } __packed;
> 
> +typedef void (*hab_image_entry_fn)(void);
>  typedef enum hab_status hab_loader_callback_fn(void **start, uint32_t *bytes, const void *boot_data);
> 
>  struct habv4_rvt {
> @@ -175,6 +176,8 @@ struct habv4_rvt {
>  enum hab_status (*report_event)(enum hab_status status, uint32_t index, void *event, uint32_t *bytes);
>  enum hab_status (*report_status)(enum hab_config *config, enum hab_state *state);
>  void (*failsafe)(void);
> +hab_image_entry_fn (*authenticate_image_no_dcd)(uint8_t cid, ptrdiff_t ivt_offset, void **start, size_t *bytes, hab_loader_callback_fn loader);
> +uint32_t (*get_version)(void);
>  } __packed;
> 
>  #define FSL_SIP_HAB             0xC2000007
> @@ -528,6 +531,7 @@ static int habv4_get_status(const struct habv4_rvt *rvt)
>  uint8_t *data;
>  uint32_t len;
>  int i;
> +uint32_t version;
>  enum hab_status status;
>  enum hab_config config = 0x0;
>  enum hab_state state = 0x0;
> @@ -537,6 +541,9 @@ static int habv4_get_status(const struct habv4_rvt *rvt)
>  return -EINVAL;
>  }
> 
> +version = rvt->get_version();

This unconditional call will break HAB on i.MX8MQ where it isn't
implemented in the RVT, I don't know if the call is even routed in the
downstream TF-A.

Aside from this your mailer/mailserver is mangling the patches, if it
is the mailer, maybe you can switch to git-send-email, see
https://git-send-email.io

> +pr_info("version: %u.%u.%u\n", (version >> 16), ((version >> 8) & 0xff), (version & 0xff));
> +
>  status = rvt->report_status(&config, &state);
>  pr_info("Status: %s (0x%02x)\n", habv4_get_status_str(status), status);
>  pr_info("Config: %s (0x%02x)\n", habv4_get_config_str(config), config);
> --
> 2.30.2

Regards,
Rouven Czerwinski


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

  reply	other threads:[~2021-03-12 10:23 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-11 17:07 Denis Osterland-Heim
2021-03-12 10:21 ` Rouven Czerwinski [this message]
2021-03-12 11:33   ` Denis Osterland-Heim

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=5cec528064955430448ef721fb4a351c0ac47c19.camel@pengutronix.de \
    --to=r.czerwinski@pengutronix.de \
    --cc=barebox@lists.infradead.org \
    --cc=denis.osterland@diehl.com \
    /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