Two data points re USB-MSD boot EEPROM firmware, both positive.
First, a thanks to those who implemented this ... and those who tested to debug it. Both my Pi-4's are in production (not critical, but not sacrificeable) so I waited 'til "stable" before trying.
Both systems I've installed on are RPI-4, 4GB, running 4.19.118-v8+ #1311 SMP PREEMPT Mon Apr 27 14:32:38 BST 2020 aarch64 GNU/Linux, up to date.
Both were updated manually per instructions in this discussion and on bootloader configuration page; set to update to "stable" configuration:
Code: Select all
# rpi-eeprom-update
BCM2711 detected
Dedicated VL805 EEPROM detected
BOOTLOADER: up-to-date
CURRENT: Mon 15 Jun 2020 01:36:19 PM UTC (1592228179)
LATEST: Mon 15 Jun 2020 01:36:19 PM UTC (1592228179)
FW DIR: /lib/firmware/raspberrypi/bootloader/stable
VL805: up-to-date
CURRENT: 000137ad
LATEST: 000137ad
First is a 4TB WD easystore drive, hybrid partitioning, USB3 interface:
Code: Select all
# hdparm -I /dev/sda1
/dev/sda1:
ATA device, with non-removable media
Model Number: WDC WD40NMZW-11GX6S1
Serial Number: WD-WX21DB757U23
Firmware Revision: 01.01A01
Transport: Serial, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
and
Code: Select all
# lsusb
Bus 002 Device 002: ID 1058:25fa Western Digital Technologies, Inc.
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
and
Code: Select all
# rpi-eeprom-config /lib/firmware/raspberrypi/bootloader/stable/new.bin
[all]
BOOT_UART=0
WAKE_ON_GPIO=1
POWER_OFF_ON_HALT=0
DHCP_TIMEOUT=45000
DHCP_REQ_TIMEOUT=4000
TFTP_FILE_TIMEOUT=30000
ENABLE_SELF_UPDATE=1
DISABLE_HDMI=0
BOOT_ORDER=0xf14
Boots and runs just fine. A little slow on booting; some error message in the initial phase I haven't caught yet, and then significant delay (10-15 sec). Once in operation, the green light flashes indicating that it's checking for a µSD being inserted into the slot; I'll kill that with the config.txt line before rebooting; that might minimize delay (and eliminate the annoying green LED flash).
dmesg shows most of the boot to be normal, but a total of 6 reports of the following:
[ 482.284443] mmc0: Timeout waiting for hardware cmd interrupt.
[ 482.284456] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[ 482.284469] mmc0: sdhci: Sys addr: 0x00000000 | Version: 0x00001002
[ 482.284478] mmc0: sdhci: Blk size: 0x00000000 | Blk cnt: 0x00000000
[ 482.284485] mmc0: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
[ 482.284492] mmc0: sdhci: Present: 0x1fff0001 | Host ctl: 0x00000001
[ 482.284499] mmc0: sdhci: Power: 0x0000000f | Blk gap: 0x00000080
[ 482.284507] mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x0000f447
[ 482.284515] mmc0: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
[ 482.284522] mmc0: sdhci: Int enab: 0x00ff1003 | Sig enab: 0x00ff1003
[ 482.284529] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
[ 482.284536] mmc0: sdhci: Caps: 0x45ee6432 | Caps_1: 0x0000a525
[ 482.284544] mmc0: sdhci: Cmd: 0x00000502 | Max curr: 0x00080008
[ 482.284550] mmc0: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x00000000
[ 482.284557] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
[ 482.284563] mmc0: sdhci: Host ctl2: 0x00000000
[ 482.284572] mmc0: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000
[ 482.284577] mmc0: sdhci: ============================================
The drive
seemed to work fine (no such error messages) when I booted from the µSD and onto the /dev/sda. It doesn't seem like an ongoing issue, but something I'll want to address if I can figure out what's causing it.
The second case is an HP 120GB SSD on a JMicron USB3 SATA adapter:
Code: Select all
# hdparm -I /dev/sda1
/dev/sda1:
ATA device, with non-removable media
Model Number: HP SSD S700 120GB
Serial Number: HBSA18500100245
Firmware Revision: R0522A1
Media Serial Num:
Media Manufacturer:
Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
and
# lsusb
Bus 002 Device 002: ID 152d:0578 JMicron Technology Corp. / JMicron USA Technology Corp. JMS567 SATA 6Gb/s bridge
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 1b4f:214f
Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
and
# rpi-eeprom-config /lib/firmware/raspberrypi/bootloader/stable/new.bin
[all]
BOOT_UART=0
WAKE_ON_GPIO=1
POWER_OFF_ON_HALT=0
DHCP_TIMEOUT=45000
DHCP_REQ_TIMEOUT=4000
TFTP_FILE_TIMEOUT=30000
ENABLE_SELF_UPDATE=1
DISABLE_HDMI=0
BOOT_ORDER=0xf14
Boots and runs just fine, but "dmesg" presents a regular stream of these every 11 seconds:
[54674.383844] mmc0: Timeout waiting for hardware cmd interrupt.
[54674.383855] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
[54674.383865] mmc0: sdhci: Sys addr: 0x00000000 | Version: 0x00001002
[54674.383872] mmc0: sdhci: Blk size: 0x00000000 | Blk cnt: 0x00000000
[54674.383879] mmc0: sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
[54674.383886] mmc0: sdhci: Present: 0x1fff0001 | Host ctl: 0x00000001
[54674.383893] mmc0: sdhci: Power: 0x0000000f | Blk gap: 0x00000080
[54674.383900] mmc0: sdhci: Wake-up: 0x00000000 | Clock: 0x0000f447
[54674.383907] mmc0: sdhci: Timeout: 0x00000000 | Int stat: 0x00000000
[54674.383914] mmc0: sdhci: Int enab: 0x00ff1003 | Sig enab: 0x00ff1003
[54674.383921] mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
[54674.383927] mmc0: sdhci: Caps: 0x45ee6432 | Caps_1: 0x0000a525
[54674.383934] mmc0: sdhci: Cmd: 0x00000502 | Max curr: 0x00080008
[54674.383941] mmc0: sdhci: Resp[0]: 0x00000000 | Resp[1]: 0x00000000
[54674.383947] mmc0: sdhci: Resp[2]: 0x00000000 | Resp[3]: 0x00000000
[54674.383953] mmc0: sdhci: Host ctl2: 0x00000000
[54674.383960] mmc0: sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000
[54674.383965] mmc0: sdhci: ============================================
So there's clearly some issue in here that needs attention. Not debilitating, but it's a concern.
If anyone has suggestions about where to look to solve the "timeout" issue above, I'd love to hear them.
Again, thanks to those who put in the effort to get this working ... much appreciated (makes updating easy now).
David