MMC/SD
How-To connect an MMC/SD adapter/connector to your APF9328
For instructions on how to use MMC/SD on Linux, see MultiMediaCard page.
SDCard, MiniSD, and Transflash/MicroSD are all the same devices but in different package shapes and are all pin compatible.
On Armadeus boards, MMC are controlled in 1 bit MMC mode and SD/MiniSD/MicroSD in 4 bits SD mode.
We don't use MMC/SD in "fucking slow & error prone" SPI mode.
Contents
Adapter board (for DevLight 1.0 or your custom board)
We have designed a small adapter board with a push-pull MMC/SD connector on it. You need to connect the signals listed in the table below to the corresponding one on your DevLight board. The WP and CD_SW signals are optional and must be connected to free i.MXL GPIOs, if used.
Signals name (Top view with MMC connector on the right):Adapter Pin | Desc | Adapter Pin | Desc |
---|---|---|---|
1 (square) | +3.3V | 2 | SD_DAT2 |
3 | SD_CMD | 4 | SD_DAT3 |
5 | SD_CLK | 6 | SD_DAT0 |
7 | WP (option) | 8 | SD_DAT1 |
9 | CD_SW (option) | 10 | GND |
Remarks:
- Pin 1 (rectangular/square pad)
- WP: write protect
- CD_SW: Card Detect switch
If you don't want to buy such an adapter or don't have a MMC slot (and are a hacker ;-) ), you can still try this link:
On a DevFull board, there is already a MMC/SD connector
On a DevLight 2.0 board, there is already a microSD connector
Supported Cards
Here is a list of the current cards which were tested. Speeds are rounded to the nearest multiple of 5:
MMC
Model | Status | Speed in kB/sec (read/write) | Comments |
---|---|---|---|
Hama 256 Mbytes | working | 895 / 455 | Ext2 |
MMC+
Model | Status | Speed in kB/sec (read/write) | Comments |
---|---|---|---|
Kingston 256 Mbytes | working | NA |
SD:
Model | Status | Speed in kB/sec (read/write) | Comments |
---|---|---|---|
Kingston 512 Mbytes | working | 3275 / 155 | Ext2 |
Kingston 256 Mbytes | working | NA | |
Dane-Elec 2 Gbytes | KO | NA | OK in 1bit mode. doesn't work : Card recognized but partition table not found in 4bits mode |
Transcend 2 Gbytes (x150) | working | NA | |
Sandisk 512 Mbytes | working | NA | formating failure may happen sometimes. Workaround: retry |
MiniSD:
Model | Status | Speed in kB/sec (read/write) | Comments |
---|---|---|---|
Corsair 1Gbytes | working | 3330 / 365 | VFAT |
Sandisk 1Gbytes | working | 3300 / 295 | Ext2 |
Sandisk 512Mbytes | working | 2750 / 215 | VFAT |
Transcend 512Mbytes | not recognized | NA | |
Extreme Memory 512Mbytes | not recognized | NA | |
Dane-Elec 1Gbytes | doesn't work | NA | Card recognized but partition table not found |
microSD/TransFlash:
Model | Status | Speed in kB/sec (read/write) | Comments |
---|---|---|---|
Sandisk 512Mbytes | working | 3330 / 320 | VFAT |
NA |
Test method
Use test script (mmc_perf.sh) located in armadeus/target/test/mmc/. Copy it on your target and launch it:
# mmc_perf.sh speed