HI Community,
I'm testing the uSDHC controller performance on IMX6S demo board
Kernel: 3.10.17
SD card: Transcent 16GB UHS-I 600X TF (max read/write speed 90MB/s)
SD card reader: support USB 3.0
1 Using uSDHC controller
dd if=/dev/mmcblk1 of=/dev/null bs=4096k count=100
100+0 records in
100+0 records out
419430400 bytes (400.0MB) copied, 20.196583 seconds, 19.8MB/s
The performance is very poor, even lower than 20MB/s, it is far from the speed on the reference manual - Up to 104MB/s
2 Using USB card reader
dd if=/dev/sda of=/dev/null bs=4096k count=100
100+0 records in
100+0 records out
419430400 bytes (400.0MB) copied, 15.732688 seconds, 25.4MB/s
The IMX6S only support USB2.0 host, so it cannot get the maximum speed, however, the performance is better than uSDHC controller.
Can IMX expert give explanation on this difference? How to get the best performance of uSDHC controller?
Hi edison
for UHS-I usage (speed up to 104MB/s) it is necessary to use
uSDHC I/O 1.8V voltage change as it is done on sabre ai schematic
sch-27142 p.6, U508.
Schematics (1)
i.MX6_SABRE_AI_DESIGNFILES
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
We've made the uSDHC I/O 1.8V voltage changs on our IMX6S board. Unfortunately, it gets read errors as below with 1.8V voltage, but it works with 3.3V voltage.
What' wrong with it?
U-Boot-V150 > mmc dev 1
mmc1 is current device
U-Boot-V150 > ext2ls mmc 1:1 /boot
<DIR> 1024 .
<DIR> 1024 ..
15339520 a.tar
33094 imx6solo_v150.dtb
201216 tftpd32.exe
133264 tftpd32.zip
246916 u-boot.bin
267396 u-boot.imx
268420 u-boot.imx.veex
4585360 uImage
8552448 v150.cramfs
U-Boot-V150 > ext2load mmc 1:1 $loadaddr /boot/uImage
** ext4fs_devread read error - block
Hi igorpadykov,
We've made the uSDHC I/O 1.8V voltage changs on our IMX6S board. Unfortunately, it gets read errors as below with 1.8V voltage, but it works with 3.3V voltage.
What' wrong with it?
U-Boot-V150 > mmc dev 1
mmc1 is current device
U-Boot-V150 > ext2ls mmc 1:1 /boot
<DIR> 1024 .
<DIR> 1024 ..
15339520 a.tar
33094 imx6solo_v150.dtb
201216 tftpd32.exe
133264 tftpd32.zip
246916 u-boot.bin
267396 u-boot.imx
268420 u-boot.imx.veex
4585360 uImage
8552448 v150.cramfs
U-Boot-V150 > ext2load mmc 1:1 $loadaddr /boot/uImage
** ext4fs_devread read error - block