Open uugear opened 5 years ago
Sorry EMMC hasn’t been tested at all on Pi4 yet. It’s fairly low priority but it’s probably quite simple and could be a “Friday afternoon task”. If you can post details of common hardware configurations then we can order some and give it a go.
Sorry EMMC hasn’t been tested at all on Pi4 yet. It’s fairly low priority but it’s probably quite simple and could be a “Friday afternoon task”. If you can post details of common hardware configurations then we can order some and give it a go.
Thank you for the quick reply, and I am glad to know it is not difficult to solve. I will send you two pieces of this eMMC->microSD adapter for testing. Thank you.
Did you all pursue this? It would be neat to find something faster than a microSD Card.
Did you all pursue this? It would be neat to find something faster than a microSD Card.
The latest Raspbian Buster (2019-09-26) includes new firmware and can support eMMC emulated SD card on Pi4. However you will need to upgrade the bootloader beforehand. You can find beta version of bootloader here. The version I tested is "pieeprom-2019-10-16.bin".
If we can wait long enough, eventually the newly manufactured Pi4 might come with the latest bootloader. However the lead time could be very, very long.
Describe the bug We have a eMMC->micro SD adapter, which is a PCB with eMMC (16GB) chip soldered and emulate the micro SD interface, so you can insert it into Raspberry Pi and use it as a 16GB SD card, with better read/write speed. It works perfectly in Raspberry Pi Zero, Zero W, 3B and 3B+, but it doesn't work in Raspberry Pi 4B.
To reproduce The eMMC->micro SD adapter does these wirings to emulate an SD card:
Expected behaviour This eMMC emulated SD card work as well in RPi4.
Actual behaviour This eMMC emulated SD card is not recognised by RPi4.
System
cat /etc/rpi-issue
)? Raspberry Pi reference 2019-06-20 Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 150e25c4f8123a4c9c63e8dca1b4737fa6c1135c, stage4vcgencmd version
)? Jun 20 2019 16:04:31 Copyright (c) 2012 Broadcom version 407b1da8fa3d1a7108cb1d250f5064a3420d2b7d (clean) (release) (start)uname -a
)? Linux raspberrypi 4.19.50-v7l+ #895 SMP Thu Jun 20 16:03:42 BST 2019 armv7l GNU/LinuxAdditional context I used a SparkFun microSD Sniffer and a logic analyzer to observe the communication between Raspberry Pi and the emulated SD card. In order to make comparison, I tested these combinations:
I monitored the CMD and CLK lines to figure out the actual command sequence in each case. Below I list the command sequences I got:
Raspberry Pi 3B with Kingston 16GB micro SD card (boot OK)
Raspberry Pi 3B with eMMC emulated SD card (boot OK)
Raspberry Pi 4B with Kingston 16GB micro SD card (boot OK)
Raspberry Pi 4B with eMMC emulated SD card (not recognised)
By comparing the command sequences, I can see some differences between implementations in RPi3 and RPi4.
The first thing is that RPi4 repeats the ACMD41 or CMD1 command so many times, which doesn't seem normal. Although I can't tell if it causes the emulated SD card not recognised, but I guess something could be optimised here?
I also noticed that, when using the eMMC emulated SD card, RPi4 inserts a CMD0 before the CMD1, and RPi3 doesn't do that. I don't know if this behavior is relevant to this issue.
Obviously the command sequence for real micro SD card and that for eMMC emulated SD card are different (in both RPi3 and RPi4). For example the ACMD41 command is used for real SD card, while the CMD1 command is used for eMMC emulated SD card. Maybe those older models of Raspberry Pi are supporting this emulated SD card with some quirks, but it would be nice to let RPi4 has the same compatibility.