ASoC: sti: add missing probe entry for player and reader
BugLink: https://bugs.launchpad.net/bugs/2083656
[ Upstream commit 6b99068d5ea0aa295f15f30afc98db74d056ec7b ]
This patch addresses a regression in the ASoC STI drivers that was
introduced in Linux version 6.6.y. The issue originated from a series of
patches (see https://lore.kernel.org/all/87wmy5b0wt.wl-kuninori.morimoto.gx@renesas.com/)
that unintentionally omitted necessary probe functions for the player
and reader components.
Probe function in `sound/soc/sti/sti_uniperif.c:415` is being replaced
by another probe function located at `sound/soc/sti/sti_uniperif.c:453`,
which should instead be derived from the player and reader components.
This patch correctly reinserts the missing probe entries,
restoring the intended functionality.
Fixes: 9f625f5e6c ("ASoC: sti: merge DAI call back functions into ops")
Signed-off-by: Jerome Audu <jau@free.fr>
Link: https://patch.msgid.link/20240727-sti-audio-fix-v2-1-208bde546c3f@free.fr
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Koichiro Den <koichiro.den@canonical.com>
Signed-off-by: Roxana Nicolescu <roxana.nicolescu@canonical.com>
This commit is contained in:
committed by
Mehmet Basaran
parent
97f9904512
commit
0e34b188d8
@@ -352,7 +352,7 @@ static int sti_uniperiph_resume(struct snd_soc_component *component)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int sti_uniperiph_dai_probe(struct snd_soc_dai *dai)
|
||||
int sti_uniperiph_dai_probe(struct snd_soc_dai *dai)
|
||||
{
|
||||
struct sti_uniperiph_data *priv = snd_soc_dai_get_drvdata(dai);
|
||||
struct sti_uniperiph_dai *dai_data = &priv->dai_data;
|
||||
|
||||
@@ -1380,6 +1380,7 @@ int uni_reader_init(struct platform_device *pdev,
|
||||
struct uniperif *reader);
|
||||
|
||||
/* common */
|
||||
int sti_uniperiph_dai_probe(struct snd_soc_dai *dai);
|
||||
int sti_uniperiph_dai_set_fmt(struct snd_soc_dai *dai,
|
||||
unsigned int fmt);
|
||||
|
||||
|
||||
@@ -1038,6 +1038,7 @@ static const struct snd_soc_dai_ops uni_player_dai_ops = {
|
||||
.startup = uni_player_startup,
|
||||
.shutdown = uni_player_shutdown,
|
||||
.prepare = uni_player_prepare,
|
||||
.probe = sti_uniperiph_dai_probe,
|
||||
.trigger = uni_player_trigger,
|
||||
.hw_params = sti_uniperiph_dai_hw_params,
|
||||
.set_fmt = sti_uniperiph_dai_set_fmt,
|
||||
|
||||
@@ -401,6 +401,7 @@ static const struct snd_soc_dai_ops uni_reader_dai_ops = {
|
||||
.startup = uni_reader_startup,
|
||||
.shutdown = uni_reader_shutdown,
|
||||
.prepare = uni_reader_prepare,
|
||||
.probe = sti_uniperiph_dai_probe,
|
||||
.trigger = uni_reader_trigger,
|
||||
.hw_params = sti_uniperiph_dai_hw_params,
|
||||
.set_fmt = sti_uniperiph_dai_set_fmt,
|
||||
|
||||
Reference in New Issue
Block a user