diff options
author | Guennadi Liakhovetski <g.liakhovetski@gmx.de> | 2010-12-22 06:02:15 -0500 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2011-01-08 23:52:29 -0500 |
commit | 93173054f2979de41b1912b19f0b57edfb35fcdc (patch) | |
tree | 14c2872048dde7e15d386f1211836c86b1b6c69f /include/linux/mfd | |
parent | e0bc6ff8b8d5c066d978d23e690d5599db4cb2b3 (diff) |
mmc: tmio_mmc: implement a bounce buffer for unaligned DMA
For example, with SDIO WLAN cards, some transfers happen with buffers at
odd addresses, whereas the SH-Mobile DMA engine requires even addresses
for SDHI. This patch extends the tmio driver with a bounce buffer, that
is used for single entry scatter-gather lists both for sending and
receiving. If we ever encounter unaligned transfers with multi-element
sg lists, this patch will have to be extended. For now it just falls
back to PIO in this and other unsupported cases.
Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Samuel Ortiz <sameo@linux.intel.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'include/linux/mfd')
-rw-r--r-- | include/linux/mfd/tmio.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/mfd/tmio.h b/include/linux/mfd/tmio.h index 085f041197dc..dbfc053b1f95 100644 --- a/include/linux/mfd/tmio.h +++ b/include/linux/mfd/tmio.h | |||
@@ -66,6 +66,7 @@ void tmio_core_mmc_clk_div(void __iomem *cnf, int shift, int state); | |||
66 | struct tmio_mmc_dma { | 66 | struct tmio_mmc_dma { |
67 | void *chan_priv_tx; | 67 | void *chan_priv_tx; |
68 | void *chan_priv_rx; | 68 | void *chan_priv_rx; |
69 | int alignment_shift; | ||
69 | }; | 70 | }; |
70 | 71 | ||
71 | /* | 72 | /* |