• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: Why can't I boot from USB?  (Read 3213 times)
eric.frederich
Newbie
*

Karma: 0
Posts: 9


View Profile
« on: July 23, 2009, 05:12:48 PM »

I'm trying to follow this guide... http://www.openplug.org/plugwiki/index.php/U-Boot_Quick_Reference
... and also this guide... http://dev.gentoo.org/~armin76/arm/sheevaplug/install.xml

This is what I get...

Code:
Hit any key to stop autoboot:  0
Marvell>> usb start
(Re)start USB...
USB:   scanning bus for devices... 2 USB Device(s) found
       scanning bus for storage devices... Device NOT ready
   Request Sense returned 05 24 00
1 Storage Device(s) found
Marvell>> ext2load usb 0:1 0x8000000 /boot/sheevaplug.initramfs
** Bad partition 1 **
The USB stick works when I boot into the included Ubuntu.  I just run mount /dev/sda1 /tmp/blah and I can see /tmp/blah/boot/sheevaplug.initramfs

Whats the deal?

Someone said that the included u-boot doesn't work with loading from USB?  Why is the ext2load command included then?
I have version ... "U-Boot 1.1.4 (Mar 19 2009 - 16:06:59) Marvell version: 3.4.16"

Help please.

Booting from USB should be something easy and supported.

Code:
Marvell>> usb tree

Device Tree:
  1  Hub (480MBit/s, 0mA)
  |  Marvell EHCI
  |
  +-2  Mass Storage (480MBit/s, 100mA)
       SMI Corporation USB DISK AA04012700013373
   
Code:
Marvell>> usb info
1: Hub,  USB Revision 2.0
 - Marvell EHCI
 - Class: Hub
 - PacketSize: 64  Configurations: 1
 - Vendor: 0x0000  Product 0x0000 Version 1.0
   Configuration: 1
   - Interfaces: 1 Self Powered 0mA
     Interface: 0
     - Alternate Settings 0, Endpoints: 1
     - Class Hub
     - Endpoint 1 In Interrupt MaxPacket 8 Interval 255ms

2: Mass Storage,  USB Revision 2.0
 - SMI Corporation USB DISK AA04012700013373
 - Class: (from Interface) Mass Storage
 - PacketSize: 64  Configurations: 1
 - Vendor: 0x090c  Product 0x1000 Version 0.13
   Configuration: 1
   - Interfaces: 1 Bus Powered 100mA
     Interface: 0
     - Alternate Settings 0, Endpoints: 2
     - Class Mass Storage, Transp. SCSI, Bulk only
     - Endpoint 1 In Bulk MaxPacket 512
     - Endpoint 2 Out Bulk MaxPacket 512

Logged

rooster
Guest
« Reply #1 on: July 24, 2009, 12:14:25 AM »

Hi,

Have you tried another DOK?
Can you send the exact manufacturer/model numbers?
It looks like uboot does not recognizes your DOK.
Logged

eric.frederich
Newbie
*

Karma: 0
Posts: 9


View Profile
« Reply #2 on: July 24, 2009, 05:43:36 AM »

Hi,

Have you tried another DOK?
Can you send the exact manufacturer/model numbers?
It looks like uboot does not recognizes your DOK.


I'm guessing that by DOK you mean my USB drive.
I am using a 4GB Super Talent Pico_C http://www.newegg.com/Product/Product.aspx?Item=N82E16820609295
I guess I can try another drive when I get home from work.
Again, Ubuntu recognized it, just not U-Boot.
Logged

eric.frederich
Newbie
*

Karma: 0
Posts: 9


View Profile
« Reply #3 on: July 26, 2009, 11:19:43 AM »

Okay, using a new USB stick.
I can use ext2ls now but I am still getting errors...
Where can I get the latest u-boot?  Do I have the latest?

Code:
Marvell>> ext2ls usb 0:1
<DIR>       4096 .
<DIR>       4096 ..
<DIR>      16384 lost+found
         3869250 sheevaplug.initramfs
         2500420 uImage_kwplug
Marvell>> ext2load usb 0:1 0x8000000 sheevaplug.initramfs

** Unable to read "sheevaplug.initramfs" from usb 0:1 **
Marvell>> ext2load usb 0:1 0x8000000 /sheevaplug.initramfs
....
........................................
 ** ext2fs_devread() read error - block

** Unable to read "/sheevaplug.initramfs" from usb 0:1 **
Logged

rooster
Guest
« Reply #4 on: July 27, 2009, 01:51:13 AM »

Hi Eric,

The uboot version you use is the the one that is shipped, this is the only version out there (for the time).

How did you format the USB (any special mkfs.ext2 options)?
Have you tried for the sake of it to format the USB to FAT16?
Logged

eric.frederich
Newbie
*

Karma: 0
Posts: 9


View Profile
« Reply #5 on: July 27, 2009, 12:11:23 PM »

Hi Eric,

The uboot version you use is the the one that is shipped, this is the only version out there (for the time).

How did you format the USB (any special mkfs.ext2 options)?
Have you tried for the sake of it to format the USB to FAT16?

When doing ext2 and ext3 I just ran mke2fs or mke2fs -j without any other options.
I did get this thing to recognize my 1TB Western Digital external hard drive which is what I planned on running it off of anyway.
I just wanted to use the USB drives to get familiar with it.
Too bad.  I'm not too impressed with the fact that two different USB drives couldn't get recognized by this.
Thought USB storage was pretty standard... both of those drives work fine when I plug them into my Television or my PS3.
Logged

tinker
Newbie
*

Karma: 2
Posts: 43


View Profile
« Reply #6 on: July 27, 2009, 09:39:06 PM »

You may have 256 bit inodes.  You want to try the -i flag for 128 bit.  That is use -i 128 when formatting and see if you can then boot.
Logged

restamp
Global Moderator
Sr. Member
*****

Karma: 4
Posts: 273


View Profile
« Reply #7 on: July 27, 2009, 10:34:41 PM »

There has been a lot of questionable information flowing around about whether Uboot can access ext2/3 filesystems with non-128-bit inodes.  Someone stated this as fact some time ago, and I picked up on it and have alluded to it myself.  Then someone else stated the default 256-bit inodes were not a problem for the latest Uboot, i.e., what ships with the latest Plug.

FWIW, although I cannot say whether there is a bug in Uboot that comes into play with non-128-bit inodes, I can state that I am successfully and consistently loading my uImage on my Plug from a 256-bit-inode ext2 fs, albeit from an SD card and not from a USB device, and using the Uboot that comes with the Alpha-6 load, which is not the original version.  The problems I have encountered are (1) I cannot get Uboot to access the uImage on any but the first partition of the device, and (2) for some unknown reason, Uboot seems to be unable to access a certain small percentage of files on the ext2 partition.  At least on the mmc subsystem (SD card), the ext2ls command shows inaccessible files or directories as being zero length, although in reality they are not.  The workaround:  boot or otherwise mount the partition by some other means and replicate the offending file.  The inability to access seems random and the copy will usually be accessible.

I don't have much experience with reading a uImage from a USB device, which is why I didn't respond to Eric earlier.  The problem with booting from the USB subsystem for me is that I need to have several USB devices attached to the Plug and thus I employ a USB hub.  I don't know if there are hubs that Uboot understands -- anyone: are there any? -- but it doesn't understand mine (although Ubuntu Linux does).  To boot from a USB device, I have to plug it directly into the Plug, a configuration I don't care to use under normal circumstances, though doing so for special purposes, as when running the installer, is obviously an exception.

To me, it looks like there is a read error on Eric's thumb drive.  Or perhaps there is some other error that manifests itself as such.  If I were Eric, I'd take the thumb drive to another machine and make several copies of the uImage, and then see if any of them work, or if they all fail the same way.  In any event, I'd be interested in hearing what Eric tries and how it works out.

I don't suppose this post is very helpful to Eric, at least as far as providing him the answer he is looking for (again, which is why I didn't respond earlier), but perhaps it might provide a few useful data points regarding Ubooting from ext* file systems.
Logged

Alphix
Newbie
*

Karma: 0
Posts: 2


View Profile
« Reply #8 on: September 15, 2009, 01:01:40 AM »

I've been following Martin Michlmayr's instructions (http://www.cyrius.com/debian/kirkwood/sheevaplug/unpack.html) for installing Debian to a USB key and booting the SheevaPlug from it.

I've tried three different USB keys, all setup in exactly the same way.

The first key is a no-name 1Gb key which works but it is painfully slow.

The second key is an old (2004 or so) Iomega Micro Mini 1Gb key which works, but it's also very slow.

The third key, which I ordered specifically to use with the SheevaPlug, is an OCZ Rally2 Turbo 4Gb. It works when connected to my laptop and it leaves the other USB keys in the dust when it comes to data transfer rates. Unfortunately I get the same error messages from u-boot as the original poster did.

Code:
Hit any key to stop autoboot:  0
Marvell>> usb start
(Re)start USB...
USB:   scanning bus for devices... 2 USB Device(s) found
       scanning bus for storage devices... Device NOT ready
   Request Sense returned 05 24 00
1 Storage Device(s) found

As I said, all three keys have been setup in exactly the same way, the only difference I've found between the keys is that the OCZ key requires 300mA max current while the two lesser keys require 100mA.

Could the USB power-negotiation have something to do with it? Is the SheevaPlug able to deliver 300mA on its USB port and can u-boot deal with the power negotiation (since, if I remember correctly, anything more than 100mA over USB needs some kind of negotiation between the host and the device first)?

I'd really like to use the OCZ key, any suggestions?
Logged

Alphix
Newbie
*

Karma: 0
Posts: 2


View Profile
« Reply #9 on: September 15, 2009, 01:18:04 AM »

Or perhaps it's a problem with the u-boot usb stack after all....more googling found these threads:

http://www.mail-archive.com/u-boot@lists.denx.de/msg07010.html
http://www.nabble.com/usb-storage-class-CTL-timeout-problem-td4422022.html

Which both show similar problems on non-SheevaPlug hardware using u-boot...

Logged

Pages: [1]
Print
Jump to: