summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCharles Keepax <ckeepax@opensource.cirrus.com>2026-06-08 13:27:06 +0300
committerMark Brown <broonie@kernel.org>2026-06-11 22:46:49 +0300
commitf0eb67c618ee2e19a406edd24dc776eb86831870 (patch)
tree92e73394e4b6c4dd11ed2d158ee00c71359eb79a
parent5677a551f45820ddd69f11559394bb79669271ca (diff)
downloadlinux-f0eb67c618ee2e19a406edd24dc776eb86831870.tar.xz
ASoC: wsa881x: Use new SoundWire enumeration helper
Now the new wait for SoundWire enumeration helper no longer depends on unattach_request it can be used for code that also doesn't check this flag. Update the driver to use the new core helper. Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com> Tested-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com> Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://patch.msgid.link/20260608102714.2503120-3-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--sound/soc/codecs/wsa881x.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sound/soc/codecs/wsa881x.c b/sound/soc/codecs/wsa881x.c
index d15fda648dad..5174614c3e83 100644
--- a/sound/soc/codecs/wsa881x.c
+++ b/sound/soc/codecs/wsa881x.c
@@ -1167,16 +1167,14 @@ static int wsa881x_runtime_resume(struct device *dev)
struct sdw_slave *slave = dev_to_sdw_dev(dev);
struct regmap *regmap = dev_get_regmap(dev, NULL);
struct wsa881x_priv *wsa881x = dev_get_drvdata(dev);
- unsigned long time;
+ int ret;
gpiod_direction_output(wsa881x->sd_n, 0);
- time = wait_for_completion_timeout(&slave->initialization_complete,
- msecs_to_jiffies(WSA881X_PROBE_TIMEOUT));
- if (!time) {
- dev_err(dev, "Initialization not complete, timed out\n");
+ ret = sdw_slave_wait_for_init(slave, WSA881X_PROBE_TIMEOUT);
+ if (ret) {
gpiod_direction_output(wsa881x->sd_n, 1);
- return -ETIMEDOUT;
+ return ret;
}
regcache_cache_only(regmap, false);