mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-16 17:23:55 +08:00
ASoC: ti: edma-pcm: Fix for legacy dma_slave_map based channel lookup
Most of the daVinci devices does not boot with DT. In this case the DMA channel is looked up with dma_slave_map and for that the chan_names[] must be configured. Both McASP and ASP/McBSP uses "tx" and "rx" as channel names, so we can just do this when the dev->of_node is not valid. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Link: https://lore.kernel.org/r/20190830103841.25128-4-peter.ujfalusi@ti.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
2231b2c63f
commit
27b7def93a
@ -39,7 +39,22 @@ static const struct snd_dmaengine_pcm_config edma_dmaengine_pcm_config = {
|
||||
|
||||
int edma_pcm_platform_register(struct device *dev)
|
||||
{
|
||||
return devm_snd_dmaengine_pcm_register(dev, &edma_dmaengine_pcm_config, 0);
|
||||
struct snd_dmaengine_pcm_config *config;
|
||||
|
||||
if (dev->of_node)
|
||||
return devm_snd_dmaengine_pcm_register(dev,
|
||||
&edma_dmaengine_pcm_config, 0);
|
||||
|
||||
config = devm_kzalloc(dev, sizeof(*config), GFP_KERNEL);
|
||||
if (!config)
|
||||
return -ENOMEM;
|
||||
|
||||
*config = edma_dmaengine_pcm_config;
|
||||
|
||||
config->chan_names[0] = "tx";
|
||||
config->chan_names[1] = "rx";
|
||||
|
||||
return devm_snd_dmaengine_pcm_register(dev, config, 0);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(edma_pcm_platform_register);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user