On 12/18/20 11:26 PM, Marek Szyprowski wrote: > Detect eMMC or SD card boot on Odroid-C4/N2 and Khadas VIM3(l) boards and > report proper MMC device for the environment loading code. This allows to > automatically load and store environment variables on the FAT partition > or RAW offset of the MMC device without the need to use different > configurations on eMMC and SD card. > > To use this feature with environment stored on FAT partition, one has to > specify an empty device part (i.e. ":1" for the first partition) in > CONFIG_ENV_FAT_DEVICE_AND_PART to let the code to set the device to the > value returned by mmc_get_env_dev() function. > > Signed-off-by: Marek Szyprowski <m.szyprow...@samsung.com>
Reviewed-by: Jaehoon Chung <jh80.ch...@samsung.com> Best Regards, Jaehoon Chung > --- > board/amlogic/odroid-n2/odroid-n2.c | 8 ++++++++ > board/amlogic/vim3/vim3.c | 8 ++++++++ > 2 files changed, 16 insertions(+) > > diff --git a/board/amlogic/odroid-n2/odroid-n2.c > b/board/amlogic/odroid-n2/odroid-n2.c > index caf7fd6810..12ee5d3abc 100644 > --- a/board/amlogic/odroid-n2/odroid-n2.c > +++ b/board/amlogic/odroid-n2/odroid-n2.c > @@ -10,6 +10,7 @@ > #include <init.h> > #include <net.h> > #include <asm/io.h> > +#include <asm/arch/boot.h> > #include <asm/arch/sm.h> > #include <asm/arch/eth.h> > > @@ -17,6 +18,13 @@ > #define EFUSE_MAC_SIZE 12 > #define MAC_ADDR_LEN 6 > > +int mmc_get_env_dev(void) > +{ > + if (meson_get_boot_device() == BOOT_DEVICE_EMMC) > + return 1; > + return 0; > +} > + > int misc_init_r(void) > { > u8 mac_addr[MAC_ADDR_LEN]; > diff --git a/board/amlogic/vim3/vim3.c b/board/amlogic/vim3/vim3.c > index 09ef39ff30..f9049e0172 100644 > --- a/board/amlogic/vim3/vim3.c > +++ b/board/amlogic/vim3/vim3.c > @@ -10,10 +10,18 @@ > #include <init.h> > #include <net.h> > #include <asm/io.h> > +#include <asm/arch/boot.h> > #include <asm/arch/eth.h> > #include <i2c.h> > #include "khadas-mcu.h" > > +int mmc_get_env_dev(void) > +{ > + if (meson_get_boot_device() == BOOT_DEVICE_EMMC) > + return 2; > + return 1; > +} > + > /* > * The VIM3 on-board MCU can mux the PCIe/USB3.0 shared differential > * lines using a FUSB340TMX USB 3.1 SuperSpeed Data Switch between >