From: "Michał Kopeć" <michal@nozomi.space>
To: Mark Brown <broonie@kernel.org>, Liam Girdwood <lgirdwood@gmail.com>
Cc: "Jaroslav Kysela" <perex@perex.cz>,
"Takashi Iwai" <tiwai@suse.com>,
"Matthias Brugger" <matthias.bgg@gmail.com>,
"AngeloGioacchino Del Regno"
<angelogioacchino.delregno@collabora.com>,
"Alexandre Mergnat" <amergnat@baylibre.com>,
"Kuninori Morimoto" <kuninori.morimoto.gx@renesas.com>,
"Peter Ujfalusi" <peter.ujfalusi@linux.intel.com>,
"Trevor Wu" <trevor.wu@mediatek.com>,
linux-sound@vger.kernel.org, linux-mediatek@lists.infradead.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
"Michał Kopeć" <michal@nozomi.space>
Subject: [PATCH 3/4] ASoC: mediatek: mt8188: Constrain UL8 FE to its back end's capabilities
Date: Sat, 3 Oct 2026 21:45:00 +0200 [thread overview]
Message-ID: <20261003194501.832558-4-michal@nozomi.space> (raw)
In-Reply-To: <20261003194501.832558-1-michal@nozomi.space>
UL8 advertises up to 24 channels, but its only back end, ETDM1_IN,
supports at most 16, and its bit clock is limited to 24.576 MHz.
Without merged constraints, userspace can open UL8 with 48 kHz, 24
channels and 32-bit slots, which then fails in hw_params:
mtk_dai_etdm_configure bck rate 36864000 not support
ASoC error (-22): at snd_soc_dai_hw_params() on ETDM1_IN
Set dpcm_merged_chan/rate/format, as the DL front ends already do, so
the FE only offers configurations the back end can accept.
Fixes: 96035d46d4b4 ("ASoC: mediatek: mt8188: add machine driver with mt6359")
Signed-off-by: Michał Kopeć <michal@nozomi.space>
---
sound/soc/mediatek/mt8188/mt8188-mt6359.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/sound/soc/mediatek/mt8188/mt8188-mt6359.c b/sound/soc/mediatek/mt8188/mt8188-mt6359.c
index 75c90d1d165f7..f07aeb6371083 100644
--- a/sound/soc/mediatek/mt8188/mt8188-mt6359.c
+++ b/sound/soc/mediatek/mt8188/mt8188-mt6359.c
@@ -1142,6 +1142,9 @@ static struct snd_soc_dai_link mt8188_mt6359_dai_links[] = {
},
.dynamic = 1,
.capture_only = 1,
+ .dpcm_merged_chan = 1,
+ .dpcm_merged_rate = 1,
+ .dpcm_merged_format = 1,
SND_SOC_DAILINK_REG(capture8),
},
[DAI_LINK_UL9_FE] = {
--
2.55.0
next prev parent reply other threads:[~2026-10-03 19:45 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-03 19:44 [PATCH 0/4] ASoC: Fixes for the MT8188 sound card Michał Kopeć
2026-10-03 19:44 ` [PATCH 1/4] ASoC: mediatek: common: Keep codec references until the card is bound Michał Kopeć
2026-10-03 19:44 ` [PATCH 2/4] ASoC: mediatek: Don't keep a freed topology name in the static card Michał Kopeć
2026-10-08 8:20 ` Mark Brown
2026-10-03 19:45 ` Michał Kopeć [this message]
2026-10-03 19:45 ` [PATCH 4/4] ASoC: hdmi-codec: Don't parse an empty ELD on startup Michał Kopeć
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261003194501.832558-4-michal@nozomi.space \
--to=michal@nozomi.space \
--cc=amergnat@baylibre.com \
--cc=angelogioacchino.delregno@collabora.com \
--cc=broonie@kernel.org \
--cc=kuninori.morimoto.gx@renesas.com \
--cc=lgirdwood@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mediatek@lists.infradead.org \
--cc=linux-sound@vger.kernel.org \
--cc=matthias.bgg@gmail.com \
--cc=perex@perex.cz \
--cc=peter.ujfalusi@linux.intel.com \
--cc=tiwai@suse.com \
--cc=trevor.wu@mediatek.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox