soundwire: intel: add clock stop quirks
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Thu, 12 Dec 2019 01:45:07 +0000 (19:45 -0600)
committerVinod Koul <vkoul@kernel.org>
Thu, 12 Dec 2019 03:47:07 +0000 (09:17 +0530)
commit09f6a72d014386939d21899921dd379006471a4b
tree17d53f6ba0b6b1c8aaac562ebc87f0d74faa6317
parent4da0680f24c9af2de8406ded68c4ef967f448de3
soundwire: intel: add clock stop quirks

Due to power rail dependencies, the SoundWire Master driver cannot
make decisions on its own when entering pm runtime suspend.

Add quirk mask for each link, so that the SOF parent driver can inform
the SoundWire master driver of the desired behavior:
a) leave clock on
b) power-off instead of clock stop
c) power-off if all devices cannot generate wakes
d) force bus reset on clock restart

Note that for now the interface with the SOF driver relies on a single
mask for all links. If needed, the interface might be modified at a
later point to provide more freedom. The code at the lower level does
not assume any commonality between links.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20191212014507.28050-12-pierre-louis.bossart@linux.intel.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
include/linux/soundwire/sdw_intel.h