mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-25 05:04:09 +08:00
ASoC: ux500_pcm: Stop pretending that we support varying address widths
The Slave Config's addr_width attribute is populated by data_width of dma_cfg, which in turn is derived from dma_params' data_size attribute and that comes from the slot_width which is always 16 bits (2 Bytes). We're cutting out the middle man here and just setting the DMA Slave Config directly. Signed-off-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
parent
ae276e93b8
commit
609a3050b8
@ -109,20 +109,19 @@ static int ux500_pcm_prepare_slave_config(struct snd_pcm_substream *substream,
|
||||
{
|
||||
struct snd_soc_pcm_runtime *rtd = substream->private_data;
|
||||
struct ux500_msp_dma_params *dma_params;
|
||||
struct stedma40_chan_cfg *dma_cfg;
|
||||
int ret;
|
||||
|
||||
dma_params = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream);
|
||||
dma_cfg = dma_params->dma_cfg;
|
||||
|
||||
ret = snd_hwparams_to_dma_slave_config(substream, params, slave_config);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
slave_config->dst_maxburst = 4;
|
||||
slave_config->dst_addr_width = dma_cfg->dst_info.data_width;
|
||||
slave_config->src_maxburst = 4;
|
||||
slave_config->src_addr_width = dma_cfg->src_info.data_width;
|
||||
|
||||
slave_config->src_addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES;
|
||||
slave_config->dst_addr_width = DMA_SLAVE_BUSWIDTH_2_BYTES;
|
||||
|
||||
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
|
||||
slave_config->dst_addr = dma_params->tx_rx_addr;
|
||||
|
Loading…
Reference in New Issue
Block a user