Hi Balaji,

On 26/01/2026 16:59, Balaji Selvanathan wrote:
> Remove "scsi scan" from the preboot command sequence in the default
> Qualcomm board environment. The SCSI scan command fails on eMMC-based
> boot configurations, causing unnecessary boot delays and potential
> error messages during the preboot phase.

I'm fine with this change in principle, since we already do the
scsi_scan() in qcom_configure_capsule_updates(). However currently this
only happens on Qualcomm boards if EFI_HAVE_CAPSULE_UPDATE is enabled.

Could you move the scsi_scan() call from there to board_late_init()? It
would be even better to introduce a config option for this and do it in
board_r.c similarly to mmc init (perhaps rename initr_mmc to
initr_storage), maybe something for the todo list?

> 
> This change improves boot reliability on platforms using eMMC storage
> as the primary boot device.
It isn't clear from the commit message here but do I understand
correctly that you're booting on a board that can either have eMMC or
UFS storage, and that the UFS controller is enabled in DT despite the
hardware not being present?

I would propose (in addition to the above) that you resolve this with a
runtime DT fixup, I believe SMEM (or maybe the sbl1 shared data
structure?) contain a property describing what storage device we're
booting from, so the other one can be disabled.

Kind regards,

> 
> Signed-off-by: Balaji Selvanathan <[email protected]>
> ---
>  board/qualcomm/default.env | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/board/qualcomm/default.env b/board/qualcomm/default.env
> index dbf6f4e7260..7cfa8e0ce2a 100644
> --- a/board/qualcomm/default.env
> +++ b/board/qualcomm/default.env
> @@ -1,7 +1,7 @@
>  stdin=serial,button-kbd
>  stdout=serial,vidconsole
>  stderr=serial,vidconsole
> -preboot=scsi scan; usb start
> +preboot=usb start
>  fastboot=fastboot -l $fastboot_addr_r usb 0
>  do_boot=bootefi bootmgr
>  bootmenu_0=Boot first available device=run do_boot

-- 
// Casey (she/her)

Reply via email to