Details
-
Bug
-
Resolution: Fixed
-
Major
-
master
-
Raspberry Pi 4
Description
Latest revision of raspberry pi 4B board (Rev 1.4, which has SoC 2711ZPKFSB06C0T on it) can't boot with "No partition table" message like following:
U-Boot 2020.10 (Jun 29 2020 - 03:06:40 +0000)
DRAM: 7.7 GiB
RPI 4 Model B (0xd03114)
MMC: mmcnr@7e300000: 1, emmc2@7e340000: 0
Loading Environment from FAT... ** No partition table - mmc 0 **
In: serial
Out: serial
Err: serial
Net: eth0: ethernet@7d580000
PCIe BRCM: link up, 5.0 Gbps x1 (SSC)
starting USB...
Bus xhci_pci: probe failed, error -110
No working controllers found
Hit any key to stop autoboot: 0
switch to partitions #0, OK
mmc0 is current device
** No partition table - mmc 0 **
[snip]
After several research, I've found similar bug report here: 255080 – U-Boot build for Raspberry Pi 4 (arm64) does not boot from MicroSD card slot (freebsd.org)
As suggested there, I've confirmed that upgrading u-boot to 2021.04 version fixes the issue (but 2021.01 doesn't). The cause would be related to the change of the DMA hardware.
2711ZPKFSB06BOT vs. 2711ZPKFSB06C0T is a major change in that there is a bunch of logic special to the B0T variant to deal with a DMA limitation of not being able to span the full address space. The C0T variant has the hardware fixed and is not limited to the lower 3 GiBytes. The RPi firmware likely configures the C)T parts differently in various ways.
I haven't took a careful look of that Linux kernel has similar issue or not, but it seems like there are no obvious problem on SD card access etc. after kernel boot.