Problem
Booting the Reflash USB image sometimes fails partway through U-Boot's boot script, with repeated USB read timeouts while loading uInitrd from the USB drive:
resetting USB...
Bus usb@1c1a400: USB OHCI 1.0
Bus usb@1c1b000: USB EHCI 1.00
Bus usb@1c1b400: USB OHCI 1.0
scanning bus usb@1c1a400 for devices... 2 USB Device(s) found
scanning bus usb@1c1b000 for devices... 6 USB Device(s) found
scanning bus usb@1c1b400 for devices... 1 USB Device(s) found
scanning usb for storage devices... 1 Storage Device(s) found
Device 0: Vendor: VendorCo Rev: 2.00 Prod: ProductCode
Type: Removable Hard Disk
Capacity: 30000.0 MB = 29.2 GB (61440000 x 512)
... is now current device
Scanning usb 0:1...
Found U-Boot script /boot.scr
U-boot loaded from eMMC or secondary SD
Boot script loaded from usb
Applying kernel provided DT fixup script (sun50i-a64-fixup.scr)
EHCI timed out on TD - token=0x50008d80
EHCI timed out on TD - token=0x50008d80
EHCI timed out on TD - token=0x50008d80
** fs_devread read error - block
Failed to load '/uInitrd'
EHCI timed out on TD - token=0x80008d80
EHCI timed out on TD - token=0x80008d80
Fails specifically on this line in boot.cmd:
load ${devtype} ${devnum} ${ramdisk_addr_r} ${prefix}uInitrd
uInitrd is the largest single file U-Boot has to read off USB during boot (~100MB, since Reflash's whole OS lives in the initrd by design), making it the most exposed step to any USB read flakiness in U-Boot's fairly bare-bones EHCI driver.
Observed correlation with power source
This shows up "every now and then," rarely on some boards, more often on others. Powering the board via the 12-24V input instead of USB-C-only power seems to reduce/avoid it, though this hasn't been pinned down precisely yet.
This is a different symptom from #59 (board shutting down mid-flash on USB-C-only power) - that one is during an active flash write, this one is during the U-Boot boot stage before Reflash's own OS is even running. Both seem sensitive to power source, but are being tracked separately since the failure mode and timing are different.
Notes for investigation
- Not yet reproduced reliably enough to bisect against a specific USB drive/cable/port.
- Since
uInitrd is unusually large for U-Boot to read over EHCI, shrinking it could reduce exposure even without addressing a possible underlying power-margin cause.
Problem
Booting the Reflash USB image sometimes fails partway through U-Boot's boot script, with repeated USB read timeouts while loading
uInitrdfrom the USB drive:Fails specifically on this line in
boot.cmd:uInitrdis the largest single file U-Boot has to read off USB during boot (~100MB, since Reflash's whole OS lives in the initrd by design), making it the most exposed step to any USB read flakiness in U-Boot's fairly bare-bones EHCI driver.Observed correlation with power source
This shows up "every now and then," rarely on some boards, more often on others. Powering the board via the 12-24V input instead of USB-C-only power seems to reduce/avoid it, though this hasn't been pinned down precisely yet.
This is a different symptom from #59 (board shutting down mid-flash on USB-C-only power) - that one is during an active flash write, this one is during the U-Boot boot stage before Reflash's own OS is even running. Both seem sensitive to power source, but are being tracked separately since the failure mode and timing are different.
Notes for investigation
uInitrdis unusually large for U-Boot to read over EHCI, shrinking it could reduce exposure even without addressing a possible underlying power-margin cause.