Add SCSI scan for ENV in EXT4 or FAT
When having environment stored in EXT4 or FAT and using an AHCI or SCSI device / partition the scan would not be performed early enough and hence the device would not be recognized. This change adds the scan when the interface is "scsi" in a similar way to mmc_initialize. Signed-off-by: Rogier Stam <rogier@unrailed.org> Reviewed-by: Pali Rohár <pali@kernel.org>
This commit is contained in:
parent
ea92f95d63
commit
54ee5ae841
5
env/ext4.c
vendored
5
env/ext4.c
vendored
@ -31,6 +31,7 @@
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <ext4fs.h>
|
#include <ext4fs.h>
|
||||||
#include <mmc.h>
|
#include <mmc.h>
|
||||||
|
#include <scsi.h>
|
||||||
#include <asm/global_data.h>
|
#include <asm/global_data.h>
|
||||||
|
|
||||||
DECLARE_GLOBAL_DATA_PTR;
|
DECLARE_GLOBAL_DATA_PTR;
|
||||||
@ -146,6 +147,10 @@ static int env_ext4_load(void)
|
|||||||
if (!strcmp(ifname, "mmc"))
|
if (!strcmp(ifname, "mmc"))
|
||||||
mmc_initialize(NULL);
|
mmc_initialize(NULL);
|
||||||
#endif
|
#endif
|
||||||
|
#if defined(CONFIG_AHCI) || defined(CONFIG_SCSI)
|
||||||
|
if (!strcmp(ifname, "scsi"))
|
||||||
|
scsi_scan(true);
|
||||||
|
#endif
|
||||||
|
|
||||||
part = blk_get_device_part_str(ifname, dev_and_part,
|
part = blk_get_device_part_str(ifname, dev_and_part,
|
||||||
&dev_desc, &info, 1);
|
&dev_desc, &info, 1);
|
||||||
|
8
env/fat.c
vendored
8
env/fat.c
vendored
@ -17,6 +17,7 @@
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <fat.h>
|
#include <fat.h>
|
||||||
#include <mmc.h>
|
#include <mmc.h>
|
||||||
|
#include <scsi.h>
|
||||||
#include <asm/cache.h>
|
#include <asm/cache.h>
|
||||||
#include <asm/global_data.h>
|
#include <asm/global_data.h>
|
||||||
#include <linux/stddef.h>
|
#include <linux/stddef.h>
|
||||||
@ -128,7 +129,12 @@ static int env_fat_load(void)
|
|||||||
if (!strcmp(ifname, "mmc"))
|
if (!strcmp(ifname, "mmc"))
|
||||||
mmc_initialize(NULL);
|
mmc_initialize(NULL);
|
||||||
#endif
|
#endif
|
||||||
|
#ifndef CONFIG_SPL_BUILD
|
||||||
|
#if defined(CONFIG_AHCI) || defined(CONFIG_SCSI)
|
||||||
|
if (!strcmp(CONFIG_ENV_FAT_INTERFACE, "scsi"))
|
||||||
|
scsi_scan(true);
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
part = blk_get_device_part_str(ifname, dev_and_part,
|
part = blk_get_device_part_str(ifname, dev_and_part,
|
||||||
&dev_desc, &info, 1);
|
&dev_desc, &info, 1);
|
||||||
if (part < 0)
|
if (part < 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user