mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-06 10:00:17 +00:00
ASoC: stm32: sai: fix sai probe
commite2bcb65782upstream. pcm config must be set before snd_dmaengine_pcm_register() call. Fixes:0d6defc7e0("ASoC: stm32: sai: manage rebind issue") Signed-off-by: Olivier Moysan <olivier.moysan@st.com> Link: https://lore.kernel.org/r/20200417142122.10212-1-olivier.moysan@st.com Signed-off-by: Mark Brown <broonie@kernel.org> Cc: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
3e295cf681
commit
36750800a4
@@ -1543,6 +1543,9 @@ static int stm32_sai_sub_probe(struct platform_device *pdev)
|
|||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (STM_SAI_PROTOCOL_IS_SPDIF(sai))
|
||||||
|
conf = &stm32_sai_pcm_config_spdif;
|
||||||
|
|
||||||
ret = snd_dmaengine_pcm_register(&pdev->dev, conf, 0);
|
ret = snd_dmaengine_pcm_register(&pdev->dev, conf, 0);
|
||||||
if (ret) {
|
if (ret) {
|
||||||
dev_err(&pdev->dev, "Could not register pcm dma\n");
|
dev_err(&pdev->dev, "Could not register pcm dma\n");
|
||||||
@@ -1551,15 +1554,10 @@ static int stm32_sai_sub_probe(struct platform_device *pdev)
|
|||||||
|
|
||||||
ret = snd_soc_register_component(&pdev->dev, &stm32_component,
|
ret = snd_soc_register_component(&pdev->dev, &stm32_component,
|
||||||
&sai->cpu_dai_drv, 1);
|
&sai->cpu_dai_drv, 1);
|
||||||
if (ret) {
|
if (ret)
|
||||||
snd_dmaengine_pcm_unregister(&pdev->dev);
|
snd_dmaengine_pcm_unregister(&pdev->dev);
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (STM_SAI_PROTOCOL_IS_SPDIF(sai))
|
return ret;
|
||||||
conf = &stm32_sai_pcm_config_spdif;
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int stm32_sai_sub_remove(struct platform_device *pdev)
|
static int stm32_sai_sub_remove(struct platform_device *pdev)
|
||||||
|
|||||||
Reference in New Issue
Block a user