slow eMMC write speed

Praveen G K
2011-09-23T05:05:52Z

Hello all,

I am working on the block driver module of the eMMC driver (SDIO 3.0
controller). I am seeing very low write speed for eMMC transfers. On
further debugging, I observed that every 63rd and 64th transfer takes
a long time. I have tabulated this by noting the time interval
between when CMD 25 (multi block write command) is sent and when
DATA_END interrupt is received. In normal cases, to transfer 64k (128
blocks of data), it takes about 2.5ms. But, under the really slow
transfer speed cases, it takes about 250-350ms to get the data_end
interrupt after the multiblock write command is sent. In some cases,
it takes a longer time. This radically reduces the throughput of the
transfers.

I have also enabled the bounce buffers. As a side question, can
somebody please tell me why the bounce buffer is restricted to 64kB?

Thanks in advance for any help that you can provide me on this issue.
Also, please include my email id in the cc field when replying to this
email since I am not subscribed to this mailing list.

Thanks,
Praveen Krishnan