mirror of
https://github.com/torvalds/linux.git
synced 2026-10-11 21:07:03 +02:00
ASoC: codecs: es8316: Use guard() for mutex locks
Clean up the code using guard() for mutex locks. Merely code refactoring, and no behavior change. Signed-off-by: bui duc phuc <phucduc.bui@gmail.com> Link: https://patch.msgid.link/20260721102600.523199-4-phucduc.bui@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
47f85aa98b
commit
357d20c73d
|
|
@ -9,6 +9,7 @@
|
|||
|
||||
#include <linux/module.h>
|
||||
#include <linux/acpi.h>
|
||||
#include <linux/cleanup.h>
|
||||
#include <linux/clk.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/i2c.h>
|
||||
|
|
@ -620,15 +621,15 @@ static irqreturn_t es8316_irq(int irq, void *data)
|
|||
struct snd_soc_component *comp = es8316->component;
|
||||
unsigned int flags;
|
||||
|
||||
mutex_lock(&es8316->lock);
|
||||
guard(mutex)(&es8316->lock);
|
||||
|
||||
regmap_read(es8316->regmap, ES8316_GPIO_FLAG, &flags);
|
||||
if (flags == 0x00)
|
||||
goto out; /* Powered-down / reset */
|
||||
return IRQ_HANDLED; /* Powered-down / reset */
|
||||
|
||||
/* Catch spurious IRQ before set_jack is called */
|
||||
if (!es8316->jack)
|
||||
goto out;
|
||||
return IRQ_HANDLED;
|
||||
|
||||
if (es8316->jd_inverted)
|
||||
flags ^= ES8316_GPIO_FLAG_HP_NOT_INSERTED;
|
||||
|
|
@ -681,8 +682,6 @@ static irqreturn_t es8316_irq(int irq, void *data)
|
|||
}
|
||||
}
|
||||
|
||||
out:
|
||||
mutex_unlock(&es8316->lock);
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
|
|
@ -699,18 +698,16 @@ static void es8316_enable_jack_detect(struct snd_soc_component *component,
|
|||
es8316->jd_inverted = device_property_read_bool(component->dev,
|
||||
"everest,jack-detect-inverted");
|
||||
|
||||
mutex_lock(&es8316->lock);
|
||||
scoped_guard(mutex, &es8316->lock) {
|
||||
es8316->jack = jack;
|
||||
|
||||
es8316->jack = jack;
|
||||
if (es8316->jack->status & SND_JACK_MICROPHONE)
|
||||
es8316_enable_micbias_for_mic_gnd_short_detect(component);
|
||||
|
||||
if (es8316->jack->status & SND_JACK_MICROPHONE)
|
||||
es8316_enable_micbias_for_mic_gnd_short_detect(component);
|
||||
|
||||
snd_soc_component_update_bits(component, ES8316_GPIO_DEBOUNCE,
|
||||
ES8316_GPIO_ENABLE_INTERRUPT,
|
||||
ES8316_GPIO_ENABLE_INTERRUPT);
|
||||
|
||||
mutex_unlock(&es8316->lock);
|
||||
snd_soc_component_update_bits(component, ES8316_GPIO_DEBOUNCE,
|
||||
ES8316_GPIO_ENABLE_INTERRUPT,
|
||||
ES8316_GPIO_ENABLE_INTERRUPT);
|
||||
}
|
||||
|
||||
/* Enable irq and sync initial jack state */
|
||||
enable_irq(es8316->irq);
|
||||
|
|
@ -726,7 +723,7 @@ static void es8316_disable_jack_detect(struct snd_soc_component *component)
|
|||
|
||||
disable_irq(es8316->irq);
|
||||
|
||||
mutex_lock(&es8316->lock);
|
||||
guard(mutex)(&es8316->lock);
|
||||
|
||||
snd_soc_component_update_bits(component, ES8316_GPIO_DEBOUNCE,
|
||||
ES8316_GPIO_ENABLE_INTERRUPT, 0);
|
||||
|
|
@ -737,8 +734,6 @@ static void es8316_disable_jack_detect(struct snd_soc_component *component)
|
|||
}
|
||||
|
||||
es8316->jack = NULL;
|
||||
|
||||
mutex_unlock(&es8316->lock);
|
||||
}
|
||||
|
||||
static int es8316_set_jack(struct snd_soc_component *component,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user