]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
ASoC: rt5682: Use new SoundWire enumeration helper
authorCharles Keepax <ckeepax@opensource.cirrus.com>
Mon, 8 Jun 2026 10:27:08 +0000 (11:27 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 11 Jun 2026 19:46:50 +0000 (20:46 +0100)
Now the new wait for SoundWire enumeration helper no longer depends on
unattach_request it is safe to use from probe time. Update the driver
to use the new core helper.

Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com>
Link: https://patch.msgid.link/20260608102714.2503120-5-ckeepax@opensource.cirrus.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/rt5682.c

index d39f8e4f3474c1fe1c39f0006a0bcfb22b78fbcd..4b82e07d3b2c7ef0f99b69298afcfa530434b20a 100644 (file)
@@ -2929,20 +2929,14 @@ static int rt5682_probe(struct snd_soc_component *component)
 {
        struct rt5682_priv *rt5682 = snd_soc_component_get_drvdata(component);
        struct snd_soc_dapm_context *dapm = snd_soc_component_to_dapm(component);
-       struct sdw_slave *slave;
-       unsigned long time;
+       int ret;
 
        rt5682->component = component;
 
        if (rt5682->is_sdw) {
-               slave = rt5682->slave;
-               time = wait_for_completion_timeout(
-                       &slave->initialization_complete,
-                       msecs_to_jiffies(RT5682_PROBE_TIMEOUT));
-               if (!time) {
-                       dev_err(&slave->dev, "Initialization not complete, timed out\n");
-                       return -ETIMEDOUT;
-               }
+               ret = sdw_slave_wait_for_init(rt5682->slave, RT5682_PROBE_TIMEOUT);
+               if (ret)
+                       return ret;
        }
 
        snd_soc_dapm_disable_pin(dapm, "MICBIAS");