[U-Boot] Generic bootcmd handling: Missing 'scsi scan'

Hans de Goede hdegoede at redhat.com
Sun Sep 14 20:00:52 CEST 2014


Hi Karsten,

Thanks for testing this!

On 09/14/2014 05:43 PM, Karsten Merker wrote:
> Hello,
> 
> I am currently testing the new bootcmd handling introduced at
> http://git.denx.de/?p=u-boot.git;a=commit;h=8cc96848f0a467922820895b6b2363b0c64163b5
> on a sunxi-based system running u-boot v2014.10-rc2.
> 
> When installing to MMC, everything works as expected; the
> boot.scr on the first MMC partition is found and executed.
> 
> When installing to a SATA disk, the following happens:
> 
> U-Boot 2014.10-rc2 (Sep 04 2014 - 07:32:33) Allwinner Technology
> 
> CPU:   Allwinner A20 (SUN7I)
> I2C:   ready
> DRAM:  2 GiB
> MMC:   SUNXI SD/MMC: 0
> In:    serial
> Out:   serial
> Err:   serial
> SCSI:  SUNXI SCSI INIT
> Target spinup took 0 ms.
> AHCI 0001.0100 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
> flags: ncq stag pm led clo only pmp pio slum part ccc apst
> Net:   dwmac.1c50000
> Hit any key to stop autoboot:  0
> switch to partitions #0, OK
> mmc0 is current device
> Scanning mmc 0...
> ** No partition table - mmc 0 **
> ** No partition table - mmc 0 **
> ** No partition table - mmc 0 **
> ** No partition table - mmc 0 **
> ** No partition table - mmc 0 **
> ** No partition table - mmc 0 **
> 
> SCSI device 0:
>     Device 0: device type unknown
> ... is now current device
> Scanning scsi 0...
> ** Bad device size - scsi 0 **
> ** Bad device size - scsi 0 **
> ** Bad device size - scsi 0 **
> ** Bad device size - scsi 0 **
> ** Bad device size - scsi 0 **
> ** Bad device size - scsi 0 **
> [...]
> 
> The last block is the output of running ${scsi_boot}:
> 
> sun7i# printenv scsi_boot
> scsi_boot=if scsi dev ${devnum}; then setenv devtype scsi; run scan_dev_for_boot; fi
> 
> What appears to be missing here, is a previous 'scsi scan' command.
> When prepending it to ${scsi_boot}, everything works as expected:
> 
> sun7i# printenv scsi_boot
> scsi_boot=scsi scan; if scsi dev 0; then setenv devtype scsi; run scan_dev_for_boot; fi
> sun7i# run scsi_boot
> scanning bus for devices...
>   Device 0: (0:0) Vendor: ATA Prod.: HGST HTS541010A9 Rev: JA0O
>             Type: Hard Disk
>             Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)
> Found 1 device(s).
> 
> SCSI device 0:
>     Device 0: (0:0) Vendor: ATA Prod.: HGST HTS541010A9 Rev: JA0O
>             Type: Hard Disk
>             Capacity: 953869.7 MB = 931.5 GB (1953525168 x 512)
> ... is now current device
> Scanning scsi 0...
> Found U-Boot script /boot.scr
> 2033 bytes read in 20 ms (98.6 KiB/s)
> ## Executing script at 43100000
> 
> Could you add a 'scsi scan' command to the generic bootcmd
> handling infrastructure?

A good question, I wonder if this is something which would be considered
SoC specific, or if all SoCs need this though?

Stephen (added to the To) what is your take on this ?

Regards,

Hans


More information about the U-Boot mailing list