summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorShuming Fan <shumingf@realtek.com>2023-10-30 13:36:44 +0300
committerMark Brown <broonie@kernel.org>2023-10-30 18:42:35 +0300
commit1a3b7eab8500a6b923f7b62cc8aa4d832c7dfb3e (patch)
treead7d21173f05e7c72dc0ca179f3c62d16e95ec97 /sound
parent04f8c76de983a5c1e8913e442e791a9e8d0e0dfd (diff)
downloadlinux-1a3b7eab8500a6b923f7b62cc8aa4d832c7dfb3e.tar.xz
ASoC: rt712-sdca: fix speaker route missing issue
Sometimes the codec probe would be called earlier than the hardware initialization. Therefore, the speaker route should be added before the the first_hw_init check. Signed-off-by: Shuming Fan <shumingf@realtek.com> Fixes: f3da2ed110e2 ("ASoC: rt1712-sdca: enable pm_runtime in probe, keep status as 'suspended'")? Link: https://lore.kernel.org/r/20231030103644.1787948-1-shumingf@realtek.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/codecs/rt712-sdca.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/sound/soc/codecs/rt712-sdca.c b/sound/soc/codecs/rt712-sdca.c
index 7077ff6ba1f4..6954fbe7ec5f 100644
--- a/sound/soc/codecs/rt712-sdca.c
+++ b/sound/soc/codecs/rt712-sdca.c
@@ -963,13 +963,6 @@ static int rt712_sdca_probe(struct snd_soc_component *component)
rt712_sdca_parse_dt(rt712, &rt712->slave->dev);
rt712->component = component;
- if (!rt712->first_hw_init)
- return 0;
-
- ret = pm_runtime_resume(component->dev);
- if (ret < 0 && ret != -EACCES)
- return ret;
-
/* add SPK route */
if (rt712->hw_id != RT712_DEV_ID_713) {
snd_soc_add_component_controls(component,
@@ -980,6 +973,13 @@ static int rt712_sdca_probe(struct snd_soc_component *component)
rt712_sdca_spk_dapm_routes, ARRAY_SIZE(rt712_sdca_spk_dapm_routes));
}
+ if (!rt712->first_hw_init)
+ return 0;
+
+ ret = pm_runtime_resume(component->dev);
+ if (ret < 0 && ret != -EACCES)
+ return ret;
+
return 0;
}