]> git.itanic.dy.fi Git - linux-stable/commitdiff
ASoC: soc-compress: Inherit atomicity from DAI link for Compress FE
authorDaniel Baluta <daniel.baluta@nxp.com>
Fri, 24 Mar 2023 12:40:19 +0000 (14:40 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 May 2023 09:50:26 +0000 (11:50 +0200)
commit 37b58becc1cee4d591024f2056d7ffa99c6089e0 upstream.

After commit bbf7d3b1c4f40 ("ASoC: soc-pcm: align BE 'atomicity' with
that of the FE") BE and FE atomicity must match.

In the case of Compress PCM there is a mismatch in atomicity between FE
and BE and we get errors like this:

[   36.434566]  sai1-wm8960-hifi: dpcm_be_connect: FE is atomic but BE
is nonatomic, invalid configuration
[   36.444278]  PCM Deep Buffer: ASoC: can't connect SAI1.OUT

In order to fix this we must inherit the atomicity from DAI link
associated with current PCM Compress FE.

Fixes: bbf7d3b1c4f4 ("ASoC: soc-pcm: align BE 'atomicity' with that of the FE")
Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20230324124019.30826-1-daniel.baluta@oss.nxp.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
sound/soc/soc-compress.c

index c2703a7598dd506ac105f7cf6b200e38d0590df2..256e45001f8518d7dd4ec670cf880bb4d6e4949e 100644 (file)
@@ -589,6 +589,9 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num)
                        return ret;
                }
 
+               /* inherit atomicity from DAI link */
+               be_pcm->nonatomic = rtd->dai_link->nonatomic;
+
                rtd->pcm = be_pcm;
                rtd->fe_compr = 1;
                if (rtd->dai_link->dpcm_playback)