sound/soc/soc-compress.c | 1 + 1 file changed, 1 insertion(+)
In compress offload case we never set nonatomic flag on a new pcm. This triggers
below configuration error with DPCM on Qualcomm setup where dai_links are marked
as nonatomic.
"FE is atomic but BE is nonatomic, invalid configuration"
Fix this by Updating the pcm nonatomic flag correcly from the respective dai_link.
CC: Mohammad Rafi Shaik <quic_mohs@quicinc.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
---
sound/soc/soc-compress.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/sound/soc/soc-compress.c b/sound/soc/soc-compress.c
index 554c329ec87f..a8d70274cab8 100644
--- a/sound/soc/soc-compress.c
+++ b/sound/soc/soc-compress.c
@@ -615,6 +615,7 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num)
return ret;
}
+ be_pcm->nonatomic = rtd->dai_link->nonatomic;
rtd->pcm = be_pcm;
rtd->fe_compr = 1;
if (rtd->dai_link->dpcm_playback)
--
2.21.0
On 4/11/23 06:08, Srinivas Kandagatla wrote: > In compress offload case we never set nonatomic flag on a new pcm. This triggers > below configuration error with DPCM on Qualcomm setup where dai_links are marked > as nonatomic. > > "FE is atomic but BE is nonatomic, invalid configuration" > > Fix this by Updating the pcm nonatomic flag correcly from the respective dai_link. > > CC: Mohammad Rafi Shaik <quic_mohs@quicinc.com> > Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> > --- > sound/soc/soc-compress.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/sound/soc/soc-compress.c b/sound/soc/soc-compress.c > index 554c329ec87f..a8d70274cab8 100644 > --- a/sound/soc/soc-compress.c > +++ b/sound/soc/soc-compress.c > @@ -615,6 +615,7 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) > return ret; > } > > + be_pcm->nonatomic = rtd->dai_link->nonatomic; > rtd->pcm = be_pcm; > rtd->fe_compr = 1; > if (rtd->dai_link->dpcm_playback) isn't this fixed already? Daniel Baluta sent a patch for this, already applied by Mark: https://lore.kernel.org/alsa-devel/20230324124019.30826-1-daniel.baluta@oss.nxp.com/
On 11/04/2023 14:25, Pierre-Louis Bossart wrote: > > > On 4/11/23 06:08, Srinivas Kandagatla wrote: >> In compress offload case we never set nonatomic flag on a new pcm. This triggers >> below configuration error with DPCM on Qualcomm setup where dai_links are marked >> as nonatomic. >> >> "FE is atomic but BE is nonatomic, invalid configuration" >> >> Fix this by Updating the pcm nonatomic flag correcly from the respective dai_link. >> >> CC: Mohammad Rafi Shaik <quic_mohs@quicinc.com> >> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> >> --- >> sound/soc/soc-compress.c | 1 + >> 1 file changed, 1 insertion(+) >> >> diff --git a/sound/soc/soc-compress.c b/sound/soc/soc-compress.c >> index 554c329ec87f..a8d70274cab8 100644 >> --- a/sound/soc/soc-compress.c >> +++ b/sound/soc/soc-compress.c >> @@ -615,6 +615,7 @@ int snd_soc_new_compress(struct snd_soc_pcm_runtime *rtd, int num) >> return ret; >> } >> >> + be_pcm->nonatomic = rtd->dai_link->nonatomic; >> rtd->pcm = be_pcm; >> rtd->fe_compr = 1; >> if (rtd->dai_link->dpcm_playback) > > isn't this fixed already? Daniel Baluta sent a patch for this, already > applied by Mark: > Thanks for pointing this, Yes, It is fixed in sound-next.. my branch was a week+ old so did not spot it :-) --srini > https://lore.kernel.org/alsa-devel/20230324124019.30826-1-daniel.baluta@oss.nxp.com/
© 2016 - 2026 Red Hat, Inc.