public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Sean Anderson <seanga2@gmail.com>
To: Heinrich Schuchardt <xypron.glpk@gmx.de>
Cc: Harald Seiler <hws@denx.de>, Simon Glass <sjg@chromium.org>,
	uboot-imx@nxp.com, Anatolij Gustschin <agust@denx.de>,
	Fabio Estevam <festevam@gmail.com>, Peng Fan <peng.fan@nxp.com>,
	Stefano Babic <sbabic@denx.de>, Tom Rini <trini@konsulko.com>,
	u-boot@lists.denx.de
Subject: Re: [PATCH 07/26] arm: imx: Check header before calling spl_load_imx_container
Date: Thu, 12 Oct 2023 20:48:14 -0400	[thread overview]
Message-ID: <8b24c8e7-0f2b-4abe-827e-ee7f09865759@gmail.com> (raw)
In-Reply-To: <4a84d96b-b7e0-477d-833f-8ed3e568d05f@gmx.de>

On 10/12/23 03:44, Heinrich Schuchardt wrote:
> On 10/12/23 03:56, Sean Anderson wrote:
>> Make sure we have an IMX header before calling spl_load_imx_container,
>> since if we don't it will fail with -ENOENT. This allows us to fall back to
>> legacy/raw images if they are also enabled.
> 
> Looking at CONFIG_AHAB_BOOT (related to secure boot) we must be sure
> that we don't introduce any unsolicited fallback on existing configurations.

There are no in-tree boards with SPL_LOAD_IMX_CONTAINER and AHAB_BOOT both enabled.

--Sean

>>
>> To avoid too much bloat, Legacy/Raw images are disabled for the four
>> configs which only boot from raw MMC.
>>
>> Future work could include merging imx_container.h with imx8image.h, since
>> they appear to define mostly the same structures.
>>
>> Signed-off-by: Sean Anderson <seanga2@gmail.com>
>> ---
>>
>>   MAINTAINERS                                                  | 1 +
>>   arch/arm/include/asm/mach-imx/ahab.h                         | 2 +-
>>   arch/arm/mach-imx/cmd_dek.c                                  | 4 ++--
>>   arch/arm/mach-imx/ele_ahab.c                                 | 2 +-
>>   arch/arm/mach-imx/image-container.c                          | 2 +-
>>   arch/arm/mach-imx/imx8/ahab.c                                | 2 +-
>>   arch/arm/mach-imx/parse-container.c                          | 2 +-
>>   arch/arm/mach-imx/spl_imx_romapi.c                           | 5 +++--
>>   common/spl/spl_mmc.c                                         | 4 +++-
>>   common/spl/spl_nand.c                                        | 4 +++-
>>   common/spl/spl_nor.c                                         | 4 +++-
>>   common/spl/spl_spi.c                                         | 4 +++-
>>   configs/deneb_defconfig                                      | 2 ++
>>   configs/giedi_defconfig                                      | 2 ++
>>   configs/imx8qm_mek_defconfig                                 | 2 ++
>>   configs/imx8qxp_mek_defconfig                                | 2 ++
>>   drivers/usb/gadget/f_sdp.c                                   | 4 +++-
>>   .../include/asm/mach-imx/image.h => include/imx_container.h  | 0
>>   18 files changed, 34 insertions(+), 14 deletions(-)
>>   rename arch/arm/include/asm/mach-imx/image.h => include/imx_container.h (100%)
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 7d5d05320c0..35209e73af5 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -300,6 +300,7 @@ F:    arch/arm/include/asm/mach-imx/
>>   F:    board/freescale/*mx*/
>>   F:    board/freescale/common/
>>   F:    drivers/serial/serial_mxc.c
>> +F:    include/imx_container.h
>>
>>   ARM HISILICON
>>   M:    Peter Griffin <peter.griffin@linaro.org>
>> diff --git a/arch/arm/include/asm/mach-imx/ahab.h b/arch/arm/include/asm/mach-imx/ahab.h
>> index 4222e3db278..4884f056251 100644
>> --- a/arch/arm/include/asm/mach-imx/ahab.h
>> +++ b/arch/arm/include/asm/mach-imx/ahab.h
>> @@ -6,7 +6,7 @@
>>   #ifndef __IMX_AHAB_H__
>>   #define __IMX_AHAB_H__
>>
>> -#include <asm/mach-imx/image.h>
>> +#include <imx_container.h>
>>
>>   int ahab_auth_cntr_hdr(struct container_hdr *container, u16 length);
>>   int ahab_auth_release(void);
>> diff --git a/arch/arm/mach-imx/cmd_dek.c b/arch/arm/mach-imx/cmd_dek.c
>> index 6fa5b41fcd3..2f389dbe8df 100644
>> --- a/arch/arm/mach-imx/cmd_dek.c
>> +++ b/arch/arm/mach-imx/cmd_dek.c
>> @@ -18,12 +18,12 @@
>>   #include <mapmem.h>
>>   #include <tee.h>
>>   #ifdef CONFIG_IMX_SECO_DEK_ENCAP
>> +#include <imx_container.h>
>>   #include <firmware/imx/sci/sci.h>
>> -#include <asm/mach-imx/image.h>
>>   #endif
>>   #ifdef CONFIG_IMX_ELE_DEK_ENCAP
>> +#include <imx_container.h>
>>   #include <asm/mach-imx/ele_api.h>
>> -#include <asm/mach-imx/image.h>
>>   #endif
>>
>>   #include <cpu_func.h>
>> diff --git a/arch/arm/mach-imx/ele_ahab.c b/arch/arm/mach-imx/ele_ahab.c
>> index 6a1ad198f89..295c055ad0a 100644
>> --- a/arch/arm/mach-imx/ele_ahab.c
>> +++ b/arch/arm/mach-imx/ele_ahab.c
>> @@ -6,12 +6,12 @@
>>   #include <common.h>
>>   #include <command.h>
>>   #include <errno.h>
>> +#include <imx_container.h>
>>   #include <asm/io.h>
>>   #include <asm/mach-imx/ele_api.h>
>>   #include <asm/mach-imx/sys_proto.h>
>>   #include <asm/arch-imx/cpu.h>
>>   #include <asm/arch/sys_proto.h>
>> -#include <asm/mach-imx/image.h>
>>   #include <console.h>
>>   #include <cpu_func.h>
>>   #include <asm/global_data.h>
>> diff --git a/arch/arm/mach-imx/image-container.c b/arch/arm/mach-imx/image-container.c
>> index eff9e0c4597..ebc8021d7cc 100644
>> --- a/arch/arm/mach-imx/image-container.c
>> +++ b/arch/arm/mach-imx/image-container.c
>> @@ -5,6 +5,7 @@
>>
>>   #include <common.h>
>>   #include <errno.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <malloc.h>
>>   #include <asm/io.h>
>> @@ -12,7 +13,6 @@
>>   #include <spi_flash.h>
>>   #include <spl.h>
>>   #include <nand.h>
>> -#include <asm/mach-imx/image.h>
>>   #include <asm/arch/sys_proto.h>
>>   #include <asm/mach-imx/boot_mode.h>
>>
>> diff --git a/arch/arm/mach-imx/imx8/ahab.c b/arch/arm/mach-imx/imx8/ahab.c
>> index 44ea63584aa..994becccefd 100644
>> --- a/arch/arm/mach-imx/imx8/ahab.c
>> +++ b/arch/arm/mach-imx/imx8/ahab.c
>> @@ -6,6 +6,7 @@
>>   #include <common.h>
>>   #include <command.h>
>>   #include <errno.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <asm/global_data.h>
>>   #include <asm/io.h>
>> @@ -13,7 +14,6 @@
>>   #include <asm/mach-imx/sys_proto.h>
>>   #include <asm/arch-imx/cpu.h>
>>   #include <asm/arch/sys_proto.h>
>> -#include <asm/mach-imx/image.h>
>>   #include <console.h>
>>   #include <cpu_func.h>
>>   #include "u-boot/sha256.h"
>> diff --git a/arch/arm/mach-imx/parse-container.c b/arch/arm/mach-imx/parse-container.c
>> index 0a3d41f411e..126ab7c57a1 100644
>> --- a/arch/arm/mach-imx/parse-container.c
>> +++ b/arch/arm/mach-imx/parse-container.c
>> @@ -6,9 +6,9 @@
>>   #include <common.h>
>>   #include <stdlib.h>
>>   #include <errno.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <spl.h>
>> -#include <asm/mach-imx/image.h>
>>   #ifdef CONFIG_AHAB_BOOT
>>   #include <asm/mach-imx/ahab.h>
>>   #endif
>> diff --git a/arch/arm/mach-imx/spl_imx_romapi.c b/arch/arm/mach-imx/spl_imx_romapi.c
>> index b51061b987b..8816566b364 100644
>> --- a/arch/arm/mach-imx/spl_imx_romapi.c
>> +++ b/arch/arm/mach-imx/spl_imx_romapi.c
>> @@ -6,11 +6,11 @@
>>   #include <common.h>
>>   #include <errno.h>
>>   #include <image.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <asm/global_data.h>
>>   #include <linux/libfdt.h>
>>   #include <spl.h>
>> -#include <asm/mach-imx/image.h>
>>   #include <asm/arch/sys_proto.h>
>>
>>   DECLARE_GLOBAL_DATA_PTR;
>> @@ -111,7 +111,8 @@ static int spl_romapi_load_image_seekable(struct spl_image_info *spl_image,
>>           load.read = spl_romapi_read_seekable;
>>           load.priv = &pagesize;
>>           return spl_load_simple_fit(spl_image, &load, offset / pagesize, header);
>> -    } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER)) {
>> +    } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER) &&
>> +           valid_container_hdr((void *)header)) {
>>           struct spl_load_info load;
>>
>>           memset(&load, 0, sizeof(load));
>> diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
>> index 02ad32a23e0..67c7ae34a58 100644
>> --- a/common/spl/spl_mmc.c
>> +++ b/common/spl/spl_mmc.c
>> @@ -16,6 +16,7 @@
>>   #include <errno.h>
>>   #include <mmc.h>
>>   #include <image.h>
>> +#include <imx_container.h>
>>
>>   static int mmc_load_legacy(struct spl_image_info *spl_image,
>>                  struct spl_boot_device *bootdev,
>> @@ -108,7 +109,8 @@ int mmc_load_image_raw_sector(struct spl_image_info *spl_image,
>>           load.bl_len = mmc->read_bl_len;
>>           load.read = h_spl_load_read;
>>           ret = spl_load_simple_fit(spl_image, &load, sector, header);
>> -    } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER)) {
>> +    } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER) &&
>> +           valid_container_hdr((void *)header)) {
>>           struct spl_load_info load;
>>
>>           load.dev = mmc;
>> diff --git a/common/spl/spl_nand.c b/common/spl/spl_nand.c
>> index 6cc34004f49..07916bedbb9 100644
>> --- a/common/spl/spl_nand.c
>> +++ b/common/spl/spl_nand.c
>> @@ -7,6 +7,7 @@
>>   #include <config.h>
>>   #include <fdt_support.h>
>>   #include <image.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <spl.h>
>>   #include <asm/io.h>
>> @@ -99,7 +100,8 @@ static int spl_nand_load_element(struct spl_image_info *spl_image,
>>           load.bl_len = bl_len;
>>           load.read = spl_nand_fit_read;
>>           return spl_load_simple_fit(spl_image, &load, offset / bl_len, header);
>> -    } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER)) {
>> +    } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER) &&
>> +           valid_container_hdr((void *)header)) {
>>           struct spl_load_info load;
>>
>>           load.dev = NULL;
>> diff --git a/common/spl/spl_nor.c b/common/spl/spl_nor.c
>> index c141a9ae629..dd447982071 100644
>> --- a/common/spl/spl_nor.c
>> +++ b/common/spl/spl_nor.c
>> @@ -5,6 +5,7 @@
>>
>>   #include <common.h>
>>   #include <image.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <spl.h>
>>
>> @@ -102,7 +103,8 @@ static int spl_nor_load_image(struct spl_image_info *spl_image,
>>                          (void *)header);
>>       }
>>   #endif
>> -    if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER)) {
>> +    if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER) &&
>> +        valid_container_hdr((void *)header)) {
>>           load.bl_len = 1;
>>           load.read = spl_nor_load_read;
>>           return spl_load_imx_container(spl_image, &load,
>> diff --git a/common/spl/spl_spi.c b/common/spl/spl_spi.c
>> index d69069a75bf..1427c9478c0 100644
>> --- a/common/spl/spl_spi.c
>> +++ b/common/spl/spl_spi.c
>> @@ -10,6 +10,7 @@
>>
>>   #include <common.h>
>>   #include <image.h>
>> +#include <imx_container.h>
>>   #include <log.h>
>>   #include <spi.h>
>>   #include <spi_flash.h>
>> @@ -153,7 +154,8 @@ static int spl_spi_load_image(struct spl_image_info *spl_image,
>>               err = spl_load_simple_fit(spl_image, &load,
>>                             payload_offs,
>>                             header);
>> -        } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER)) {
>> +        } else if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER) &&
>> +               valid_container_hdr((void *)header)) {
>>               struct spl_load_info load;
>>
>>               load.dev = flash;
>> diff --git a/configs/deneb_defconfig b/configs/deneb_defconfig
>> index 82869e4e0f9..ee2478aa0bb 100644
>> --- a/configs/deneb_defconfig
>> +++ b/configs/deneb_defconfig
>> @@ -44,6 +44,8 @@ CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
>>   CONFIG_SPL_BSS_START_ADDR=0x128000
>>   CONFIG_SPL_BSS_MAX_SIZE=0x1000
>>   CONFIG_SPL_BOARD_INIT=y
>> +# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>> +# CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>>   CONFIG_SPL_SYS_MALLOC_SIMPLE=y
>>   # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
>>   CONFIG_SPL_SYS_MALLOC=y
>> diff --git a/configs/giedi_defconfig b/configs/giedi_defconfig
>> index b56b736c436..5e403c90c8c 100644
>> --- a/configs/giedi_defconfig
>> +++ b/configs/giedi_defconfig
>> @@ -44,6 +44,8 @@ CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
>>   CONFIG_SPL_BSS_START_ADDR=0x128000
>>   CONFIG_SPL_BSS_MAX_SIZE=0x1000
>>   CONFIG_SPL_BOARD_INIT=y
>> +# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>> +# CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>>   CONFIG_SPL_SYS_MALLOC_SIMPLE=y
>>   # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
>>   CONFIG_SPL_SYS_MALLOC=y
>> diff --git a/configs/imx8qm_mek_defconfig b/configs/imx8qm_mek_defconfig
>> index b9083b0453f..4c5206306ee 100644
>> --- a/configs/imx8qm_mek_defconfig
>> +++ b/configs/imx8qm_mek_defconfig
>> @@ -38,6 +38,8 @@ CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
>>   CONFIG_SPL_BSS_START_ADDR=0x128000
>>   CONFIG_SPL_BSS_MAX_SIZE=0x1000
>>   CONFIG_SPL_BOARD_INIT=y
>> +# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>> +# CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>>   CONFIG_SPL_SYS_MALLOC_SIMPLE=y
>>   # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
>>   CONFIG_SPL_SYS_MALLOC=y
>> diff --git a/configs/imx8qxp_mek_defconfig b/configs/imx8qxp_mek_defconfig
>> index f516b0b5557..f312d3945fb 100644
>> --- a/configs/imx8qxp_mek_defconfig
>> +++ b/configs/imx8qxp_mek_defconfig
>> @@ -38,6 +38,8 @@ CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
>>   CONFIG_SPL_BSS_START_ADDR=0x128000
>>   CONFIG_SPL_BSS_MAX_SIZE=0x1000
>>   CONFIG_SPL_BOARD_INIT=y
>> +# CONFIG_SPL_RAW_IMAGE_SUPPORT is not set
>> +# CONFIG_SPL_LEGACY_IMAGE_FORMAT is not set
>>   CONFIG_SPL_SYS_MALLOC_SIMPLE=y
>>   # CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
>>   CONFIG_SPL_SYS_MALLOC=y
>> diff --git a/drivers/usb/gadget/f_sdp.c b/drivers/usb/gadget/f_sdp.c
>> index 2b3a9c5fd4c..ee9384fb37e 100644
>> --- a/drivers/usb/gadget/f_sdp.c
>> +++ b/drivers/usb/gadget/f_sdp.c
>> @@ -34,6 +34,7 @@
>>   #include <spl.h>
>>   #include <image.h>
>>   #include <imximage.h>
>> +#include <imx_container.h>
>>   #include <watchdog.h>
>>
>>   #define HID_REPORT_ID_MASK    0x000000ff
>> @@ -852,7 +853,8 @@ static int sdp_handle_in_ep(struct spl_image_info *spl_image,
>>                   return SDP_EXIT;
>>               }
>>   #endif
>> -            if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER)) {
>> +            if (IS_ENABLED(CONFIG_SPL_LOAD_IMX_CONTAINER) &&
>> +                valid_container_hdr((void *)header)) {
>>                   struct spl_load_info load;
>>
>>                   load.dev = header;
>> diff --git a/arch/arm/include/asm/mach-imx/image.h b/include/imx_container.h
>> similarity index 100%
>> rename from arch/arm/include/asm/mach-imx/image.h
>> rename to include/imx_container.h
> 


  reply	other threads:[~2023-10-13  0:48 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-12  1:56 [PATCH 00/26] test: spl: Test some load methods Sean Anderson
2023-10-12  1:56 ` [PATCH 01/26] spl: legacy: Fix referencing _image_binary_end Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:30     ` Sean Anderson
2023-10-12 15:28       ` Simon Glass
2023-10-12  1:56 ` [PATCH 02/26] spl: nor: Don't allocate header on stack Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  7:26     ` Michael Nazzareno Trimarchi
2023-10-12  1:56 ` [PATCH 03/26] spl: fit: Fix entry point for SPL_LOAD_FIT_FULL Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:28     ` Sean Anderson
2023-10-12 15:20       ` Tom Rini
2023-10-12 15:28       ` Simon Glass
2023-10-12  1:56 ` [PATCH 04/26] arm: imx: Fix i.MX8 container load address Sean Anderson
2023-10-12  1:56 ` [PATCH 05/26] arm: imx: Add newlines after error messages Sean Anderson
2023-10-12  7:33   ` Heinrich Schuchardt
2023-10-12  1:56 ` [PATCH 06/26] arm: imx: Add function to validate i.MX8 containers Sean Anderson
2023-10-12  1:56 ` [PATCH 07/26] arm: imx: Check header before calling spl_load_imx_container Sean Anderson
2023-10-12  7:44   ` Heinrich Schuchardt
2023-10-13  0:48     ` Sean Anderson [this message]
2023-10-12 16:40   ` Tom Rini
2023-10-13  1:39     ` Sean Anderson
2023-10-13 12:55       ` Tom Rini
2023-10-12  1:56 ` [PATCH 08/26] Move i.MX8 container image loading support to common/spl Sean Anderson
2023-10-12  1:56 ` [PATCH 09/26] spl: Allow enabling SPL_OF_REAL and SPL_OF_PLATDATA at the same time Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:22     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 10/26] lib: acpi: Fix linking SPL when ACPIGEN is enabled Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:56 ` [PATCH 11/26] fs: ext4: Fix building ext4 in SPL if write " Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:56 ` [PATCH 12/26] fs: Compile in sandbox filesystem in SPL if it " Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  6:39   ` Heinrich Schuchardt
2023-10-12 14:15     ` Sean Anderson
2023-10-12 14:50       ` Tom Rini
2023-10-12 14:52       ` Tom Rini
2023-10-12  1:56 ` [PATCH 13/26] net: Fix compiling SPL when fastboot " Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  6:52   ` Heinrich Schuchardt
2023-10-12 14:16     ` Sean Anderson
2023-10-12 14:52   ` Tom Rini
2023-10-12  1:56 ` [PATCH 14/26] net: bootp: Move port numbers to header Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  6:53   ` Heinrich Schuchardt
2023-10-12  1:56 ` [PATCH 15/26] net: bootp: Fall back to BOOTP from DHCP when unit testing Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  7:16   ` Heinrich Schuchardt
2023-10-12 14:18     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 16/26] spl: Don't cache devices when UNIT_TEST is enabled Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:18     ` Sean Anderson
2023-10-12  7:23   ` Heinrich Schuchardt
2023-10-12 14:19     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 17/26] spl: Use map_sysmem where appropriate Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:56 ` [PATCH 18/26] test: spl: Split tests up and use some configs Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:56 ` [PATCH 19/26] test: spl: Fix spl_test_load not failing if fname doesn't exist Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:56 ` [PATCH 20/26] test: spl: Add functions to create images Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-13 19:44   ` [SPAM] " Xavier Drudis Ferran
2023-10-14 14:37     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 21/26] test: spl: Add functions to create filesystems Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:11     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 22/26] test: spl: Add a test for spl_blk_load_image Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:56 ` [PATCH 23/26] test: spl: Add a test for the MMC load method Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:12     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 24/26] test: spl: Add a test for the NET " Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:11     ` Sean Anderson
2023-10-12  1:56 ` [PATCH 25/26] test: spl: Add a test for the NOR " Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  4:16     ` Sean Anderson
2023-10-12 15:28       ` Simon Glass
2023-10-12  1:56 ` [PATCH 26/26] test: spl: Add a test for the SPI " Sean Anderson
2023-10-12  3:41   ` Simon Glass
2023-10-12  1:59 ` [PATCH 00/26] test: spl: Test some load methods Sean Anderson
2023-10-12  3:41 ` Simon Glass

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=8b24c8e7-0f2b-4abe-827e-ee7f09865759@gmail.com \
    --to=seanga2@gmail.com \
    --cc=agust@denx.de \
    --cc=festevam@gmail.com \
    --cc=hws@denx.de \
    --cc=peng.fan@nxp.com \
    --cc=sbabic@denx.de \
    --cc=sjg@chromium.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    --cc=uboot-imx@nxp.com \
    --cc=xypron.glpk@gmx.de \
    /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