[RFC PATCH 0/2] soundwire: add master_device/driver support

From: Pierre-Louis Bossart
Date: Fri Jan 31 2020 - 23:21:13 EST


The SoundWire master representation needs to evolve to take into account:

a) a May 2019 recommendation from Greg KH to remove platform devices

b) the need on Intel platforms to support hardware startup only once
the power rail dependencies are settled. The SoundWire master is not
an independent IP at all.

c) the need to deal with external wakes handled by the PCI subsystem
in specific low-power modes

In case it wasn't clear, the SoundWire subsystem is currently unusable
with v5.5 on devices hitting the shelves very soon (race conditions,
power management, suspend/resume, etc). v5.6 will only provide
interface changes and no functional improvement. We've circled on the
same concepts since September 2019, and I hope this direction is now
aligned with the suggestions from Vinod Koul and that we can target
v5.7 as the 'SoundWire just works(tm)' version.

This series is provided as an RFC since it depends on patches already
for review.

Pierre-Louis Bossart (2):
soundwire: bus_type: add master_device/driver support
soundwire: intel: transition to sdw_master_device/driver support

drivers/soundwire/Makefile | 2 +-
drivers/soundwire/bus_type.c | 141 +++++++++++++-
drivers/soundwire/intel.c | 96 ++++++----
drivers/soundwire/intel.h | 8 +-
drivers/soundwire/intel_init.c | 283 ++++++++++++++++++++++-------
drivers/soundwire/master.c | 119 ++++++++++++
drivers/soundwire/slave.c | 7 +-
include/linux/soundwire/sdw.h | 83 +++++++++
include/linux/soundwire/sdw_type.h | 36 +++-
9 files changed, 662 insertions(+), 113 deletions(-)
create mode 100644 drivers/soundwire/master.c

--
2.20.1