Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3f58fd84 authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: Convert soc-jack code to use request_any_context_irq()



Allow the standard soc-jack GPIO based jack handling to handle the use of
GPIOs which may sleep (such as those on GPIO expanders) by converting the
code to use request_any_context_irq().

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
parent 9e3be1ed
Loading
Loading
Loading
Loading
+6 −5
Original line number Original line Diff line number Diff line
@@ -263,9 +263,10 @@ int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count,
		INIT_DELAYED_WORK(&gpios[i].work, gpio_work);
		INIT_DELAYED_WORK(&gpios[i].work, gpio_work);
		gpios[i].jack = jack;
		gpios[i].jack = jack;


		ret = request_irq(gpio_to_irq(gpios[i].gpio),
		ret = request_any_context_irq(gpio_to_irq(gpios[i].gpio),
					      gpio_handler,
					      gpio_handler,
				IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,
					      IRQF_TRIGGER_RISING |
					      IRQF_TRIGGER_FALLING,
					      jack->codec->dev->driver->name,
					      jack->codec->dev->driver->name,
					      &gpios[i]);
					      &gpios[i]);
		if (ret)
		if (ret)