U-boot on RPI3, sees disk but won't boot it
- Reply: Mark Millard : "Re: U-boot on RPI3, sees disk but won't boot it"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Mon, 19 Sep 2022 22:15:53 UTC
Dealing with a Pi3B running stable-13, current as of today.
Root device is a USB hard drive on a powered hub, no microSD.
About half the time it boots hands-off via power cycling or
shutdown -r, other times it stops in u-boot reporting:
U-Boot 2022.04 (Sep 05 2022 - 16:28:34 -0700)
DRAM: 948 MiB
RPI 3 Model B (0xa02082)
Core: 69 devices, 10 uclasses, devicetree: board
MMC: mmc@7e300000: 2
Loading Environment from FAT... In: serial
Out: vidconsole
Err: vidconsole
Net: No ethernet found.
starting USB...
Bus usb@7e980000: USB DWC2
scanning bus usb@7e980000 for devices... 6 USB Device(s) found
scanning usb for storage devices... 0 Storage Device(s) found
This looks a bit strange, since u-boot was loaded from the USB disk....
Next:
MMC Device 0 not found
no mmc device at slot 0
MMC Device 1 not found
no mmc device at slot 1
Card did not respond to voltage select! : -110
Device 0: unknown device
missing environment variable: pxeuuid
Retrieving file: pxelinux.cfg/01-b8-27-eb-ba-68-d5
Retrieving file: pxelinux.cfg/00000000
Retrieving file: pxelinux.cfg/0000000
Retrieving file: pxelinux.cfg/000000
Retrieving file: pxelinux.cfg/00000
Retrieving file: pxelinux.cfg/0000
Retrieving file: pxelinux.cfg/000
Retrieving file: pxelinux.cfg/00
Retrieving file: pxelinux.cfg/0
Retrieving file: pxelinux.cfg/default-arm-bcm283x-rpi
Retrieving file: pxelinux.cfg/default-arm-bcm283x
Retrieving file: pxelinux.cfg/default-arm
Retrieving file: pxelinux.cfg/default
Config file not found
At this point one can enumerate the USB devices:
U-Boot> usb tree
USB device tree:
1 Hub (480 Mb/s, 0mA)
| U-Boot Root Hub
|
+-2 Hub (480 Mb/s, 2mA)
|
+-3 Vendor specific (12 Mb/s, 90mA)
| FTDI FT232R USB UART AM00KE3E
|
+-4 Vendor specific (480 Mb/s, 2mA)
|
+-5 Hub (480 Mb/s, 100mA)
| GenesysLogic USB2.1 Hub
|
+-6 Mass Storage (480 Mb/s, 500mA)
U-Boot>
The obvious oddity is that clearly a mass storage device has
been found (indeed, u-boot was started from it) but u-boot
does not recognize it as the device to boot from.
So far it appears that rebooting from multi-user via shutdown -r
works about half the time. If the disk isn't recognized, an immediate
reset command usually ends the same way. Simply waiting for 15-30
minutes before rebooting _usually_ results in successful disk
discovery and boot.
Can anyone suggest simple experiments that might shed light on
what's going on? The u-boot employed was compiled from ports
and system up to date at the time. The same type of disk on a
Pi4 running -current (no powered hub needed) boots without
problems.
Thanks for reading,
bob prohaska