Thread (12 messages) 12 messages, 4 authors, 2011-03-22

Re: SDHC Read Performance

From: Magnus Damm <magnus.damm@gmail.com>
Date: 2011-01-19 03:14:42
Also in: linux-mmc

Hi Simon,

On Wed, Jan 19, 2011 at 9:09 AM, Simon Horman [off-list ref] wrote:
Hi,

I am currently interested in the read performance of the SDHI driver.  I
ran the following tests on a Mackerel board using Linus's latest tree
(6845a44a), which I believe has all of the outstanding patches from Arnd
and Guennadi merged.
Nice, thanks for testing this.
I have made the following crude performance measurements using
several different cards.

dd if=/dev/mmcblk1 of=/dev/null bsQ2 count0000

SD1.1:          7.0 MB/s
SD2.0:          7.0 MB/s
SDHC Class 2:   7.1 MB/s
SDHC Class 10:  7.2 MB/s

Whereas I would expect something like:

SD1.1 card:     12 MB/s
SD2.0 card:     24 MB/s
SDHC Class 2:   24 MB/s
SDHC Class 10:  Faster?
Please have a look at the clock frequency set by the SDHI MFD driver
(hclk), together with the tmio-mmc settings in tmio_mmc_set_clock().
For the clock to be bumped up properly some capability/feature flags
may be needed:

MMC_CAP_MMC_HIGHSPEED
MMC_CAP_SD_HIGHSPEED

Not sure if they are set properly. Probably not.
Possibly relevant portions of my .config are:

CONFIG_MFD_SH_MOBILE_SDHI=y
CONFIG_TMIO_MMC_DMA=y
CONFIG_MMC_TMIO=y
These two are also relevant:

CONFIG_SH_DMAE=y
CONFIG_DMA_ENGINE=y

DMA controller platform data is also needed, not sure the state of
your board. You can check out the counters in /proc/interrupts to see
if the DMA controller is active or not.

Cheers,

/ magnus
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help