Hi, Iam using a custom board based on LS1046A,
When iam booting the Card from SD card iam getting following error
error -84 whilst initialising MMC card (complete log is attached)
Here i used a Ultra SD card, in the Tiny linux terminal i checked the speed:
root@TinyLinux:~# dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB, 1000 MiB) copied, 0.846223 s, 1.2 GB/s
Then i used a different card with low speed, here i did not get any errors(attached is the complete log), then i checked the speed in tiny linux
Working SD Card
root@TinyLinux:~# dd if=/dev/zero of=/dev/mmcblk0 bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB, 1000 MiB) copied, 138.256 s, 7.6 MB/s
Now, is there a standard way to solve the problem, or is there a way to reduce the Read write Speed for SD/EMMC.
Please provide your support,
Thank you.
Hi @Ghouse
Can you please add below in your custom board dts file.
&esdhc {
mmc-hs200-1_8v;
sd-uhs-sdr104;
sd-uhs-sdr50;
sd-uhs-sdr25;
sd-uhs-sdr12;
};
Thanks
Khushbu
Hi, thanks for the reply,
I have the added the esdhc component in the dts file and recompiled the Firmware image , but the issue still exists.
HI, where is the dts file residing for Tiny Linux, i assume it is @flexbuild_lsdk2108/components/firmware/uboot/arch/arm/dts/fsl-ls1046a-rdb.dts
Plz correct me if iam wrong.
@khushburw.r.t to your previous reply, i had modified the dts at this location, and built the firmware image.
Hi @Ghouse
You can edit dts file from flexbuild_lsdk2108_github/components/linux/linux/arch/arm64/boot/dts/freescale/fsl-ls1046a-YourBoard.dts
Thanks
Khushbu
Hi @khushbur
I removed the esdhc component from the Linux Device tree, now the Linux boots up without any emmc error(attached is the linux dts),
However when i load only the firmware image in the SD card and boot the board to Tiny linux iam still getting the emmc error (attached is the Tiny Linux Boot log) (also attached is the u-boot dts).
From above it is clear that the Linux is booting correct, however the Tiny Linux is having some issue.
Please let me know as what need to be done to resolve this emmc issue in Tiny Linux.
Thank u.
Hi @Ghouse
I removed the esdhc component from the Linux Device tree, now the Linux boots up without any emmc error(attached is the linux dts),
This component was for Ultra high speed SD card, Are you able to detect your sd card with UHS after removing this?
Hi @khushbur
Are you able to detect your sd card with UHS after removing this?
Yes iam able to detect SD card.
Attached is the schematics for your reference.
Can you provide a trace length report? : I do not have the trace length report.
Thank u.
Hi @Ghouse
Please check signal SDHC_CD_B & SDHC_WP as I couldn't find the connection in the shared schematic. Also, these pins should be pulled high through 10-100 kΩ resistors to DVDD.
Also, verify the EVDD voltage level while using SD card
Yes i am able to detect SD card.
You will be able to detect uhs card but speed will be low. If that is okey for you can build tiny linux with same changes(removing &esdhc {mmc-hs200-1_8v;..)
Please refer below link to build tiny linux
Thanks
Khushbu
Hi @khushbur
Thank u for the reply.
signal SDHC_CD_B & SDHC_WP are present in the attached Schematics, please note that they are pulled up to 3.3V.
EVDD voltage level while using SD card is 3.3V.
Iam able to detect successfully SD Card and able to boot upto Linux Sucessfully for SD boot,
But the problem is with the emmc boot, when i change the boot mode to emmc, iam able to read and write to emmc in uboot, but when Tiny linux comes up iam getting error (attached is the boot log with emmc).
I removed the esdhc component in device tree and recompiled but the error still exists. Plz let me know what can be done.
I dont mind even if the speed is low with emmc.
Thank u.
Hi @Ghouse
There is issue with the power rail of eMMC
As per the datasheet data lines should be pulled up by VCCQ. But you have applied 3.3V. Please refer below image.
Thanks
Khushbu
Hi all. awaiting for the reply.
Is it something related to the Device tree in u-boot? How to change the Device tree for Tiny linux?
Please provide your comments/feedback.
Thank u.