From mboxrd@z Thu Jan 1 00:00:00 1970 From: Patrice CHOTARD Date: Tue, 9 Mar 2021 15:20:25 +0100 Subject: [PATCH] board: stm32mp1: use CONFIG_SYS_MMC_ENV_DEV when available In-Reply-To: <20210301131752.1.I8cbd6f92056fa2d10bf3880746d89ee0779f8e27> References: <20210301131752.1.I8cbd6f92056fa2d10bf3880746d89ee0779f8e27> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Patrick On 3/1/21 1:17 PM, Patrick Delaunay wrote: > Check whether user has explicitly defined the mmc device to use > in mmc_get_env_dev() with CONFIG_SYS_MMC_ENV_DEV. > > On STMicroelectronics boards the used mmc device for environment is > the instance of boot device provided by the ROM code; the mmc instance > is configured by alias in device tree. The used partition is defined in > device tree with u-boot,mmc-env-partition = "ssbl". > > This patch allows to override this selection for the support of customer > boards without alias; for example when SDMMC1 is not used and ENV in > mmc0=SDMMC2, user can force the value: CONFIG_SYS_MMC_ENV_DEV = 0. > > On STMicroelectronics boards, the current behavior is kept with > CONFIG_SYS_MMC_ENV_DEV = -1. > > Signed-off-by: Patrick Delaunay > --- > > board/st/stm32mp1/stm32mp1.c | 8 +++++++- > configs/stm32mp15_basic_defconfig | 1 + > configs/stm32mp15_trusted_defconfig | 1 + > 3 files changed, 9 insertions(+), 1 deletion(-) > > diff --git a/board/st/stm32mp1/stm32mp1.c b/board/st/stm32mp1/stm32mp1.c > index ab85d8ba68..759181fb5d 100644 > --- a/board/st/stm32mp1/stm32mp1.c > +++ b/board/st/stm32mp1/stm32mp1.c > @@ -862,8 +862,14 @@ const char *env_ext4_get_dev_part(void) > > int mmc_get_env_dev(void) > { > - u32 bootmode = get_bootmode(); > + u32 bootmode; > + > + if (CONFIG_SYS_MMC_ENV_DEV >= 0) > + return CONFIG_SYS_MMC_ENV_DEV; > + > + bootmode = get_bootmode(); > > + /* use boot instance to select the correct mmc device identifier */ > return (bootmode & TAMP_BOOT_INSTANCE_MASK) - 1; > } > > diff --git a/configs/stm32mp15_basic_defconfig b/configs/stm32mp15_basic_defconfig > index 1c680984b8..a2f745099e 100644 > --- a/configs/stm32mp15_basic_defconfig > +++ b/configs/stm32mp15_basic_defconfig > @@ -71,6 +71,7 @@ CONFIG_ENV_UBI_PART="UBI" > CONFIG_ENV_UBI_VOLUME="uboot_config" > CONFIG_ENV_UBI_VOLUME_REDUND="uboot_config_r" > CONFIG_SYS_RELOC_GD_ENV_ADDR=y > +CONFIG_SYS_MMC_ENV_DEV=-1 > # CONFIG_SPL_ENV_IS_NOWHERE is not set > # CONFIG_SPL_ENV_IS_IN_SPI_FLASH is not set > CONFIG_STM32_ADC=y > diff --git a/configs/stm32mp15_trusted_defconfig b/configs/stm32mp15_trusted_defconfig > index 107041119f..f41aaa750f 100644 > --- a/configs/stm32mp15_trusted_defconfig > +++ b/configs/stm32mp15_trusted_defconfig > @@ -52,6 +52,7 @@ CONFIG_ENV_UBI_PART="UBI" > CONFIG_ENV_UBI_VOLUME="uboot_config" > CONFIG_ENV_UBI_VOLUME_REDUND="uboot_config_r" > CONFIG_SYS_RELOC_GD_ENV_ADDR=y > +CONFIG_SYS_MMC_ENV_DEV=-1 > CONFIG_STM32_ADC=y > CONFIG_SET_DFU_ALT_INFO=y > CONFIG_USB_FUNCTION_FASTBOOT=y > Reviewed-by: Patrice Chotard Thanks Patrice