sound-soc: move to dma_transfer_direction
fixup usage of dma direction by introducing dma_transfer_direction, this patch moves asoc drivers to use new enum Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com> Cc: Liam Girdwood <lrg@ti.com> Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
a485df4b44
commit
35e16581ed
|
@ -133,7 +133,7 @@ static int atmel_abdac_prepare_dma(struct atmel_abdac *dac,
|
||||||
period_len = frames_to_bytes(runtime, runtime->period_size);
|
period_len = frames_to_bytes(runtime, runtime->period_size);
|
||||||
|
|
||||||
cdesc = dw_dma_cyclic_prep(chan, runtime->dma_addr, buffer_len,
|
cdesc = dw_dma_cyclic_prep(chan, runtime->dma_addr, buffer_len,
|
||||||
period_len, DMA_TO_DEVICE);
|
period_len, DMA_MEM_TO_DEV);
|
||||||
if (IS_ERR(cdesc)) {
|
if (IS_ERR(cdesc)) {
|
||||||
dev_dbg(&dac->pdev->dev, "could not prepare cyclic DMA\n");
|
dev_dbg(&dac->pdev->dev, "could not prepare cyclic DMA\n");
|
||||||
return PTR_ERR(cdesc);
|
return PTR_ERR(cdesc);
|
||||||
|
|
|
@ -102,7 +102,7 @@ static void atmel_ac97c_dma_capture_period_done(void *arg)
|
||||||
|
|
||||||
static int atmel_ac97c_prepare_dma(struct atmel_ac97c *chip,
|
static int atmel_ac97c_prepare_dma(struct atmel_ac97c *chip,
|
||||||
struct snd_pcm_substream *substream,
|
struct snd_pcm_substream *substream,
|
||||||
enum dma_data_direction direction)
|
enum dma_transfer_direction direction)
|
||||||
{
|
{
|
||||||
struct dma_chan *chan;
|
struct dma_chan *chan;
|
||||||
struct dw_cyclic_desc *cdesc;
|
struct dw_cyclic_desc *cdesc;
|
||||||
|
@ -118,7 +118,7 @@ static int atmel_ac97c_prepare_dma(struct atmel_ac97c *chip,
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (direction == DMA_TO_DEVICE)
|
if (direction == DMA_MEM_TO_DEV)
|
||||||
chan = chip->dma.tx_chan;
|
chan = chip->dma.tx_chan;
|
||||||
else
|
else
|
||||||
chan = chip->dma.rx_chan;
|
chan = chip->dma.rx_chan;
|
||||||
|
@ -133,7 +133,7 @@ static int atmel_ac97c_prepare_dma(struct atmel_ac97c *chip,
|
||||||
return PTR_ERR(cdesc);
|
return PTR_ERR(cdesc);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (direction == DMA_TO_DEVICE) {
|
if (direction == DMA_MEM_TO_DEV) {
|
||||||
cdesc->period_callback = atmel_ac97c_dma_playback_period_done;
|
cdesc->period_callback = atmel_ac97c_dma_playback_period_done;
|
||||||
set_bit(DMA_TX_READY, &chip->flags);
|
set_bit(DMA_TX_READY, &chip->flags);
|
||||||
} else {
|
} else {
|
||||||
|
@ -393,7 +393,7 @@ static int atmel_ac97c_playback_prepare(struct snd_pcm_substream *substream)
|
||||||
if (cpu_is_at32ap7000()) {
|
if (cpu_is_at32ap7000()) {
|
||||||
if (!test_bit(DMA_TX_READY, &chip->flags))
|
if (!test_bit(DMA_TX_READY, &chip->flags))
|
||||||
retval = atmel_ac97c_prepare_dma(chip, substream,
|
retval = atmel_ac97c_prepare_dma(chip, substream,
|
||||||
DMA_TO_DEVICE);
|
DMA_MEM_TO_DEV);
|
||||||
} else {
|
} else {
|
||||||
/* Initialize and start the PDC */
|
/* Initialize and start the PDC */
|
||||||
writel(runtime->dma_addr, chip->regs + ATMEL_PDC_TPR);
|
writel(runtime->dma_addr, chip->regs + ATMEL_PDC_TPR);
|
||||||
|
@ -484,7 +484,7 @@ static int atmel_ac97c_capture_prepare(struct snd_pcm_substream *substream)
|
||||||
if (cpu_is_at32ap7000()) {
|
if (cpu_is_at32ap7000()) {
|
||||||
if (!test_bit(DMA_RX_READY, &chip->flags))
|
if (!test_bit(DMA_RX_READY, &chip->flags))
|
||||||
retval = atmel_ac97c_prepare_dma(chip, substream,
|
retval = atmel_ac97c_prepare_dma(chip, substream,
|
||||||
DMA_FROM_DEVICE);
|
DMA_DEV_TO_MEM);
|
||||||
} else {
|
} else {
|
||||||
/* Initialize and start the PDC */
|
/* Initialize and start the PDC */
|
||||||
writel(runtime->dma_addr, chip->regs + ATMEL_PDC_RPR);
|
writel(runtime->dma_addr, chip->regs + ATMEL_PDC_RPR);
|
||||||
|
|
|
@ -113,9 +113,9 @@ static int ep93xx_pcm_open(struct snd_pcm_substream *substream)
|
||||||
rtd->dma_data.name = dma_params->name;
|
rtd->dma_data.name = dma_params->name;
|
||||||
|
|
||||||
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
|
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
|
||||||
rtd->dma_data.direction = DMA_TO_DEVICE;
|
rtd->dma_data.direction = DMA_MEM_TO_DEV;
|
||||||
else
|
else
|
||||||
rtd->dma_data.direction = DMA_FROM_DEVICE;
|
rtd->dma_data.direction = DMA_DEV_TO_MEM;
|
||||||
|
|
||||||
rtd->dma_chan = dma_request_channel(mask, ep93xx_pcm_dma_filter,
|
rtd->dma_chan = dma_request_channel(mask, ep93xx_pcm_dma_filter,
|
||||||
&rtd->dma_data);
|
&rtd->dma_data);
|
||||||
|
|
|
@ -107,12 +107,12 @@ static int imx_ssi_dma_alloc(struct snd_pcm_substream *substream,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
|
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
|
||||||
slave_config.direction = DMA_TO_DEVICE;
|
slave_config.direction = DMA_MEM_TO_DEV;
|
||||||
slave_config.dst_addr = dma_params->dma_addr;
|
slave_config.dst_addr = dma_params->dma_addr;
|
||||||
slave_config.dst_addr_width = buswidth;
|
slave_config.dst_addr_width = buswidth;
|
||||||
slave_config.dst_maxburst = dma_params->burstsize;
|
slave_config.dst_maxburst = dma_params->burstsize;
|
||||||
} else {
|
} else {
|
||||||
slave_config.direction = DMA_FROM_DEVICE;
|
slave_config.direction = DMA_DEV_TO_MEM;
|
||||||
slave_config.src_addr = dma_params->dma_addr;
|
slave_config.src_addr = dma_params->dma_addr;
|
||||||
slave_config.src_addr_width = buswidth;
|
slave_config.src_addr_width = buswidth;
|
||||||
slave_config.src_maxburst = dma_params->burstsize;
|
slave_config.src_maxburst = dma_params->burstsize;
|
||||||
|
@ -159,7 +159,7 @@ static int snd_imx_pcm_hw_params(struct snd_pcm_substream *substream,
|
||||||
iprtd->period_bytes * iprtd->periods,
|
iprtd->period_bytes * iprtd->periods,
|
||||||
iprtd->period_bytes,
|
iprtd->period_bytes,
|
||||||
substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
|
substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
|
||||||
DMA_TO_DEVICE : DMA_FROM_DEVICE);
|
DMA_MEM_TO_DEV : DMA_DEV_TO_MEM);
|
||||||
if (!iprtd->desc) {
|
if (!iprtd->desc) {
|
||||||
dev_err(&chan->dev->device, "cannot prepare slave dma\n");
|
dev_err(&chan->dev->device, "cannot prepare slave dma\n");
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
|
|
|
@ -85,7 +85,7 @@ static void dma_enqueue(struct snd_pcm_substream *substream)
|
||||||
dma_info.cap = (samsung_dma_has_circular() ? DMA_CYCLIC : DMA_SLAVE);
|
dma_info.cap = (samsung_dma_has_circular() ? DMA_CYCLIC : DMA_SLAVE);
|
||||||
dma_info.direction =
|
dma_info.direction =
|
||||||
(substream->stream == SNDRV_PCM_STREAM_PLAYBACK
|
(substream->stream == SNDRV_PCM_STREAM_PLAYBACK
|
||||||
? DMA_TO_DEVICE : DMA_FROM_DEVICE);
|
? DMA_MEM_TO_DEV : DMA_DEV_TO_MEM);
|
||||||
dma_info.fp = audio_buffdone;
|
dma_info.fp = audio_buffdone;
|
||||||
dma_info.fp_param = substream;
|
dma_info.fp_param = substream;
|
||||||
dma_info.period = prtd->dma_period;
|
dma_info.period = prtd->dma_period;
|
||||||
|
@ -170,7 +170,7 @@ static int dma_hw_params(struct snd_pcm_substream *substream,
|
||||||
dma_info.client = prtd->params->client;
|
dma_info.client = prtd->params->client;
|
||||||
dma_info.direction =
|
dma_info.direction =
|
||||||
(substream->stream == SNDRV_PCM_STREAM_PLAYBACK
|
(substream->stream == SNDRV_PCM_STREAM_PLAYBACK
|
||||||
? DMA_TO_DEVICE : DMA_FROM_DEVICE);
|
? DMA_MEM_TO_DEV : DMA_DEV_TO_MEM);
|
||||||
dma_info.width = prtd->params->dma_size;
|
dma_info.width = prtd->params->dma_size;
|
||||||
dma_info.fifo = prtd->params->dma_addr;
|
dma_info.fifo = prtd->params->dma_addr;
|
||||||
prtd->params->ch = prtd->params->ops->request(
|
prtd->params->ch = prtd->params->ops->request(
|
||||||
|
|
|
@ -131,7 +131,7 @@ static int siu_pcm_wr_set(struct siu_port *port_info,
|
||||||
sg_dma_address(&sg) = buff;
|
sg_dma_address(&sg) = buff;
|
||||||
|
|
||||||
desc = siu_stream->chan->device->device_prep_slave_sg(siu_stream->chan,
|
desc = siu_stream->chan->device->device_prep_slave_sg(siu_stream->chan,
|
||||||
&sg, 1, DMA_TO_DEVICE, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
|
&sg, 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
|
||||||
if (!desc) {
|
if (!desc) {
|
||||||
dev_err(dev, "Failed to allocate a dma descriptor\n");
|
dev_err(dev, "Failed to allocate a dma descriptor\n");
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
@ -181,7 +181,7 @@ static int siu_pcm_rd_set(struct siu_port *port_info,
|
||||||
sg_dma_address(&sg) = buff;
|
sg_dma_address(&sg) = buff;
|
||||||
|
|
||||||
desc = siu_stream->chan->device->device_prep_slave_sg(siu_stream->chan,
|
desc = siu_stream->chan->device->device_prep_slave_sg(siu_stream->chan,
|
||||||
&sg, 1, DMA_FROM_DEVICE, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
|
&sg, 1, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
|
||||||
if (!desc) {
|
if (!desc) {
|
||||||
dev_err(dev, "Failed to allocate dma descriptor\n");
|
dev_err(dev, "Failed to allocate dma descriptor\n");
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
|
@ -134,7 +134,7 @@ txx9aclc_dma_submit(struct txx9aclc_dmadata *dmadata, dma_addr_t buf_dma_addr)
|
||||||
sg_dma_address(&sg) = buf_dma_addr;
|
sg_dma_address(&sg) = buf_dma_addr;
|
||||||
desc = chan->device->device_prep_slave_sg(chan, &sg, 1,
|
desc = chan->device->device_prep_slave_sg(chan, &sg, 1,
|
||||||
dmadata->substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
|
dmadata->substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
|
||||||
DMA_TO_DEVICE : DMA_FROM_DEVICE,
|
DMA_MEM_TO_DEV : DMA_DEV_TO_MEM,
|
||||||
DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
|
DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
|
||||||
if (!desc) {
|
if (!desc) {
|
||||||
dev_err(&chan->dev->device, "cannot prepare slave dma\n");
|
dev_err(&chan->dev->device, "cannot prepare slave dma\n");
|
||||||
|
|
Loading…
Reference in New Issue