]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commit
[PATCH] ARM: OMAP: DMA updates to OMAP MMC driver
authorJuha Yrjölä <juha.yrjola at nokia.com>
Fri, 1 Jul 2005 13:10:58 +0000 (06:10 -0700)
committerTony Lindgren <tony@atomide.com>
Fri, 1 Jul 2005 13:10:58 +0000 (06:10 -0700)
commit15dc0cdee7d234b4131e9e3cf4341b567aaed804
tree499ee093eff982fd523ec935b83f647c56342393
parent770e31d3ca8948318c013c34d9f12dac343574a7
[PATCH] ARM: OMAP: DMA updates to OMAP MMC driver

DMA updates to the OMAP MMC driver (Juha):

* Accept multi-segment scatterlist requests to reduce the cost
  of data transfer operations, increasing speed dramatically
* Release DMA channel lazily for a minor performance boost
* Synchronize the completion of a request to both DMA transfer
  completion and command completion to work around a problem of
  some response IRQs being lost

Also, updates from DB for handling the individual DMA segments:

* Use the correct sg_dma_*() calls;
* Return to the previous scheme of doing DMA in frames of up
  no more than one FIFO's worth of data, and
* Don't print messages in the curious "DMA IRQ with DMA still
  pending" case.

This provides about a 10% improvement in elapsed time during large DMA
transfers, 100% improvement in kernel time, and orders of magnitude
reduction in IRQ count.

Signed-off-by: Juha Yrjölä <juha.yrjola@nokia.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
drivers/mmc/omap.c