summaryrefslogtreecommitdiff
path: root/sound/soc/ux500
diff options
context:
space:
mode:
authorFabio Baltieri <fabio.baltieri@linaro.org>2013-06-12 07:57:58 (GMT)
committerMark Brown <broonie@linaro.org>2013-06-12 16:02:48 (GMT)
commit20413113ffdd8c56b2a985ca8195d9c91e9c602b (patch)
treefc43594d7486bb79e42042ab6a5bab8820bb4f2a /sound/soc/ux500
parentf3fe53dd975306903be3616c87865a87a52fb20e (diff)
downloadlinux-20413113ffdd8c56b2a985ca8195d9c91e9c602b.tar.xz
ASoC: ux500: Set DMA address during device init
Add a field with the tx/rx register address to the DMA parameters structure, and set it to the correct address during device initialization. This address used to be hardcoded in the DMA controller driver, it now needs to be explicitly figured out by the device driver. Signed-off-by: Fabio Baltieri <fabio.baltieri@linaro.org> Acked-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc/ux500')
-rw-r--r--sound/soc/ux500/ux500_msp_i2s.c3
-rw-r--r--sound/soc/ux500/ux500_msp_i2s.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/sound/soc/ux500/ux500_msp_i2s.c b/sound/soc/ux500/ux500_msp_i2s.c
index 14a4a5b..1ca8b08 100644
--- a/sound/soc/ux500/ux500_msp_i2s.c
+++ b/sound/soc/ux500/ux500_msp_i2s.c
@@ -685,6 +685,9 @@ int ux500_msp_i2s_init_msp(struct platform_device *pdev,
return -ENOMEM;
}
+ msp->playback_dma_data.tx_rx_addr = res->start + MSP_DR;
+ msp->capture_dma_data.tx_rx_addr = res->start + MSP_DR;
+
msp->registers = devm_ioremap(&pdev->dev, res->start,
resource_size(res));
if (msp->registers == NULL) {
diff --git a/sound/soc/ux500/ux500_msp_i2s.h b/sound/soc/ux500/ux500_msp_i2s.h
index 8796171..258d0bc 100644
--- a/sound/soc/ux500/ux500_msp_i2s.h
+++ b/sound/soc/ux500/ux500_msp_i2s.h
@@ -470,6 +470,7 @@ struct ux500_msp_config {
struct ux500_msp_dma_params {
unsigned int data_size;
+ dma_addr_t tx_rx_addr;
struct stedma40_chan_cfg *dma_cfg;
};