[PATCH 05/12] rockchip: puma-rk3399: load environment from same MMC as used for loading U-Boot proper

Kever Yang kever.yang at rock-chips.com
Thu Sep 1 15:05:12 CEST 2022


On 2022/7/23 00:06, Quentin Schulz wrote:
> From: Quentin Schulz <quentin.schulz at theobroma-systems.com>
>
> Automatically detect which MMC device (SD-Card or eMMC) was used to load
> U-Boot proper and load the environment from that MMC device instead of
> a hardcoded one.
>
> Cc: Quentin Schulz <foss+uboot at 0leil.net>
> Signed-off-by: Quentin Schulz <quentin.schulz at theobroma-systems.com>

Reviewed-by: Kever Yang <kever.yang at rock-chips.com>

Thanks,
- Kever
> ---
>
> Depends on
> https://lore.kernel.org/u-boot/20220715151552.953654-1-foss+uboot@0leil.net/
>
>   .../puma_rk3399/puma-rk3399.c                 | 22 +++++++++++++++++++
>   1 file changed, 22 insertions(+)
>
> diff --git a/board/theobroma-systems/puma_rk3399/puma-rk3399.c b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
> index ce3436b770..5e5e58c88e 100644
> --- a/board/theobroma-systems/puma_rk3399/puma-rk3399.c
> +++ b/board/theobroma-systems/puma_rk3399/puma-rk3399.c
> @@ -113,6 +113,28 @@ static int setup_boottargets(void)
>   	return 0;
>   }
>   
> +int mmc_get_env_dev(void)
> +{
> +	const char *boot_device =
> +		ofnode_read_chosen_string("u-boot,spl-boot-device");
> +
> +	if (!boot_device) {
> +		debug("%s: /chosen/u-boot,spl-boot-device not set\n",
> +		      __func__);
> +		return CONFIG_SYS_MMC_ENV_DEV;
> +	}
> +
> +	debug("%s: booted from %s\n", __func__, boot_device);
> +
> +	if (!strcmp(boot_device, "/mmc at fe320000"))
> +		return 1;
> +
> +	if (!strcmp(boot_device, "/mmc at fe330000"))
> +		return 0;
> +
> +	return CONFIG_SYS_MMC_ENV_DEV;
> +}
> +
>   int misc_init_r(void)
>   {
>   	const u32 cpuid_offset = 0x7;


More information about the U-Boot mailing list