[U-Boot] 'usb start' works very unstable

Sergei Trofimovich
2010-08-07T20:57:01Z

> > > > Heh, capacity is reported incorrectly, but it works am I'm able
> > > > to load kernel from there.
> > > The reason for this is that the multiplication 488397168 x 512 will
> > > overflow a 32 bit integer as used in "disk/part.c"; this shouldbe
> > > fixed...
> >
> > This issue is still here:
>
> Sorry for not being clear. What I meant was: this is a bug that needs
> to be fixed (patches welcome).

Oh, I've attached my solution.

> > $sudo openocd -f /usr/share/openocd/scripts/board/sheevaplug.cfg
> > Open On-Chip Debugger 0.5.0-dev-00466-g28ddefd (2010-08-06-22:54)
> > ...
> > > reset
>
> Hm... I am not sure what exactly the OpenOCD debugger does when you
> run the reset command; eventually it performs some initializations
> (defined in sheevaplug.cfg ?), and/or prevents others. The CPU may, or
> may not, be in the virgin state expected by U-Boot.
>
> Detach the debugger, and perform a real hard reset instead. Or try to
> configure the debugger not to perform any initializations (i. e. the
> equivalent of the "reset run" command on BDI2000/30000).

Sheevaplug has reset button on the box. So I've pushed it, no change.

sh-4.0# hdparm /dev/sda

/dev/sda:
HDIO_DRIVE_CMD(identify) failed: Invalid exchange
readonly = 0 (off)
readahead = 256 (on)
geometry = 30401/255/63, sectors = 488397168, start = 0
sh-4.0#
sh-4.0#

<pressed reset button>

U-Boot 2010.06-00267-gb1f95b4 (Aug 07 2010 - 15:30:45)
Marvell-Sheevaplug

SoC: Kirkwood 88F6281_A0
DRAM: 512 MiB
NAND: 512 MiB
In: serial
Out: serial
Err: serial
Net: egiga0
88E1116 Initialized on egiga0
Hit any key to stop autoboot: 0
Marvell>> usb start
(Re)start USB...
USB: Register 10011 NbrPorts 1
USB EHCI 1.00
scanning bus for devices... 2 USB Device(s) found
scanning bus for storage devices... 0 Storage Device(s) found

Kernel does not boot as well:
[ 22.867512] Waiting for root device /dev/sda3...
[ 22.973783] usb 1-1: device descriptor read/64, error -32
[ 23.203774] usb 1-1: device descriptor read/64, error -32

--

Sergei
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-disk-part.c-usb-storage-avoiding-overflow-when-outpu.patch
Type: text/x-patch
Size: 2210 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100807/1f8cbc37/attachment.bin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100807/1f8cbc37/attachment.pgp