[PATCH 0/4] ASoC/soundwire: log actual PING status on resume issues

From: Bard Liao
Date: Wed Jul 13 2022 - 21:10:54 EST


we've been stuck with problems in the dual-amplifier configurations where
one of the two devices seems to become UNATTACHED and never regains sync,
see https://github.com/thesofproject/linux/issues/3638.

This is a rather infrequent issue that may happen once or twice per month,
but still it remains a concern.

One possibility is that the device does lose sync but somehow our hardware
detection fails to see it resync.

This series just adds a basic read directly from the PING frames to help
confirm if yes/no the device regain sync.

The change is mainly on soundwire. @Mark, Could you ack the ASoC patch
if it looks good to you?

Pierre-Louis Bossart (4):
soundwire: add read_ping_status helper definition in manager ops
soundwire: intel/cadence: expose PING status in manager ops
soundwire: add sdw_show_ping_status() helper
ASoC: codecs: show PING status on resume failures

drivers/soundwire/bus.c | 32 ++++++++++++++++++++++++++++++
drivers/soundwire/cadence_master.c | 8 ++++++++
drivers/soundwire/cadence_master.h | 2 ++
drivers/soundwire/intel.c | 1 +
include/linux/soundwire/sdw.h | 5 +++++
sound/soc/codecs/max98373-sdw.c | 2 ++
sound/soc/codecs/rt1308-sdw.c | 2 ++
sound/soc/codecs/rt1316-sdw.c | 2 ++
sound/soc/codecs/rt5682-sdw.c | 2 ++
sound/soc/codecs/rt700-sdw.c | 2 ++
sound/soc/codecs/rt711-sdca-sdw.c | 2 ++
sound/soc/codecs/rt715-sdca-sdw.c | 2 ++
sound/soc/codecs/rt715-sdw.c | 2 ++
13 files changed, 64 insertions(+)

--
2.25.1