linux/sound/soc
Damien Riegel d430a7e3ab ASoC: codecs: msm8916-wcd-analog: use btn0 released detection
msm8916-wcd-analog uses button0 to differentiate between headphone and
headset. Under some circumstances, button pressed and released
interrupts are not fired as the driver expects it.

For instance, with some connectors, there are spurious button-pressed
interrupts when unplugging a headphone, without the corresponding
button-released interrupt. But the codec always alternates between
button pressed and released interrupts, it cannot fire two interrupts of
the same kind in a row. That means that when the headphone is plugged
back, only a button-released interrupt will be fired instead of pressed
then released. This causes the driver to report headphone as headset.

By changing the logic and relying on button 0 release interrupt, the
driver could be made more robust for connectors that differ from the one
used on the Dragonboard's audio mezzanine.

Signed-off-by: Damien Riegel <damien.riegel@savoirfairelinux.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2017-09-28 11:55:53 -07:00
..
adi
amd scripts/spelling.txt: add "disble(d)" pattern and fix typo instances 2017-03-09 17:01:09 -08:00
atmel The diff is dominated by the Allwinner A10/A20 SoCs getting converted to 2017-09-13 11:04:14 -07:00
au1x Merge remote-tracking branches 'asoc/topic/omap', 'asoc/topic/psc-ac97' and 'asoc/topic/pxa' into asoc-next 2017-09-01 12:12:52 +01:00
bcm Merge remote-tracking branches 'asoc/topic/cs43130', 'asoc/topic/cs53l30', 'asoc/topic/cygnus' and 'asoc/topic/davinci' into asoc-next 2017-09-01 12:12:32 +01:00
blackfin ASoC: blackfin: constify snd_soc_dai_ops structures 2017-08-15 18:10:53 +01:00
cirrus ASoC: cirrus: make snd_soc_ops const 2017-08-17 18:07:47 +01:00
codecs ASoC: codecs: msm8916-wcd-analog: use btn0 released detection 2017-09-28 11:55:53 -07:00
davinci ASoC: davinci-mcasp: check memory allocation failure 2017-08-27 13:30:29 +01:00
dwc ASoC: dwc: Delete an error message for a failed memory allocation in dw_i2s_probe() 2017-08-14 17:28:51 +01:00
fsl Merge remote-tracking branches 'asoc/topic/hisi', 'asoc/topic/img', 'asoc/topic/jack' and 'asoc/topic/jz4740' into asoc-next 2017-09-01 12:12:41 +01:00
generic Merge remote-tracking branches 'asoc/topic/simple', 'asoc/topic/spear', 'asoc/topic/sta32x', 'asoc/topic/stm32' and 'asoc/topic/sunxi' into asoc-next 2017-09-01 12:13:06 +01:00
hisilicon ASoC: hisilicon: constify snd_soc_dai_ops structure 2017-07-17 16:16:58 +01:00
img ASoC: img: explicitly request exclusive reset control 2017-07-19 17:06:54 +01:00
intel Merge remote-tracking branches 'asoc/topic/hisi', 'asoc/topic/img', 'asoc/topic/jack' and 'asoc/topic/jz4740' into asoc-next 2017-09-01 12:12:41 +01:00
jz4740 ASoC: jz4740: Handle return value of clk_prepare_enable. 2017-07-26 13:01:18 +01:00
kirkwood ASoC: kirkwood: make snd_pcm_hardware const 2017-08-17 17:57:09 +01:00
mediatek Merge remote-tracking branches 'asoc/topic/mtk', 'asoc/topic/mxs', 'asoc/topic/nau8825', 'asoc/topic/nuc900' and 'asoc/topic/of-graph' into asoc-next 2017-09-01 12:12:48 +01:00
mxs Merge remote-tracking branches 'asoc/topic/mtk', 'asoc/topic/mxs', 'asoc/topic/nau8825', 'asoc/topic/nuc900' and 'asoc/topic/of-graph' into asoc-next 2017-09-01 12:12:48 +01:00
nuc900 ASoC: nuc900: constify snd_pcm_ops structures 2017-08-14 17:23:23 +01:00
omap sound updates for 4.14-rc1 2017-09-07 12:44:53 -07:00
pxa Merge remote-tracking branches 'asoc/topic/omap', 'asoc/topic/psc-ac97' and 'asoc/topic/pxa' into asoc-next 2017-09-01 12:12:52 +01:00
qcom ASoC: qcom: apq8016-sbc: Add support to Headset JACK 2017-08-21 19:33:03 +01:00
rockchip ASoC: rockchip: constify snd_soc_ops structures 2017-08-30 16:12:53 +01:00
samsung Merge remote-tracking branches 'asoc/topic/rt5665', 'asoc/topic/rt5670', 'asoc/topic/rt5677' and 'asoc/topic/samsung' into asoc-next 2017-09-01 12:13:03 +01:00
sh Merge remote-tracking branches 'asoc/topic/dwc', 'asoc/topic/es8316', 'asoc/topic/fsi', 'asoc/topic/fsl' and 'asoc/topic/hdmi' into asoc-next 2017-09-01 12:12:36 +01:00
sirf
spear ASoC: spear: constify snd_soc_dai_ops structures 2017-08-15 18:11:42 +01:00
sti ASoC: sti: Fix error handling if of_clk_get() fails 2017-04-30 21:30:52 +09:00
stm ASoC: stm32: explicitly request exclusive reset control 2017-07-19 17:07:04 +01:00
sunxi ASoC: sun4i-i2s: Add support for H3 2017-08-21 17:16:14 +01:00
tegra Merge remote-tracking branches 'asoc/topic/tas2552', 'asoc/topic/tas5720', 'asoc/topic/tegra', 'asoc/topic/tlv320aic32x4' and 'asoc/topic/tlv320aic3x' into asoc-next 2017-09-01 12:13:10 +01:00
txx9 ASoC: txx9: constify snd_pcm_ops structures 2017-08-14 17:21:25 +01:00
ux500 Merge remote-tracking branches 'asoc/topic/twl6040', 'asoc/topic/txx9', 'asoc/topic/utils', 'asoc/topic/ux500' and 'asoc/topic/wm8523' into asoc-next 2017-09-01 12:13:15 +01:00
xtensa
zte ASoC: zte: spdif: constify snd_soc_dai_ops structure 2017-07-17 16:18:15 +01:00
Kconfig Merge remote-tracking branches 'asoc/topic/sta529', 'asoc/topic/sti', 'asoc/topic/stm', 'asoc/topic/sunxi' and 'asoc/topic/tas2552' into asoc-next 2017-04-30 22:16:31 +09:00
Makefile Merge remote-tracking branches 'asoc/topic/sta529', 'asoc/topic/sti', 'asoc/topic/stm', 'asoc/topic/sunxi' and 'asoc/topic/tas2552' into asoc-next 2017-04-30 22:16:31 +09:00
soc-ac97.c
soc-cache.c
soc-compress.c ASoC: compress: Set reasonable compress id string 2017-08-16 15:52:58 +01:00
soc-core.c ASoC: Updates for v4.14 2017-09-04 14:50:49 +02:00
soc-dapm.c
soc-devres.c
soc-generic-dmaengine-pcm.c
soc-io.c
soc-jack.c Merge remote-tracking branches 'asoc/topic/hisi', 'asoc/topic/img', 'asoc/topic/jack' and 'asoc/topic/jz4740' into asoc-next 2017-09-01 12:12:41 +01:00
soc-ops.c
soc-pcm.c Merge remote-tracking branch 'asoc/topic/core' into asoc-next 2017-09-01 12:12:18 +01:00
soc-topology.c Merge remote-tracking branches 'asoc/topic/stm32', 'asoc/topic/sunxi', 'asoc/topic/tlv320dac31xx', 'asoc/topic/topology' and 'asoc/topic/wm-adsp' into asoc-next 2017-07-03 16:15:20 +01:00
soc-utils.c ASoC: soc-utils: make snd_soc_platform_driver const 2017-08-14 17:21:41 +01:00