Difference between revisions of "MMC/SD"

From ArmadeusWiki
Jump to: navigation, search
m (Adapter board)
(On an APF9328DevLight 2.0 or an APF27Dev board, there is already a microSD connector)
 
(36 intermediate revisions by 5 users not shown)
Line 1: Line 1:
How-To connect an MMC/SD adapter to the APF9328 (through DevLight board)
+
Hardware details on How-To use MMC/SD/microSD cards on APF boards. For APF9328 DevLight you will learn how to connect an MMC/SD adapter/connector.
  
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.''' <br>
 +
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 slow & error prone SPI mode.
  
== Adapter board (for DevLight ou your custom board) ==
+
{{Note|For instructions on how to use MMC/SD on Linux, see the [[MultiMediaCard]] page. (Here you will only find hardware details)}}
 +
 
 +
== Adapter board (for APF9328DevLight 1.0 or your custom board) ==
 
We have designed a small adapter board with a push-pull MMC/SD connector on it.
 
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.
 
You need to connect the signals listed in the table below to the corresponding one on your DevLight board.
Line 32: Line 36:
 
* CD_SW: Card Detect switch
 
* 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 stil try this link:'''
+
'''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:'''
 
* http://www.hackaday.com/2006/09/12/floppy-connector-mmc-card-slot/
 
* http://www.hackaday.com/2006/09/12/floppy-connector-mmc-card-slot/
 +
 +
== On an APF9328DevFull board, there is already a MMC/SD connector ==
 +
So nothing special to do.
 +
 +
== On APF9328DevLight 2.0, APF27Dev, APF51Dev & APF28Dev boards, there is already a microSD connector ==
 +
So nothing special to do.
  
 
== Supported Cards ==
 
== Supported Cards ==
Here is a list of the current cards which were tested:<br>
+
Here is a list of the current cards which were tested. Speeds are rounded to the nearest multiple of 5:<br>
 
===MMC===
 
===MMC===
* Hama 256MB -> OK
+
{| border="1" cellpadding="5" cellspacing="0" summary="MMC"
 +
|- style="background:#efefef;"
 +
!'''Model''' || '''Status''' || '''Speed in kB/sec (read/write) on APF9328''' || '''Comments'''
 +
|----------------
 +
|'''Hama 256 Mbytes''' || style="background:#00ff00;" |working || 895 / 455  ||  Ext2
 +
|----------------
 +
|}
  
 
===MMC+===
 
===MMC+===
* Kingston 256MB -> OK
 
  
===SD:===
+
{| border="1" cellpadding="5" cellspacing="0" summary="MMC+"
* Kingston 512MB -> OK in 1bit mode. need more tests in 4 bits mode
+
|- style="background:#efefef;"
* Kingston 256MB -> OK
+
!'''Model''' || '''Status''' || '''Speed in kB/sec (read/write) on APF9328''' || '''Comments'''
* Dane-Elec 2GB -> OK in 1bit mode. doesn't work : Card recognized but partition table not found in 4bits mode
+
|----------------
* Transcend 2GB (x150) -> OK
+
|'''Kingston 256 Mbytes''' || style="background:#00ff00;" |working || NA  ||
* Sandisk 512MB -> OK ( formating failure may happen sometimes. workaround: retry )
+
|----------------
 +
|}
  
===miniSD:===
+
===SD===
* Dane-Elec 1GB -> doesn't work : Card recognized but partition table not found.
+
  
===uSD/Transflash:===
+
{| border="1" cellpadding="5" cellspacing="0" summary="MMC+"
* Sandisk 512MB -> OK in 1bit mode. recognized but data tranfer is failing when accessing partition table (bad CRC) in 4bits mode
+
|- style="background:#efefef;"
 +
!'''Model''' || '''Status''' || '''Speed in kB/sec (read/write) on APF9328''' || '''Comments'''
 +
|----------------
 +
|'''Kingston 512 Mbytes''' || style="background:#00ff00;" |working ||  3275 / 155  || Ext2
 +
|----------------
 +
|'''Kingston 256 Mbytes''' || style="background:#00ff00;" |working || NA  ||
 +
|----------------
 +
|'''Dane-Elec 2 Gbytes''' || style="background:#ff0000;" |KO || NA  || OK in 1bit mode. doesn't work : Card recognized but partition table not found in 4bits mode
 +
|----------------
 +
|'''Transcend 2 Gbytes (x150)''' || style="background:#00ff00;" |working || NA  ||
 +
|----------------
 +
|'''Sandisk 512 Mbytes''' || style="background:#00ff00;" |working || NA  || formating failure may happen sometimes. Workaround: retry
 +
|----------------
 +
|'''Panasonic 16 Mbytes''' || style="background:#00ff00;" |working || NA  || Ext2
 +
|----------------
 +
|}
  
<br>
+
===MiniSD===
 +
{| border="1" cellpadding="5" cellspacing="0" summary="MiniSDs"
 +
|- style="background:#efefef;"
 +
!'''Model''' || '''Status''' || '''Speed in kB/sec (read/write) on APF9328''' || '''Comments'''
 +
|----------------
 +
|'''Corsair 1Gbytes''' || style="background:#00ff00;" |working || 3330 / 365  ||  VFAT
 +
|----------------
 +
|'''Sandisk 1Gbytes''' || style="background:#00ff00;" |working || 3300 / 295  || Ext2
 +
|----------------
 +
|'''Sandisk 512Mbytes''' || style="background:#00ff00;" |working || 2750 / 215  || VFAT
 +
|----------------
 +
|'''Transcend 512Mbytes''' || style="background:#ff0000;" | not recognized || NA ||
 +
|----------------
 +
|'''Extreme Memory 512Mbytes''' || style="background:#ff0000;" |not recognized || NA ||
 +
|----------------
 +
|'''Dane-Elec 1Gbytes''' || style="background:#ff0000;" |doesn't work || NA || Card recognized but partition table not found
 +
|----------------
 +
|}
 +
 
 +
===microSD/TransFlash===
 +
{| border="1" cellpadding="5" cellspacing="0" summary="microSDs"
 +
|- style="background:#efefef;"
 +
! rowspan="2" | '''Model''' || rowspan="2" | '''Status''' || colspan="4" | '''Speed in kB/sec (read/write)''' || rowspan="2" | '''Comments'''
 +
|----- style="background:#efefef;"
 +
| '''APF9328''' || '''APF27''' || '''APF51''' || '''APF28'''
 +
|----------------
 +
|'''Sandisk 512 MBytes''' || style="background:#00ff00;" | working || 3330 / 320 || NT / NT || NT / NT  || NT / NT || VFAT
 +
|----------------
 +
|'''Dane-Elec 1 GBytes''' || style="background:#00ff00;" | working || 3415 / 130 || NT / NT || NT / NT  || NT / NT || VFAT
 +
|----------------
 +
|'''Sandisk 1 GBytes''' || style="background:#00ff00;" | working || 3355 / 130 || NT / NT || NT / NT || NT / NT || VFAT
 +
|----------------
 +
|'''Sandisk 2 GBytes''' || style="background:#ff0000;" | Not recognized || NA / NA || NT / NT || NT / NT || NT / NT || NA
 +
|----------------
 +
|'''Kingston 1 GBytes''' || style="background:#00ff00;" | working || 3355 / 130 || NT / NT || NT / NT || NT / NT || VFAT
 +
|----------------
 +
|'''Kingston 2 GBytes''' || style="background:#00ff00;" | working || 3355 / 130 || NT / NT || NT / NT || 13990 / 5730 || VFAT
 +
|----------------
 +
|'''EMTEC 2 GBytes''' || style="background:#00ff00;" | working || 3232 / 1548 || NT / NT || NT / NT || NT / NT || EXT2
 +
|----------------
 +
|'''Kingston 4 GBytes''' || style="background:#00ff00;" | working || 3355 / 130 || NT / NT || NT / NT || NT / NT || VFAT
 +
|----------------
 +
|'''Transcend 4 GBytes <br> SDHC Class 6''' || style="background:#00ff00;" |working || 3379 / 2668 || 7315 / 3805  || ~9600 / ~2800 || ~15900 / ~3950 || VFAT for APF9328 test <br> EXT3 for APF27, APF51 & APF28 one
 +
|----------------
 +
|}
 +
 
 +
===Test method===
 +
Use test script (''media_perf.sh'') located in ''armadeus/target/test/mmc/''. Install Armadeus TestSuite and then launch it:
 +
<pre class="apf">
 +
# cd /usr/bin/testsuite/
 +
# media_perf.sh speed
 +
</pre>
  
 
== Links ==
 
== Links ==
* http://elm-chan.org/docs/mmc/mmc_e.html
+
* [[MultiMediaCard|How to use MMC/SD/microSD on Linux]]
 +
* [http://elm-chan.org/docs/mmc/mmc_e.html How to use MMC/SD]
  
 
<br>
 
<br>
[[Image:FrenchFlag.png]] [[Fr:MMC/SD|Page en français]]
+
 
 
[[Category:Hardware]]
 
[[Category:Hardware]]
 +
[[Category:MassStorage]]

Latest revision as of 09:36, 22 July 2012

Hardware details on How-To use MMC/SD/microSD cards on APF boards. For APF9328 DevLight you will learn how to connect an MMC/SD adapter/connector.

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 slow & error prone SPI mode.

Note Note: For instructions on how to use MMC/SD on Linux, see the MultiMediaCard page. (Here you will only find hardware details)


Adapter board (for APF9328DevLight 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.

Top view, connector on the left
Signals name (Top view with MMC connector on the right):
MMC Adapt pinout.jpg
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 an APF9328DevFull board, there is already a MMC/SD connector

So nothing special to do.

On APF9328DevLight 2.0, APF27Dev, APF51Dev & APF28Dev boards, there is already a microSD connector

So nothing special to do.

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) on APF9328 Comments
Hama 256 Mbytes working 895 / 455 Ext2

MMC+

Model Status Speed in kB/sec (read/write) on APF9328 Comments
Kingston 256 Mbytes working NA

SD

Model Status Speed in kB/sec (read/write) on APF9328 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
Panasonic 16 Mbytes working NA Ext2

MiniSD

Model Status Speed in kB/sec (read/write) on APF9328 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
APF9328 APF27 APF51 APF28
Sandisk 512 MBytes working 3330 / 320 NT / NT NT / NT NT / NT VFAT
Dane-Elec 1 GBytes working 3415 / 130 NT / NT NT / NT NT / NT VFAT
Sandisk 1 GBytes working 3355 / 130 NT / NT NT / NT NT / NT VFAT
Sandisk 2 GBytes Not recognized NA / NA NT / NT NT / NT NT / NT NA
Kingston 1 GBytes working 3355 / 130 NT / NT NT / NT NT / NT VFAT
Kingston 2 GBytes working 3355 / 130 NT / NT NT / NT 13990 / 5730 VFAT
EMTEC 2 GBytes working 3232 / 1548 NT / NT NT / NT NT / NT EXT2
Kingston 4 GBytes working 3355 / 130 NT / NT NT / NT NT / NT VFAT
Transcend 4 GBytes
SDHC Class 6
working 3379 / 2668 7315 / 3805 ~9600 / ~2800 ~15900 / ~3950 VFAT for APF9328 test
EXT3 for APF27, APF51 & APF28 one

Test method

Use test script (media_perf.sh) located in armadeus/target/test/mmc/. Install Armadeus TestSuite and then launch it:

# cd /usr/bin/testsuite/
# media_perf.sh speed

Links