mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 01:55:51 +02:00
ASoC: rt722: Use new SoundWire enumeration helper
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. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://patch.msgid.link/20260512103022.1154645-12-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
cc05ab0a66
commit
0b64017495
|
|
@ -501,7 +501,7 @@ static int rt722_sdca_dev_resume(struct device *dev)
|
|||
{
|
||||
struct sdw_slave *slave = dev_to_sdw_dev(dev);
|
||||
struct rt722_sdca_priv *rt722 = dev_get_drvdata(dev);
|
||||
unsigned long time;
|
||||
int ret;
|
||||
|
||||
if (!rt722->first_hw_init)
|
||||
return 0;
|
||||
|
|
@ -514,20 +514,12 @@ static int rt722_sdca_dev_resume(struct device *dev)
|
|||
rt722->disable_irq = false;
|
||||
}
|
||||
mutex_unlock(&rt722->disable_irq_lock);
|
||||
goto regmap_sync;
|
||||
}
|
||||
|
||||
time = wait_for_completion_timeout(&slave->initialization_complete,
|
||||
msecs_to_jiffies(RT722_PROBE_TIMEOUT));
|
||||
if (!time) {
|
||||
dev_err(&slave->dev, "Initialization not complete, timed out\n");
|
||||
sdw_show_ping_status(slave->bus, true);
|
||||
ret = sdw_slave_wait_for_init(slave, RT722_PROBE_TIMEOUT);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return -ETIMEDOUT;
|
||||
}
|
||||
|
||||
regmap_sync:
|
||||
slave->unattach_request = 0;
|
||||
regcache_cache_only(rt722->regmap, false);
|
||||
regcache_sync(rt722->regmap);
|
||||
return 0;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user