board: amlogic: add proper boot device detection for params.bin load
authorMarek Szyprowski <m.szyprowski@samsung.com>
Thu, 12 Nov 2020 11:49:53 +0000 (12:49 +0100)
committerMarek Szyprowski <m.szyprowski@samsung.com>
Mon, 15 Nov 2021 14:18:27 +0000 (15:18 +0100)
Detect eMMC/SD card boot and report proper MMC device to the environment
loading code. This requires to use an empty device part in
CONFIG_ENV_FAT_DEVICE_AND_PART to let the code update the device to the
value returned by mmc_get_env_dev() function.

Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Change-Id: I4ff26f3be631a018a3707b58b6ffaf15fd717001

board/amlogic/w400/w400.c
configs/khadas-vim3_defconfig
configs/odroid-c4_defconfig
configs/odroid-n2_defconfig

index b37a4acbfd763bcec654a5d2f2e7e7c9b4f37f7f..8aa79aa37fdee90b3b37188463a4cb34bc86944d 100644 (file)
 #include <init.h>
 #include <net.h>
 #include <asm/io.h>
+#include <asm/arch/boot.h>
 #include <asm/arch/eth.h>
 
+int mmc_get_env_dev(void)
+{
+       if (meson_get_boot_device() == BOOT_DEVICE_EMMC)
+               return 1;
+
+       return 0;
+}
+
 int misc_init_r(void)
 {
        meson_generate_serial_ethaddr();
index 1d61f9490bc62976a7accae7b868a084e8bb503b..1bb916fa69c22b2ff9521fa20daec12b4ce21e2b 100644 (file)
@@ -34,11 +34,9 @@ CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_OF_CONTROL=y
 CONFIG_ENV_IS_IN_FAT=y
-CONFIG_ENV_FAT_DEVICE_AND_PART="1:1"
+CONFIG_ENV_FAT_DEVICE_AND_PART=":1"
 CONFIG_ENV_FAT_FILE="vim3/params.bin"
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-CONFIG_SYS_MMC_ENV_DEV=1
-CONFIG_SYS_MMC_ENV_PART=1
 CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DFU_MMC=y
index f77e513236a495a3daa20be287cc05da44eadb68..033e089822aa93cfb8bd789900fd38151b958c47 100644 (file)
@@ -29,11 +29,9 @@ CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_OF_CONTROL=y
 CONFIG_ENV_IS_IN_FAT=y
-CONFIG_ENV_FAT_DEVICE_AND_PART="1:1"
+CONFIG_ENV_FAT_DEVICE_AND_PART=":1"
 CONFIG_ENV_FAT_FILE="odroid-c4/params.bin"
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-CONFIG_SYS_MMC_ENV_DEV=1
-CONFIG_SYS_MMC_ENV_PART=1
 CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG=y
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DFU_MMC=y
index 493466e098d27bb111c3523d39896eaa0a636ff6..50ae7c517ea97e7d5e30ce4b9aaf59c8465beab5 100644 (file)
@@ -30,11 +30,9 @@ CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_CMD_REGULATOR=y
 CONFIG_OF_CONTROL=y
 CONFIG_ENV_IS_IN_FAT=y
-CONFIG_ENV_FAT_DEVICE_AND_PART="1:1"
+CONFIG_ENV_FAT_DEVICE_AND_PART=":1"
 CONFIG_ENV_FAT_FILE="odroid-n2/params.bin"
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-CONFIG_SYS_MMC_ENV_DEV=1
-CONFIG_SYS_MMC_ENV_PART=1
 CONFIG_NET_RANDOM_ETHADDR=y
 CONFIG_DFU_MMC=y
 CONFIG_SET_DFU_ALT_INFO=y