Re: SD card timeouts on older Raspberry Pi 4 models on 14.1-BETA
Date: Tue, 07 May 2024 19:51:31 UTC
On May 7, 2024, at 11:58, Mike Karels <mike@karels.net> wrote: > On 7 May 2024, at 13:17, HP van Braam wrote: > > I'll note that my testing that Mike mentioned was without any USB devices > > being plugged into any USB port: Just Serial console, Ethernet connection, > > power supply, and the fan's power-pin connections. Nothing else connected. > > Thanks for confirming! It just *looks* like the bug I'm chasing then! > > > Only the old 4 GiByte Rev 1.1 RPi4B's failed to boot 14.1. > > I'll test this locally as well, I think I still have one kicking around. > > One thing I'd like you to check is to see if the "mmc" overlay is enabled in > config.txt. If it is can you try commenting it out? If that does work problems > are probably related after all. > > > I also tried commenting out the mmc overlay, with the same result as Mark. > Two other tests: I added 15-current and 14.0 kernels to the BETA1 image, and > booted each of them. Both worked. So the difference must be in the kernel. boot -v extractions for the 4 GiByte Rev 1.1 RPi4B: Processing 1 pin-config node(s) in pinctrl-0 for mmcnr@7e300000 . . . simplebus0: <mmc@7e202000> mem 0x7e202000-0x7e2020ff irq 17 disabled compat brcm,bcm2835-sdhost (no driver attached) . . . simplebus0: <mmc@7e300000> mem 0x7e300000-0x7e3000ff irq 24 disabled compat brcm,bcm2835-mmc (no driver attached) . . . sdhci_bcm0: <Broadcom 2708 SDHCI controller> mem 0x7e300000-0x7e3000ff irq 73 on simplebus0 sdhci_bcm0: SDHCI frequency: 250MHz sdhci_bcm0-slot0: 250MHz HS 4bits VDD: 3.3V VCCQ: 3.3V DRV: B PIO removable sdhci_bcm0-slot0: ============== REGISTER DUMP ============== sdhci_bcm0-slot0: Sys addr: 0x00000000 | Version: 0x00009902 sdhci_bcm0-slot0: Blk size: 0x00000000 | Blk cnt: 0x00000000 sdhci_bcm0-slot0: Argument: 0x00000000 | Trn mode: 0x00000000 sdhci_bcm0-slot0: Present: 0x01ff0000 | Host ctl: 0x00000000 sdhci_bcm0-slot0: Power: 0x0000000f | Blk gap: 0x00000000 sdhci_bcm0-slot0: Wake-up: 0x00000000 | Clock: 0x00003947 sdhci_bcm0-slot0: Timeout: 0x00000000 | Int stat: 0x00000000 sdhci_bcm0-slot0: Int enab: 0x027f003b | Sig enab: 0x00000000 sdhci_bcm0-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000 sdhci_bcm0-slot0: Caps: 0x00000000 | Caps2: 0x00000000 sdhci_bcm0-slot0: Max curr: 0x00000001 | ADMA err: 0x00000000 sdhci_bcm0-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000 sdhci_bcm0-slot0: =========================================== sdhci_bcm0-slot0: Card inserted mmc0: <MMC/SD bus> on sdhci_bcm0 . . . sdhci_bcm1: <Broadcom 2708 SDHCI controller> mem 0x7e340000-0x7e3400ff irq 79 on simplebus1 sdhci_bcm1: SDHCI frequency: 100MHz sdhci_bcm1-slot0: 100MHz HS 8bits VDD: 3.3V 1.8V VCCQ: 3.3V DRV: BC PIO embedded sdhci_bcm1-slot0: ============== REGISTER DUMP ============== sdhci_bcm1-slot0: Sys addr: 0xf811e600 | Version: 0x00001002 sdhci_bcm1-slot0: Blk size: 0x00007200 | Blk cnt: 0x00000000 sdhci_bcm1-slot0: Argument: 0x00000000 | Trn mode: 0x00000000 sdhci_bcm1-slot0: Present: 0x1fff0000 | Host ctl: 0x00000002 sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000080 sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x00000107 sdhci_bcm1-slot0: Timeout: 0x0000000e | Int stat: 0x00000003 sdhci_bcm1-slot0: Int enab: 0x027f003b | Sig enab: 0x00000000 sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000 sdhci_bcm1-slot0: Caps: 0x45ee6432 | Caps2: 0x0000a525 sdhci_bcm1-slot0: Max curr: 0x00080008 | ADMA err: 0x00000000 sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000 sdhci_bcm1-slot0: =========================================== sdhci_bcm1: vqmmc-supply regulator found sdhci_bcm1-slot0: Card inserted mmc1: <MMC/SD bus> on sdhci_bcm1 . . . sdhci_bcm0-slot0: Divider 313 for freq 399361 (base 250000000) mmc0: Probing bus . . . sdhci_bcm0-slot0: Divider 313 for freq 399361 (base 250000000) mmc0: Probing bus usbus0: 5.0Gbps Super Speed USB v3.0 mmc0: SD probe: failed mmc0: MMC probe: failed mmc0: Current OCR: 0x00000000 mmc0: No compatible cards found on bus sdhci_bcm1-slot0: Divider 125 for freq 400000 (base 100000000) mmc1: Probing bus ugen0.1: <(0x1106) XHCI root HUB> at usbus0 uhub0 on usbus0 uhub0: <(0x1106) XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0 mmc1: SD 2.0 interface conditions: OK mmc1: SD probe: OK (OCR: 0x40ff8000) mmc1: Current OCR: 0x00ff8000 mmc1: Probing cards mmc1: New card detected (CID 03534453453332478080fba7d2011700) mmc1: New card detected (CSD 400e00325b590000edc87f800a404000) mmc1: Card at relative address 0xe624 added: mmc1: card: SDHC SE32G 8.0 SN 80FBA7D2 MFG 07/2017 by 3 SD mmc1: quirks: 0 mmc1: bus: 4bit, 50MHz (high speed timing) mmc1: memory: 62333952 blocks, erase sector 8192 blocks mmc1: setting transfer rate to 50.000MHz (high speed timing) sdhci_bcm1-slot0: Divider 1 for freq 50000000 (base 100000000) mmcsd0: 32GB <SDHC SE32G 8.0 SN 80FBA7D2 MFG 07/2017 by 3 SD> at mmc1 50.0MHz/4bit/65535-block GEOM: new disk mmcsd0 mmc1: setting bus width to 4 bits high speed timing . . . Release APs...done TCP_ratelimit: Is now initialized regulator: shutting down unused regulators regulator: shutting down cam-dummy-reg... ok uhub0: 5 ports with 4 removable, self powered ugen0.2: <vendor 0x2109 USB2.0 Hub> at usbus0 uhub1 on uhub0 uhub1: <vendor 0x2109 USB2.0 Hub, class 9/0, rev 2.10/4.21, addr 1> on usbus0 uhub1: 4 ports with 4 removable, self powered sdhci_bcm1-slot0: Controller timeout sdhci_bcm1-slot0: ============== REGISTER DUMP ============== sdhci_bcm1-slot0: Sys addr: 0x000000c8 | Version: 0x00001002 sdhci_bcm1-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000001 sdhci_bcm1-slot0: Argument: 0x03b723ff | Trn mode: 0x00000012 sdhci_bcm1-slot0: Present: 0x1fff0a06 | Host ctl: 0x00000007 sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000080 sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x00000107 sdhci_bcm1-slot0: Timeout: 0x00000003 | Int stat: 0x00000000 sdhci_bcm1-slot0: Int enab: 0x01ff003b | Sig enab: 0x01ff0009 sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000 sdhci_bcm1-slot0: Caps: 0x45ee6432 | Caps2: 0x0000a525 sdhci_bcm1-slot0: Max curr: 0x00080008 | ADMA err: 0x00000000 sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000 sdhci_bcm1-slot0: =========================================== mmcsd0: Error indicated: 1 Timeout sdhci_bcm1-slot0: Controller timeout sdhci_bcm1-slot0: ============== REGISTER DUMP ============== sdhci_bcm1-slot0: Sys addr: 0x000000c8 | Version: 0x00001002 sdhci_bcm1-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000001 sdhci_bcm1-slot0: Argument: 0x03b723ff | Trn mode: 0x00000012 sdhci_bcm1-slot0: Present: 0x1fff0a06 | Host ctl: 0x00000007 sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000080 sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x00000107 sdhci_bcm1-slot0: Timeout: 0x00000003 | Int stat: 0x00000021 sdhci_bcm1-slot0: Int enab: 0x01ff003b | Sig enab: 0x01ff0008 sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000 sdhci_bcm1-slot0: Caps: 0x45ee6432 | Caps2: 0x0000a525 sdhci_bcm1-slot0: Max curr: 0x00080008 | ADMA err: 0x00000000 sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000 sdhci_bcm1-slot0: =========================================== mmcsd0: Error indicated: 1 Timeout sdhci_bcm1-slot0: Controller timeout sdhci_bcm1-slot0: ============== REGISTER DUMP ============== sdhci_bcm1-slot0: Sys addr: 0x000000c8 | Version: 0x00001002 sdhci_bcm1-slot0: Blk size: 0x00000200 | Blk cnt: 0x00000004 sdhci_bcm1-slot0: Argument: 0x03b723c1 | Trn mode: 0x00000036 sdhci_bcm1-slot0: Present: 0x1fff0a06 | Host ctl: 0x00000007 sdhci_bcm1-slot0: Power: 0x0000000f | Blk gap: 0x00000080 sdhci_bcm1-slot0: Wake-up: 0x00000000 | Clock: 0x00000107 sdhci_bcm1-slot0: Timeout: 0x00000003 | Int stat: 0x00000021 sdhci_bcm1-slot0: Int enab: 0x01ff003b | Sig enab: 0x01ff0008 sdhci_bcm1-slot0: AC12 err: 0x00000000 | Host ctl2:0x00000000 sdhci_bcm1-slot0: Caps: 0x45ee6432 | Caps2: 0x0000a525 sdhci_bcm1-slot0: Max curr: 0x00080008 | ADMA err: 0x00000000 sdhci_bcm1-slot0: ADMA addr:0x00000000 | Slot int: 0x00000000 sdhci_bcm1-slot0: =========================================== mmcsd0: Error indicated: 1 Timeout mmcsd0: Error indicated: 1 Timeout mmcsd0: Error indicated: 1 Timeout mmcsd0: Error indicated: 1 Timeout mmcsd0: Error indicated: 1 Timeout mountroot: waiting for device /dev/ufs/rootfs... Mounting from ufs:/dev/ufs/rootfs failed with error 19. Loader variables: vfs.root.mountfrom=ufs:/dev/ufs/rootfs vfs.root.mountfrom.options=rw Manual root filesystem specification: <fstype>:<device> [options] Mount <device> using filesystem <fstype> and with the specified (optional) option list. eg. ufs:/dev/da0s1a zfs:zroot/ROOT/default cd9660:/dev/cd0 ro (which is equivalent to: mount -t cd9660 -o ro /dev/cd0 /) ? List valid disk boot devices . Yield 1 second (for background tasks) <empty line> Abort manual input mountroot> I wonder about unintended consequence related to the notices: regulator: shutting down unused regulators regulator: shutting down cam-dummy-reg... ok Also I wonder about use of uninitialized memory that might be sensitive to very detailed build differences for what is seen for the uninitialized value(s). Not that I have any specific evidence of either. === Mark Millard marklmi at yahoo.com