ASoC: rt5640: Fix NULL dereference on module unload
The rt5640->jack is NULL if jack is already disabled at the time of driver's module unloading. Signed-off-by: Dmitry Osipenko <digetx@gmail.com> Link: https://lore.kernel.org/r/20200106014707.11378-1-digetx@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
ff3b574170
commit
89b71b3f02
|
@ -2432,6 +2432,13 @@ static void rt5640_disable_jack_detect(struct snd_soc_component *component)
|
||||||
{
|
{
|
||||||
struct rt5640_priv *rt5640 = snd_soc_component_get_drvdata(component);
|
struct rt5640_priv *rt5640 = snd_soc_component_get_drvdata(component);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* soc_remove_component() force-disables jack and thus rt5640->jack
|
||||||
|
* could be NULL at the time of driver's module unloading.
|
||||||
|
*/
|
||||||
|
if (!rt5640->jack)
|
||||||
|
return;
|
||||||
|
|
||||||
disable_irq(rt5640->irq);
|
disable_irq(rt5640->irq);
|
||||||
rt5640_cancel_work(rt5640);
|
rt5640_cancel_work(rt5640);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue