Marek Vasut (52378ba4) at 05 Mar 00:04
usb: xhci-dwc3: Fix support for dis_enblslpm_quirk
Marek Vasut (39c4a5cb) at 04 Mar 18:34
usb: xhci-dwc3: Fix support for dis_enblslpm_quirk
... and 92 more commits
I don't know if that's important, but I have the official case fan installed. It's always running at full speed. In that FreeBSD bug report they mentioned a possible power supply issue.
[It appears that the RPi4B is marginal for powering both USB3 SSDs and the other two USB devices I normally have plugged in. So I've unplugged the USB keyboard but still have the EtherNet dongle on a USB2 port.]
I ran another test, this time with 3 distinct flash sticks.
It failed to boot in the same way I reported before.
Then I repeated the test, but this time plugging one stick to USB3, and the other two sticks to the USB2 ports. It booted successfully. So this is my workaround.
So it seems there's something wrong with the USB3 ports. It cannot handle two USB 3.0 devices at the same time, regardless of their brand or model or capacity.
Just so you know, these sticks are currently loaded with OpenBSD partitions. One of them contains the OS (bootable), the second is a "keydisk" used to decrypt the root device, and the third is a removable storage I use to store automatic backups. I'm using this Raspberry Pi as a home server.
My first assumption here is that we have a problem in general in the USB stack with differentiation of identical devices being plugged in.
You'll need two identical USB sticks - same size, same brand and model. Let's assume you would boot the OS from one of them, while the other would be just a removable storage medium. Also, remove the SD card from the slot, if present. Let's go USB-only.
When you turn on the Pi with both sticks connected, it will first throw up these errors:
ERROR: failure to add disk device usb_mass_storage.lun0, r = 20
Cannot initialize UEFI sub-system, r = 20
I see the output from the serial console.
And then it will give up on USB and attempt to do a network-boot, at which point I can press Ctrl + C
until I'm dropped to the U-Boot prompt.
OK, turn it off now. We'll start it again, but this time leaving only the bootable OS disk. With only one USB device plugged in, it should boot successfully from it.
The second (not-bootable) disk does not have the bootable MBR flag - I removed it. [OpenBSD's version] of fdisk
automatically adds it. But it didn't make any difference.
I've experimented a bit with the U-Boot CLI, in an attempt to manually boot the OS. For example, when I run bootefi bootmgr
I get the error Cannot initialize UEFI sub-system
.
I will later gather and upload more detailed logs to this issue.
I believe the same problem was reported before on the FreeBSD Bugzilla tracker.
Marek Vasut (e64e2634) at 07 Dec 18:17
ARM: imx: Update DRAM timings with inline ECC on Data Modul i.MX8M ...
... and 16 more commits
Marek Vasut (493e0e25) at 01 Dec 15:02
usb: USB_XHCI_PCI depends on PCI
Marek Vasut (20bf2ee6) at 23 Nov 01:06
Revert "usb: xhci: Add more debugging"
Marek Vasut (70036d78) at 22 Nov 23:51
usb: storage: Use the correct CBW lengths
... and 678 more commits
Marek Vasut (a059439f) at 31 Oct 10:23
doc: imx: Add basic scriptable tooling to interact with calibrator ...
Marek Vasut (882ac972) at 28 Oct 11:30
doc: imx: Add basic scriptable tooling to interact with calibrator ...
... and 394 more commits
Marek Vasut (a1f85958) at 16 Oct 13:41
ARM: imx: Add support for detecting primary/secondary bmode on MX8M
... and 3 more commits
Marek Vasut (9cc05753) at 16 Oct 12:38
ARM: imx: Add support for detecting primary/secondary bmode on MX8M
... and 88 more commits
Marek Vasut (6634686c) at 16 Oct 12:08
arm64: imx8mp: Read MAC address from M24C32-D write-lockable page o...
... and 94 more commits
Marek Vasut (bc8e94c9) at 13 Oct 11:52
usb: gadget: atmel: fix transfer of queued requests
... and 308 more commits