From: Hans de Goede <hdegoede@redhat.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] Generic bootcmd handling: Missing 'scsi scan'
Date: Mon, 15 Sep 2014 19:59:09 +0200 [thread overview]
Message-ID: <541728ED.503@redhat.com> (raw)
In-Reply-To: <54172053.8070309@wwwdotorg.org>
Hi,
On 09/15/2014 07:22 PM, Stephen Warren wrote:
> On 09/14/2014 12:00 PM, Hans de Goede wrote:
>> 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 ?
>
> Hmmm. 'mmc_dev' detects the media each time it's executed. However, I suppose that's appropriate because each MMC controller is connected 1:1 with a device. Such automatic scanning might not be a good idea for larger buses where scanning could take a long time. Perhaps you can copy the style of $usb_boot, and prefix a "run $scsi_init" onto the front of it in the same way?
So perhaps something like the patch below ?
Karsten, can you give this a try ?
Note I'm not sure my mail client will not mangle this when inlined like
this (normally I use git send-email for patches). So I've also attached
the patch.
Regards,
Hans
next prev parent reply other threads:[~2014-09-15 17:59 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20140914154357.GD4641@excalibur.cnev.de>
2014-09-14 18:00 ` [U-Boot] Generic bootcmd handling: Missing 'scsi scan' Hans de Goede
2014-09-15 17:22 ` Stephen Warren
2014-09-15 17:59 ` Hans de Goede [this message]
2014-09-15 18:11 ` Stephen Warren
[not found] ` <20140916060700.GA5908@excalibur.cnev.de>
2014-09-16 7:36 ` Hans de Goede
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=541728ED.503@redhat.com \
--to=hdegoede@redhat.com \
--cc=u-boot@lists.denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox