[PATCH v2 0/4] ASoC: codecs: wcd937x: add USB Type-C analog audio mux support
From: Val Packett
Date: Tue Oct 20 2026 - 04:30:53 EST
Currently only wcd939x has support for USB-C SBU audio in mainline, but the
older WCD codecs can do the same thing 939x does with USBSS, with an
external 3rd party mux instead. This series adds support for that based on
wcd939x code.
Tested on sm7325-motorola-dubai.
v2:
* Pull R-b for dt-bindings
* Add missing `depends on TYPEC || !TYPEC` to kconfig (sashiko-bot)
* Do not leak the of_graph device_node (sashiko-bot)
* Guard against NULL wcd_mbhc / mbhc->cfg pointers because typec
callbacks belong to the platform device which has a longer lifecycle
than the soc codec part (sashiko-bot)
* Also apply the same leak/null fixes to wcd939x, keeping it in sync
v1: https://lore.kernel.org/all/20261018231244.1266926-1-val@xxxxxxxxxxxx/
Thanks,
~val
---
Val Packett (4):
ASoC: dt-bindings: qcom,wcd937x: Add USB-C graph properties
ASoC: codecs: wcd937x: add USB Type-C analog audio mux support
ASoC: codecs: wcd-mbhc: guard against NULL cfg in
typec_report_(un)plug
ASoC: codecs: wcd939x: fix ref leak and NULL deref with USB-C audio
.../bindings/sound/qcom,wcd937x.yaml | 15 ++
sound/soc/codecs/Kconfig | 2 +
sound/soc/codecs/wcd-mbhc-v2.c | 4 +-
sound/soc/codecs/wcd937x.c | 167 +++++++++++++++++-
sound/soc/codecs/wcd939x.c | 18 +-
5 files changed, 194 insertions(+), 12 deletions(-)
--
2.55.0