[PATCH 0/2] Add SoundWire deatach helper

Charles Keepax posted 2 patches 3 weeks, 5 days ago
drivers/mfd/cs42l43-sdw.c     |  2 --
drivers/mfd/cs42l43.c         | 15 +--------------
drivers/soundwire/bus.h       |  6 ------
include/linux/mfd/cs42l43.h   |  1 -
include/linux/soundwire/sdw.h | 29 +++++++++++++++++++++++++++++
5 files changed, 30 insertions(+), 23 deletions(-)
[PATCH 0/2] Add SoundWire deatach helper
Posted by Charles Keepax 3 weeks, 5 days ago
Currently, if a SoundWire driver takes an action that causes the device
to detach from the bus it needs to be careful. There will be a period of
time until the detach is recognised by the core, if the driver immediately
calls sdw_slave_wait_for_init() it is possible for that to complete
before the detach has been recognised. Leaving the driver with a device
that is potentially not ready for what follows.

To avoid this race add a new helper that drivers can use to inform the
core the device will detach. This clears the enumeration completions
ensuring that sdw_slave_wait_for_init() can't complete until the device
re-attaches.

This is the third part of a longer series of moving these slave
attach/deatach operations into the core:

https://lore.kernel.org/linux-sound/20260512103022.1154645-1-ckeepax@opensource.cirrus.com/
https://lore.kernel.org/linux-sound/20260608102714.2503120-1-ckeepax@opensource.cirrus.com/

I have based this series off Vinod's soundwire tree as that probably
makes sense for which tree to take it through.

Thanks,
Charles

Charles Keepax (2):
  soundwire: Add a helper function to indicate a device will detach
  mfd: cs42l43: Move to core detach helper

 drivers/mfd/cs42l43-sdw.c     |  2 --
 drivers/mfd/cs42l43.c         | 15 +--------------
 drivers/soundwire/bus.h       |  6 ------
 include/linux/mfd/cs42l43.h   |  1 -
 include/linux/soundwire/sdw.h | 29 +++++++++++++++++++++++++++++
 5 files changed, 30 insertions(+), 23 deletions(-)

-- 
2.47.3