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