diff options
author | Arnd Bergmann <arnd@arndb.de> | 2013-03-26 16:53:57 +0200 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2013-04-15 09:51:19 +0530 |
commit | f776076b9fa82d630651c9af56359d80fce86d68 (patch) | |
tree | cb88a7aaa7840ace28833955396c84fd8cef7f9b /drivers/dma/dw_dmac_regs.h | |
parent | bd2e6b664055a115a85be81af0ceb022726c5aef (diff) | |
download | op-kernel-dev-f776076b9fa82d630651c9af56359d80fce86d68.zip op-kernel-dev-f776076b9fa82d630651c9af56359d80fce86d68.tar.gz |
dmaengine: dw_dmac: simplify master selection
The patch to add the common DMA binding added a dummy dw_dma_slave
structure into the dw_dma_chan structure in order to configure the
masters correctly. It turns out that this can be simplified if we
pick the DMA masters in the dwc_alloc_chan_resources function instead
and save them in the dw_dma_chan structure directly.
This could be simplified further once all users that today use
dw_dma_slave for configuration get converted to device tree based
setup instead.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Cc: linux-arm-kernel@lists.infradead.org
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
Diffstat (limited to 'drivers/dma/dw_dmac_regs.h')
-rw-r--r-- | drivers/dma/dw_dmac_regs.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/dma/dw_dmac_regs.h b/drivers/dma/dw_dmac_regs.h index 4d02c36..9b0e12e 100644 --- a/drivers/dma/dw_dmac_regs.h +++ b/drivers/dma/dw_dmac_regs.h @@ -212,8 +212,11 @@ struct dw_dma_chan { /* hardware configuration */ unsigned int block_size; bool nollp; + + /* custom slave configuration */ unsigned int request_line; - struct dw_dma_slave slave; + unsigned char src_master; + unsigned char dst_master; /* configuration passed via DMA_SLAVE_CONFIG */ struct dma_slave_config dma_sconfig; |