[PATCH v2 0/5] Add support for jack detection to codec present in A64 SoC

From: Ondřej Jirman
Date: Thu Feb 22 2024 - 20:52:51 EST


From: Ondrej Jirman <megi@xxxxxx>

This series adds support for jack detection to this codec. I used
and tested this on Pinephone. It works quite nicely. I tested it
against Android headset mic button resistor specification.

The patches are improved and debugged version of the original
ones from Arnaud Ferraris and Samuel Holland, imrpoved to better
handle headset button presses and with more robust plug-in/out
event debouncing.

Please take a look. :)

v2:
- use set_jack/get_jack_type
- get rid of some custom poking inside card internals to figure
out what kind of jack port we should setup the codec for
- read jack-type from OF as suggested here:
https://elixir.bootlin.com/linux/latest/source/sound/soc/soc-component.c#L288
- add DT bindings

Thank you very much,
Ondřej Jirman

Arnaud Ferraris (2):
ASoC: sun50i-codec-analog: Enable jack detection on startup
ASoC: sun8i-codec: Implement jack and accessory detection

Ondrej Jirman (1):
dt-bindings: sound: Add jack-type property to sun8i-a33-codec

Samuel Holland (2):
ASoC: sun50i-codec-analog: Move suspend/resume to set_bias_level
ASoC: sun8i-codec: Enable bus clock at STANDBY and higher bias

.../sound/allwinner,sun8i-a33-codec.yaml | 9 +
sound/soc/sunxi/sun50i-codec-analog.c | 73 +++-
sound/soc/sunxi/sun8i-codec.c | 359 +++++++++++++++++-
3 files changed, 421 insertions(+), 20 deletions(-)

--
2.43.0