Re: [PATCH v9 05/15] stm32mp1: dk2: Add image information for capsule updates

Sughosh Ganu
2022-09-06T07:09:17Z

hi Etienne,

On Tue, 6 Sept 2022 at 00:49, Etienne Carriere
<etienne.carriere@linaro.org> wrote:
>
> Hello Sughosh,
>
> On Fri, 26 Aug 2022 at 11:57, Sughosh Ganu <sughosh.ganu@linaro.org> wrote:
> >
> > Enabling capsule update functionality on the platform requires
> > populating information on the images that are to be updated using the
> > functionality. Do so for the DK2 board.
> >
> > Signed-off-by: Sughosh Ganu <sughosh.ganu@linaro.org>
> > ---
> > Changes since V8:
> > * Use STM32MP_FIP_IMAGE_GUID for the FIP GUID value as suggested by
> > Yann
> >
> > board/st/stm32mp1/stm32mp1.c | 23 +++++++++++++++++++++++
> > include/configs/stm32mp15_common.h | 4 ++++
> > 2 files changed, 27 insertions(+)
> >
> > diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c
> > index 9496890d16..bfec0a710d 100644
> > --- a/board/st/stm32mp1/stm32mp1.c
> > +++ b/board/st/stm32mp1/stm32mp1.c
> > @@ -11,6 +11,7 @@
> > #include <clk.h>
> > #include <config.h>
> > #include <dm.h>
> > +#include <efi_loader.h>
> > #include <env.h>
> > #include <env_internal.h>
> > #include <fdt_simplefb.h>
> > @@ -87,6 +88,16 @@
> > #define USB_START_LOW_THRESHOLD_UV 1230000
> > #define USB_START_HIGH_THRESHOLD_UV 2150000
> >
> > +#if CONFIG_IS_ENABLED(EFI_HAVE_CAPSULE_SUPPORT)
> > +struct efi_fw_image fw_images[1];
> > +
> > +struct efi_capsule_update_info update_info = {
> > + .images = fw_images,
> > +};
> > +
> > +u8 num_image_type_guids = ARRAY_SIZE(fw_images);
> > +#endif /* EFI_HAVE_CAPSULE_SUPPORT */
> > +
> > int board_early_init_f(void)
> > {
> > /* nothing to do, only used in SPL */
> > @@ -670,6 +681,18 @@ int board_init(void)
> >
> > setup_led(LEDST_ON);
> >
> > +#if CONFIG_IS_ENABLED(EFI_HAVE_CAPSULE_SUPPORT)
> > + if (board_is_stm32mp15x_dk2()) {
>
> Sorry for this late comment.
> Should this be restricted to mp15-dk2?
> I would remove the test and apply when CONFIG_EFI_HAVE_CAPSULE_SUPPORT
> is enable.

You are right. With the changes made in the V9 version of this patch,
I believe this check is redundant. I will remove this in the next
version. Thanks.

-sughosh

>
>
> > + efi_guid_t image_type_guid = STM32MP_FIP_IMAGE_GUID;
> > + guidcpy(&fw_images[0].image_type_id, &image_type_guid);
> > + fw_images[0].fw_name = u"STM32MP-FIP";
> > + /*
> > + * For FWU multi bank update, the image
> > + * index will be computed at runtime
> > + */
> > + fw_images[0].image_index = 0;
> > + }
> > +#endif
> > return 0;
> > }
> >
> > diff --git a/include/configs/stm32mp15_common.h b/include/configs/stm32mp15_common.h
> > index c5412ffeb3..bb19dae945 100644
> > --- a/include/configs/stm32mp15_common.h
> > +++ b/include/configs/stm32mp15_common.h
> > @@ -34,6 +34,10 @@
> > #define CONFIG_SERVERIP 192.168.1.1
> > #endif
> >
> > +#define STM32MP_FIP_IMAGE_GUID \
> > + EFI_GUID(0x19d5df83, 0x11b0, 0x457b, 0xbe, 0x2c, \
> > + 0x75, 0x59, 0xc1, 0x31, 0x42, 0xa5)
> > +
> > /*****************************************************************************/
> > #ifdef CONFIG_DISTRO_DEFAULTS
> > /*****************************************************************************/
> > --
> > 2.34.1
> >