The BOOTENV_DEV_UFS macro is incomplete - it only initializes UFS
and scans SCSI devices but does not actually boot anything. This
causes the boot sequence to stop after scsi scan without loading
a kernel.
Update BOOTENV_DEV_UFS to set the devnum environment variable to
the UFS instance number, initialize the device using $devnum, and
delegate the boot process to the shared scsi_boot script. Remove
the explicit scsi scan, as it is already handled by scsi_boot.
This matches the pattern used by other boot device macros and
ensures that UFS devices can successfully boot using the distro
boot framework.
Signed-off-by: Padmarao Begari <padmarao.begari@amd.com>
Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/5447ce1d5c4a21b0b62ce76ad642296110364041.1772801284.git.michal.simek@amd.com
#define BOOT_TARGET_DEVICES_UFS(func) func(UFS, ufs, 0)
#define BOOTENV_DEV_UFS(devtypeu, devtypel, instance) \
- "bootcmd_" #devtypel "=" #devtypel " init " #instance "; scsi scan;\0"
+ "bootcmd_" #devtypel "=devnum=" #instance "; " \
+ #devtypel " init $devnum; run scsi_boot\0"
#define BOOTENV_DEV_NAME_UFS(devtypeu, devtypel, instance) \
"ufs "