James Calligeros 2391b8719d
ASoC: cs42l84: leverage ring sense IRQs to correctly detect headsets
Some jacks integrated on devices with this codec, such as certain
Apple Silicon Macs, have quite trigger-happy tip sense switches that
cause a tip sense IRQ before the plug is fully seated. If users are
unfortunate with their timing, this can lead to headsets being detected
as mic-less headphones among other issues with the codec's device
detection routines.

Introduce some rudimentary ring sense interrupt handling so that we
can re-trigger the codec's detection routines when we are certain
that the plug is fully seated.

This seems to differ from what other Cirrus drivers do, but is
necessary for devices to be reliably detected properly here.

Signed-off-by: James Calligeros <jcalligeros99@gmail.com>
Reviewed-by: Neal Gompa <neal@gompa.dev>
Link: https://patch.msgid.link/20241020-cs42l84-v2-3-37ba2b6721d9@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2024-10-24 16:09:19 +01:00
..
2024-10-23 13:01:54 +01:00
2024-10-01 14:51:18 +01:00
2024-09-26 12:00:25 -07:00
2024-10-23 13:01:55 +01:00
2024-10-17 12:12:25 +01:00
2024-10-23 18:07:47 +01:00
2024-09-14 09:09:59 +02:00
2024-10-17 18:42:11 +01:00
2024-10-17 18:42:11 +01:00
2024-07-08 12:50:02 +01:00