The Emcraft i.MX 8M SOM provides a 8-bit eMMC storage device on the module. Depending on the build-time configuration of the i.MX 8M SOM, the eMMC capacity ranges from 4GB to 64GB.
Refer to Booting Linux from eMMC for detailed information on how to install bootable Linux images to the eMMC and then boot the i.MX 8M SOM from the eMMC.
eMMC Read-Write Performance
To provide for the optimal system performance, the U-Boot and Linux device drivers configure the eMMC for 8-bit mode operation. Run the following Linux command to validate the eMMC bus width:
root@imx8m-som:~# cat /sys/kernel/debug/mmc0/ios
clock: 200000000 Hz
actual clock: 200000000 Hz
vdd: 21 (3.3 ~ 3.4 V)
bus mode: 2 (push-pull)
chip select: 0 (don't care)
power mode: 2 (on)
bus width: 3 (8 bits)
timing spec: 10 (mmc HS400)
signal voltage: 1 (1.80 V)
driver type: 0 (driver type B)
The following Linux commands can be used to measure raw eMMC performance:
- Measure eMMC write throughput:
root@imx8m-som:~# dd if=/dev/urandom of=/test oflag=direct
bs=1MiB count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 3.86178 s, 27.2 MB/s
Measure eMMC read throughput:
root@imx8m-som:~# echo 3 > /proc/sys/vm/drop_caches
root@imx8m-som:~# dd if=/test of=/dev/null bs=1MiB count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB, 100 MiB) copied, 0.440233 s, 238 MB/s