[PATCH] ASoC: tac5xx2-sdw: Use new SoundWire enumeration helper
From: Charles Keepax
Date: Thu May 14 2026 - 04:34:47 EST
Update the driver to use the new core helper that waits for the device
to enumerate on SoundWire and be initialised by the SoundWire core.
Suggested-by: Niranjan H Y <niranjan.hy@xxxxxx>
Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxx>
---
Add the missing update that was pointed out by Niranjan.
Thanks,
Charles
sound/soc/codecs/tac5xx2-sdw.c | 16 +++-------------
1 file changed, 3 insertions(+), 13 deletions(-)
diff --git a/sound/soc/codecs/tac5xx2-sdw.c b/sound/soc/codecs/tac5xx2-sdw.c
index 917b36ac1cd3b..bb12cfb6da12b 100644
--- a/sound/soc/codecs/tac5xx2-sdw.c
+++ b/sound/soc/codecs/tac5xx2-sdw.c
@@ -1437,7 +1437,6 @@ static s32 tac5xx2_sdca_dev_resume(struct device *dev)
{
struct tac5xx2_prv *tac_dev = dev_get_drvdata(dev);
struct sdw_slave *slave = dev_to_sdw_dev(dev);
- unsigned long t;
int ret;
if (!tac_dev->first_hw_init_done) {
@@ -1445,19 +1444,10 @@ static s32 tac5xx2_sdca_dev_resume(struct device *dev)
return 0;
}
- if (!slave->unattach_request)
- goto regmap_sync;
-
- t = wait_for_completion_timeout(&slave->initialization_complete,
- msecs_to_jiffies(TAC5XX2_PROBE_TIMEOUT_MS));
- if (!t) {
- dev_err(&slave->dev, "resume: initialization timed out\n");
- sdw_show_ping_status(slave->bus, true);
- return -ETIMEDOUT;
- }
- slave->unattach_request = 0;
+ ret = sdw_slave_wait_for_init(slave, TAC5XX2_PROBE_TIMEOUT_MS);
+ if (ret)
+ return ret;
-regmap_sync:
regcache_cache_only(tac_dev->regmap, false);
regcache_mark_dirty(tac_dev->regmap);
ret = regcache_sync(tac_dev->regmap);
--
2.47.3