From: Kuninori Morimoto <kuninori.morimoto...@renesas.com>

Some controllers need DMA special register/setting.
This patch adds new .enable_dma callback for it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto...@renesas.com>
---
 drivers/mmc/host/tmio_mmc.h     |    2 ++
 drivers/mmc/host/tmio_mmc_dma.c |    3 +++
 2 files changed, 5 insertions(+)

diff --git a/drivers/mmc/host/tmio_mmc.h b/drivers/mmc/host/tmio_mmc.h
index c9a8469..0699edb 100644
--- a/drivers/mmc/host/tmio_mmc.h
+++ b/drivers/mmc/host/tmio_mmc.h
@@ -39,6 +39,7 @@
 #define TMIO_MASK_IRQ     (TMIO_MASK_READOP | TMIO_MASK_WRITEOP | 
TMIO_MASK_CMD)
 
 struct tmio_mmc_data;
+struct tmio_mmc_host;
 
 struct tmio_mmc_dma {
        void *chan_priv_tx;
@@ -46,6 +47,7 @@ struct tmio_mmc_dma {
        int slave_id_tx;
        int slave_id_rx;
        bool (*filter)(struct dma_chan *chan, void *arg);
+       void (*enable)(struct tmio_mmc_host *host, bool enable);
 };
 
 struct tmio_mmc_host {
diff --git a/drivers/mmc/host/tmio_mmc_dma.c b/drivers/mmc/host/tmio_mmc_dma.c
index 634b2700c..eb6b45c 100644
--- a/drivers/mmc/host/tmio_mmc_dma.c
+++ b/drivers/mmc/host/tmio_mmc_dma.c
@@ -30,6 +30,9 @@ void tmio_mmc_enable_dma(struct tmio_mmc_host *host, bool 
enable)
 
        if (host->pdata->flags & TMIO_MMC_HAVE_CTL_DMA_REG)
                sd_ctrl_write16(host, CTL_DMA_ENABLE, enable ? 2 : 0);
+
+       if (host->dma->enable)
+               host->dma->enable(host, enable);
 }
 
 void tmio_mmc_abort_dma(struct tmio_mmc_host *host)
-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to