summaryrefslogtreecommitdiffstats
path: root/crypto
diff options
context:
space:
mode:
authorEnric Balletbo i Serra2019-07-19 19:39:29 +0200
committerMark Brown2019-07-22 14:00:48 +0200
commitf86621cd6c6f54edfdd62da347b2bbb8d7fddc8d (patch)
treed9ece8d1a74fb2fe63b283b29914f7506a12242a /crypto
parentASoC: cs42xx8: Fix MFREQ selection issue for async mode (diff)
downloadkernel-qcow2-linux-f86621cd6c6f54edfdd62da347b2bbb8d7fddc8d.tar.gz
kernel-qcow2-linux-f86621cd6c6f54edfdd62da347b2bbb8d7fddc8d.tar.xz
kernel-qcow2-linux-f86621cd6c6f54edfdd62da347b2bbb8d7fddc8d.zip
SoC: rockchip: rockchip_max98090: Enable MICBIAS for headset keypress detection
The TS3A227E says that the headset keypress detection needs the MICBIAS power in order to report the key events to ensure proper operation The headset keypress detection needs the MICBIAS power in order to report the key events all the time as long as MIC is present. So MICBIAS pin is forced on when a MICROPHONE is detected. On Veyron Minnie I observed that if the MICBIAS power is not present and the key press detection is activated (just because it is enabled when you insert a headset), it randomly reports a keypress on insert. E.g. (KEY_PLAYPAUSE) Event: (SW_HEADPHONE_INSERT), value 1 Event: (SW_MICROPHONE_INSERT), value 1 Event: -------------- SYN_REPORT ------------ Event: (KEY_PLAYPAUSE), value 1 Userspace thinks that KEY_PLAYPAUSE is pressed and produces the annoying effect that the media player starts a play/pause loop. Note that, although most of the time the key reported is the one associated with BTN_0, not always this is true. On my tests I also saw different keys reported Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com> Link: https://lore.kernel.org/r/20190719173929.24065-1-enric.balletbo@collabora.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'crypto')
0 files changed, 0 insertions, 0 deletions