ASoC: rt5682: cancel jack_detect_work if hs_jack is set to null
authorBard liao <yung-chuan.liao@linux.intel.com>
Mon, 11 Nov 2019 22:21:52 +0000 (16:21 -0600)
committerMark Brown <broonie@kernel.org>
Tue, 12 Nov 2019 12:08:10 +0000 (12:08 +0000)
jack_detect_work will be triggered by rt5682_irq. We should cancel
it if hs_jack is set to null.

Signed-off-by: Bard liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20191111222152.19723-1-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/rt5682.c

index c50b75ce82e0b727cd91fb0d17caf93088890da1..62b8ed412bd1406b6d587b25cf8656745458a237 100644 (file)
@@ -1002,6 +1002,7 @@ static int rt5682_set_jack_detect(struct snd_soc_component *component,
                                   RT5682_JD1_EN_MASK, RT5682_JD1_DIS);
                regmap_update_bits(rt5682->regmap, RT5682_RC_CLK_CTRL,
                                   RT5682_POW_JDH | RT5682_POW_JDL, 0);
+               cancel_delayed_work_sync(&rt5682->jack_detect_work);
                return 0;
        }