-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Booting from an Friendly Elec eMMC module with an eMMC-SD adapter fails on Raspberry Pi B #1458
Comments
If I use a 16 GB eMMC module in a Raspberry Pi 1 B then it boots fine. But if I use a 32 GB eMMC Nano Pi eMMC module then the boot fails as described in the previous comment. I connected a Raspberry Pi SD-uSD adapter to a 512 MB Raspberry Pi 1 B with a Kingston Mobilite G2 USB 2 SD/uSD reader with a SanDisk 8 GB SD-card inserted in the Kingston card reader. If I insert a 16 GB eMMC/uSD RasPiKey module into the Raspberry Pi SD-uSD adapter then booting from the eMMC module works fine as can be seen here: Raspberry Pi Bootcode Found SD card, config.txt = 1, start.elf = 1, recovery.elf = 0, timeout = 0 Raspberry Pi Bootcode Raspbian GNU/Linux 10 raspberrypi ttyAMA0 raspberrypi login: If I I only change the eMMC module on this system to a 32 GB Nano Pi eMMC module, then booting from the eMMC module fails and bootcode.bin does instead an USB boot from the Kingston card reader which has the SD-card inserted. From the Linux boot log it can be seen that the Nano Pi eMMC module is detected normally, so this is not a problem with the Raspberry Pi SD-uSD card adapter, but rather with bootcode.bin being unable to read the files from the Nano Pi eMMC module. But the Nano Pi eMMC modules I have can be booted on the Raspberry Pi 4 B, 3 B and 2 B models. Here is the log where the eMMC boot from a Nano Pi module fails: Raspberry Pi Bootcode No SD card found, try USB Raspberry Pi Bootcode Raspbian GNU/Linux 10 rpicam ttyAMA0 rpicam login: pi |
I have a few Friendly Elec 32 GB eMMC modules that will not boot on the Raspberry Pi B versions with 256 MB and 512 MB RAM. Being able to use these eMMC modules on the older Raspberry Pi B versions would be useful to have faster random I/O compared to a standard SD-card.The problem seems to be a timing issue in bootcode.bin as shown above where the eMMC module can be accessed without problem from the Linux kernel when only the bootcode.bin has been provided from a USB-device. If needed I could send one of the problematic eMMC modules for testing. I borrowed from an Odroid-N2 an 128 GB eMMC module and tested it as well in the Raspberry Pi:s that I have. That eMMC module did boot also on the Raspberry Pi B versions with 256 MB and 512 MB RAM. Could you comment on this Friendly Elec eMMC boot problem @timg236 ? |
For Pi4 boot issues please can you raise an rpi-eeprom but with the log from BOOT_UART=1 to see whether the EMMC is detected at all by the Raspberry Pi. Can Linux mount it if you boot from USB? |
The issue here is specific to the Raspberry Pi 1 A, 256 MB, Raspberry Pi 1 B rev. 2, 512 MB, Raspberry Pi 1 B rev. 2, 256 MB, Raspberry Pi 1 B rev. 1, 256 MB and is only seen with the 32 GB Friendly Elec eMMC module with a corresponging uSD-adaptor in that these modules will not boot on these older Raspberry Pi models. I have tried most of the available bootcode.bin versions, but I have not found a version that works. Shown above is the logs where I put bootcode.bin on a USB-reader and was able to access the 32 GB Frienddly Elec eMMC module from Linux on a Raspberry Pi 1 B. The Friendly Elec 32 GB eMMC modules boots as expected on the more recent models that I have: Raspberry Pi 4 B, Raspberry Pi 3 B and Raspberry Pi 2 B. I also have a 16 GB RasPiKey UUGear eMMC module and it boots fine on all Raspberry Pi models listed previously. A 128 GB Odroid eMMC module with corresponding uSD-adaptor also boots on all the Raspberry Pi models listed above. I don't have access to Raspberry Pi Zero models, so I don't know if they would boot with the 32 GB Friendly Elec eMMC module. |
I forgot to mention that I have tried also creating the file "timeout" in the /boot folder, but this has not solved the problem. |
The eMMC chip on the RasPiKey 16 GB eMMC module is a Samsung KLMAG1JETD-B041 and on the Friendly Elec eMMC the 32 GB chip is a Samsung KLMBG2JETD-B041, so they are very similar. |
When a Raspberry Pi boots succesfully from the (u)SD-reader the activity LED will flash in an irregular fasion with a normal intensity. The activity LED only gives a very faint light when the boot hangs with a Friendly Elect 32 GB eMMC module. It could be that the LED is flashing with such a high frequence that it gives the appearance of a constant very faint light. |
Is there any bootcode.bin version that could output more debugging information about the detection of the SD/eMMC-storage? |
Modifying BOOT_UART=1 in bootcode.bin will show all available debug |
OK, I have tried to understand the problem with that option already but so far unsuccesfully as you can see above. Do you have suggestions for how to debug this further? |
A Raspberry Pi 3 B and 4 B can succesfully boot from an eMMC module with an eMMC-SD adapter. A succeful boot on a Raspberry Pi 3 B gives this output from bootcode.bin over a serial console:
"Raspberry Pi Bootcode
Found SD card, config.txt = 1, start.elf = 1, recovery.elf = 0, timeout = 0
Read File: config.txt, 1845 (bytes)
Raspberry Pi Bootcode
Read File: config.txt, 1845
Read File: start.elf, 2883204 (bytes)
Read File: fixup.dat, 6745 (bytes)
MESS:00:00:07.312064:0: brfs: File read: /mfs/sd/config.txt
MESS:00:00:07.316989:0: brfs: File read: 1845 bytes
..."
On a Raspberry Pi B the boot process fails and the messages shown by bootcode.bin are as follows:
"Raspberry Pi Bootcode
No SD card found, try USB
Trying USB
..."
If one boots without any card inserted then no messages are obviously given. Clearly the bootcode.bin file is found on the eMMC module, because otherwise the error messages could not be given.
To reproduce
Put bootcode.bin on an eMMC module on an eMMC-SD adapter and try to boot.
Expected behaviour
Also the older Raspberry Pi models would boot like the Raspberry Pi 3 B,
Actual behaviour
The boot process fails as the eMMC module is not recognized by bootcode.bin.
System
Raspberry Pi B both with 256 MB and 512 MB of RAM and Raspberry Pi A
The text was updated successfully, but these errors were encountered: