From f3edaabb0eec8e2547f87ab6d49c62b0c7c64018 Mon Sep 17 00:00:00 2001 From: Shreshtha SAHU Date: Wed, 24 Sep 2014 21:03:35 +0530 Subject: soc: codecs: max98090: free_irq during module remove Bug 1550880 Change-Id: I54697780893c17a1c117483fd9bf271ba31209d4 Signed-off-by: Shreshtha SAHU Reviewed-on: http://git-master/r/551902 Reviewed-by: Venkat Moganty --- sound/soc/codecs/max98090.c | 3 +++ sound/soc/codecs/max98090.h | 1 + 2 files changed, 4 insertions(+) (limited to 'sound') diff --git a/sound/soc/codecs/max98090.c b/sound/soc/codecs/max98090.c index 3eda6a9c934e..52dc80ecd044 100644 --- a/sound/soc/codecs/max98090.c +++ b/sound/soc/codecs/max98090.c @@ -3702,6 +3702,7 @@ static int max98090_probe(struct snd_soc_codec *codec) of_property_read_u32(np, "maxim,audio-int", &audio_int); } + max98090->irq = audio_int; max98090->codec = codec; codec->dapm.idle_bias_off = 1; @@ -3810,6 +3811,8 @@ static int max98090_remove(struct snd_soc_codec *codec) { struct max98090_priv *max98090 = snd_soc_codec_get_drvdata(codec); + free_irq(max98090->irq, codec); + cancel_delayed_work_sync(&max98090->jack_work); kfree(max98090->bq_texts); diff --git a/sound/soc/codecs/max98090.h b/sound/soc/codecs/max98090.h index e0066cfee84c..cdf7b57d5438 100644 --- a/sound/soc/codecs/max98090.h +++ b/sound/soc/codecs/max98090.h @@ -1545,6 +1545,7 @@ struct max98090_priv { unsigned int mic2pre; unsigned int extmic_mux; unsigned int sidetone; + int irq; }; #endif -- cgit v1.2.3