* [PATCH] ARM: imx8m: support env in fat and ext4
@ 2021-10-20 19:16 Ricardo Salveti
2021-10-21 8:38 ` Oleksandr Suvorov
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Ricardo Salveti @ 2021-10-20 19:16 UTC (permalink / raw)
To: u-boot
Cc: sbabic, festevam, uboot-imx, peng.fan, ye.li, marex, sjg,
frieder.schrempf, oleksandr.suvorov, igor.opaniuk
Change boot device logic to also allow environment stored in fat and in
ext4 when booting from SD or from eMMC.
As the boot device check for SD and for eMMC was depending on
ENV_IS_IN_MMC being defined, change the ifdef blocks at env_get_location
to use IS_ENABLED instead for all modes, returning NOWHERE when no valid
mode is found.
Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
---
arch/arm/mach-imx/imx8m/soc.c | 35 +++++++++++++++--------------------
1 file changed, 15 insertions(+), 20 deletions(-)
diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-imx/imx8m/soc.c
index f2ddc834d4b..a3ce517a104 100644
--- a/arch/arm/mach-imx/imx8m/soc.c
+++ b/arch/arm/mach-imx/imx8m/soc.c
@@ -1306,40 +1306,35 @@ void do_error(struct pt_regs *pt_regs, unsigned int esr)
enum env_location env_get_location(enum env_operation op, int prio)
{
enum boot_device dev = get_boot_device();
- enum env_location env_loc = ENVL_UNKNOWN;
if (prio)
- return env_loc;
+ return ENVL_UNKNOWN;
switch (dev) {
-#ifdef CONFIG_ENV_IS_IN_SPI_FLASH
case QSPI_BOOT:
- env_loc = ENVL_SPI_FLASH;
- break;
-#endif
-#ifdef CONFIG_ENV_IS_IN_NAND
+ if (IS_ENABLED(CONFIG_ENV_IS_IN_SPI_FLASH))
+ return ENVL_SPI_FLASH;
+ return ENVL_NOWHERE;
case NAND_BOOT:
- env_loc = ENVL_NAND;
- break;
-#endif
-#ifdef CONFIG_ENV_IS_IN_MMC
+ if (IS_ENABLED(CONFIG_ENV_IS_IN_NAND))
+ return ENVL_NAND;
+ return ENVL_NOWHERE;
case SD1_BOOT:
case SD2_BOOT:
case SD3_BOOT:
case MMC1_BOOT:
case MMC2_BOOT:
case MMC3_BOOT:
- env_loc = ENVL_MMC;
- break;
-#endif
+ if (IS_ENABLED(CONFIG_ENV_IS_IN_MMC))
+ return ENVL_MMC;
+ else if (IS_ENABLED(CONFIG_ENV_IS_IN_EXT4))
+ return ENVL_EXT4;
+ else if (IS_ENABLED(CONFIG_ENV_IS_IN_FAT))
+ return ENVL_FAT;
+ return ENVL_NOWHERE;
default:
-#if defined(CONFIG_ENV_IS_NOWHERE)
- env_loc = ENVL_NOWHERE;
-#endif
- break;
+ return ENVL_NOWHERE;
}
-
- return env_loc;
}
#ifndef ENV_IS_EMBEDDED
--
2.33.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] ARM: imx8m: support env in fat and ext4
2021-10-20 19:16 [PATCH] ARM: imx8m: support env in fat and ext4 Ricardo Salveti
@ 2021-10-21 8:38 ` Oleksandr Suvorov
2022-01-15 14:02 ` Fabio Estevam
2022-02-05 16:39 ` sbabic
2 siblings, 0 replies; 4+ messages in thread
From: Oleksandr Suvorov @ 2021-10-21 8:38 UTC (permalink / raw)
To: Ricardo Salveti
Cc: U-Boot Mailing List, Stefano Babic, Fabio Estevam,
NXP i.MX U-Boot Team, Peng Fan, Ye Li, Marek Vasut, Simon Glass,
frieder.schrempf, Oleksandr Suvorov, Igor Opaniuk
On Wed, Oct 20, 2021 at 10:17 PM Ricardo Salveti <ricardo@foundries.io> wrote:
>
> Change boot device logic to also allow environment stored in fat and in
> ext4 when booting from SD or from eMMC.
>
> As the boot device check for SD and for eMMC was depending on
> ENV_IS_IN_MMC being defined, change the ifdef blocks at env_get_location
> to use IS_ENABLED instead for all modes, returning NOWHERE when no valid
> mode is found.
>
> Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
> ---
> arch/arm/mach-imx/imx8m/soc.c | 35 +++++++++++++++--------------------
> 1 file changed, 15 insertions(+), 20 deletions(-)
>
> diff --git a/arch/arm/mach-imx/imx8m/soc.c b/arch/arm/mach-imx/imx8m/soc.c
> index f2ddc834d4b..a3ce517a104 100644
> --- a/arch/arm/mach-imx/imx8m/soc.c
> +++ b/arch/arm/mach-imx/imx8m/soc.c
> @@ -1306,40 +1306,35 @@ void do_error(struct pt_regs *pt_regs, unsigned int esr)
> enum env_location env_get_location(enum env_operation op, int prio)
> {
> enum boot_device dev = get_boot_device();
> - enum env_location env_loc = ENVL_UNKNOWN;
>
> if (prio)
> - return env_loc;
> + return ENVL_UNKNOWN;
>
> switch (dev) {
> -#ifdef CONFIG_ENV_IS_IN_SPI_FLASH
> case QSPI_BOOT:
> - env_loc = ENVL_SPI_FLASH;
> - break;
> -#endif
> -#ifdef CONFIG_ENV_IS_IN_NAND
> + if (IS_ENABLED(CONFIG_ENV_IS_IN_SPI_FLASH))
> + return ENVL_SPI_FLASH;
> + return ENVL_NOWHERE;
> case NAND_BOOT:
> - env_loc = ENVL_NAND;
> - break;
> -#endif
> -#ifdef CONFIG_ENV_IS_IN_MMC
> + if (IS_ENABLED(CONFIG_ENV_IS_IN_NAND))
> + return ENVL_NAND;
> + return ENVL_NOWHERE;
> case SD1_BOOT:
> case SD2_BOOT:
> case SD3_BOOT:
> case MMC1_BOOT:
> case MMC2_BOOT:
> case MMC3_BOOT:
> - env_loc = ENVL_MMC;
> - break;
> -#endif
> + if (IS_ENABLED(CONFIG_ENV_IS_IN_MMC))
> + return ENVL_MMC;
> + else if (IS_ENABLED(CONFIG_ENV_IS_IN_EXT4))
> + return ENVL_EXT4;
> + else if (IS_ENABLED(CONFIG_ENV_IS_IN_FAT))
> + return ENVL_FAT;
> + return ENVL_NOWHERE;
> default:
> -#if defined(CONFIG_ENV_IS_NOWHERE)
> - env_loc = ENVL_NOWHERE;
> -#endif
> - break;
> + return ENVL_NOWHERE;
> }
> -
> - return env_loc;
> }
>
> #ifndef ENV_IS_EMBEDDED
> --
> 2.33.0
>
--
Best regards
Oleksandr
Oleksandr Suvorov
cryosay@gmail.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ARM: imx8m: support env in fat and ext4
2021-10-20 19:16 [PATCH] ARM: imx8m: support env in fat and ext4 Ricardo Salveti
2021-10-21 8:38 ` Oleksandr Suvorov
@ 2022-01-15 14:02 ` Fabio Estevam
2022-02-05 16:39 ` sbabic
2 siblings, 0 replies; 4+ messages in thread
From: Fabio Estevam @ 2022-01-15 14:02 UTC (permalink / raw)
To: Ricardo Salveti
Cc: U-Boot-Denx, Stefano Babic, dl-uboot-imx, Peng Fan, Ye Li,
Marek Vasut, Simon Glass, Schrempf Frieder, Oleksandr Suvorov,
Igor Opaniuk
On Wed, Oct 20, 2021 at 4:16 PM Ricardo Salveti <ricardo@foundries.io> wrote:
>
> Change boot device logic to also allow environment stored in fat and in
> ext4 when booting from SD or from eMMC.
>
> As the boot device check for SD and for eMMC was depending on
> ENV_IS_IN_MMC being defined, change the ifdef blocks at env_get_location
> to use IS_ENABLED instead for all modes, returning NOWHERE when no valid
> mode is found.
>
> Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] ARM: imx8m: support env in fat and ext4
2021-10-20 19:16 [PATCH] ARM: imx8m: support env in fat and ext4 Ricardo Salveti
2021-10-21 8:38 ` Oleksandr Suvorov
2022-01-15 14:02 ` Fabio Estevam
@ 2022-02-05 16:39 ` sbabic
2 siblings, 0 replies; 4+ messages in thread
From: sbabic @ 2022-02-05 16:39 UTC (permalink / raw)
To: Ricardo Salveti, u-boot
> Change boot device logic to also allow environment stored in fat and in
> ext4 when booting from SD or from eMMC.
> As the boot device check for SD and for eMMC was depending on
> ENV_IS_IN_MMC being defined, change the ifdef blocks at env_get_location
> to use IS_ENABLED instead for all modes, returning NOWHERE when no valid
> mode is found.
> Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
> Reviewed-by: Fabio Estevam <festevam@gmail.com>
Applied to u-boot-imx, master, thanks !
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic@denx.de
=====================================================================
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-02-05 16:40 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-20 19:16 [PATCH] ARM: imx8m: support env in fat and ext4 Ricardo Salveti
2021-10-21 8:38 ` Oleksandr Suvorov
2022-01-15 14:02 ` Fabio Estevam
2022-02-05 16:39 ` sbabic
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.