Merge series "ASoC: cs42l42: Implement Manual Type detection as fallback" from Vitaly...
authorMark Brown <broonie@kernel.org>
Thu, 16 Sep 2021 15:06:47 +0000 (16:06 +0100)
committerMark Brown <broonie@kernel.org>
Thu, 16 Sep 2021 15:06:47 +0000 (16:06 +0100)
commitf1291f41afa9d1901dd954c52869cd0e09c06652
tree8dfaafb0ce245b8fa083aefebcf2bbb8b031caa3
parent8e0850f98df947ec96d560a262a198f37409c6bd
parent12451814496a5433f41843ca4e3d9961d69304f7
Merge series "ASoC: cs42l42: Implement Manual Type detection as fallback" from Vitaly Rodionov <vitalyr@opensource.cirrus.com>:

For some headsets CS42L42 autodetect mode is not working correctly.
They will be detected as unknown types or as headphones. According
to the CS42L42 datasheet, if the headset autodetect failed,
then the driver should switch to manual mode and perform a manual steps sequence.
These steps were missing in the current driver code. This patch will add manual
mode fallback steps in case autodetect failed. The default behavior is not affected,
manual mode runs only when autodetect failed.

Tested for regression with autodetect with all known headsets - no regression.
Tested with all headsets customers reported as false detected:
Gumdrop DropTech B1 - detected as headset OK
HUAWEI AM115 - detected as headset OK
UGREEN EP103 - detected as headset OK
HONOR AM116 - detected as headset OK

Stefan Binding (1):
  ASoC: cs42l42: Implement Manual Type detection as fallback

 sound/soc/codecs/cs42l42.c | 104 ++++++++++++++++++++++++++++++++-----
 sound/soc/codecs/cs42l42.h |  54 +++++++++++++++++++
 2 files changed, 146 insertions(+), 12 deletions(-)

--
2.25.1
sound/soc/codecs/cs42l42.c