* [PATCH] ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open()
@ 2022-11-04 13:22 Richard Fitzgerald
2022-11-11 17:15 ` Mark Brown
0 siblings, 1 reply; 2+ messages in thread
From: Richard Fitzgerald @ 2022-11-04 13:22 UTC (permalink / raw)
To: broonie
Cc: alsa-devel, patches, linux-kernel, fparent, Richard Fitzgerald,
bcousson, misael.lopez
The DAI tx_mask and rx_mask are set by snd_soc_dai_set_tdm_slot()
and used by later code that depends on the TDM settings. So
__soc_pcm_open() should not be obliterating those mask values.
The code in __soc_pcm_hw_params() uses these masks to calculate the
active channels so that only the AIF_IN/AIF_OUT widgets for the
active TDM slots are enabled. The zeroing of the masks in
__soc_pcm_open() disables this functionality so all AIF widgets
were enabled even for channels that are not assigned to a TDM slot.
Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
Fixes: 2e5894d73789 ("ASoC: pcm: Add support for DAI multicodec")
---
sound/soc/soc-pcm.c | 5 -----
1 file changed, 5 deletions(-)
diff --git a/sound/soc/soc-pcm.c b/sound/soc/soc-pcm.c
index d8e4677f3002..493f003273d0 100644
--- a/sound/soc/soc-pcm.c
+++ b/sound/soc/soc-pcm.c
@@ -822,11 +822,6 @@ static int __soc_pcm_open(struct snd_soc_pcm_runtime *rtd,
ret = snd_soc_dai_startup(dai, substream);
if (ret < 0)
goto err;
-
- if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK)
- dai->tx_mask = 0;
- else
- dai->rx_mask = 0;
}
/* Dynamic PCM DAI links compat checks use dynamic capabilities */
--
2.30.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open()
2022-11-04 13:22 [PATCH] ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open() Richard Fitzgerald
@ 2022-11-11 17:15 ` Mark Brown
0 siblings, 0 replies; 2+ messages in thread
From: Mark Brown @ 2022-11-11 17:15 UTC (permalink / raw)
To: Richard Fitzgerald
Cc: alsa-devel, patches, linux-kernel, fparent, bcousson,
misael.lopez
On Fri, 4 Nov 2022 13:22:13 +0000, Richard Fitzgerald wrote:
> The DAI tx_mask and rx_mask are set by snd_soc_dai_set_tdm_slot()
> and used by later code that depends on the TDM settings. So
> __soc_pcm_open() should not be obliterating those mask values.
>
> The code in __soc_pcm_hw_params() uses these masks to calculate the
> active channels so that only the AIF_IN/AIF_OUT widgets for the
> active TDM slots are enabled. The zeroing of the masks in
> __soc_pcm_open() disables this functionality so all AIF widgets
> were enabled even for channels that are not assigned to a TDM slot.
>
> [...]
Applied to
https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
Thanks!
[1/1] ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open()
commit: 39bd801d6908900e9ab0cdc2655150f95ddd4f1a
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent to Linus during
the next merge window (or sooner if it is a bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
Thanks,
Mark
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-11-11 17:17 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-04 13:22 [PATCH] ASoC: soc-pcm: Don't zero TDM masks in __soc_pcm_open() Richard Fitzgerald
2022-11-11 17:15 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox