diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-11-03 09:35:31 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-11-03 12:37:00 -0400 |
commit | 3f58fd84b0c0bd482151259ee0d2921974e1fe4c (patch) | |
tree | 1ba788fc534587a45f6f22e7cb9ece0c2f35b61e /sound/soc/soc-jack.c | |
parent | 9e3be1edbe5ca57df51140b523168237b3a01f4d (diff) | |
download | op-kernel-dev-3f58fd84b0c0bd482151259ee0d2921974e1fe4c.zip op-kernel-dev-3f58fd84b0c0bd482151259ee0d2921974e1fe4c.tar.gz |
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: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'sound/soc/soc-jack.c')
-rw-r--r-- | sound/soc/soc-jack.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/sound/soc/soc-jack.c b/sound/soc/soc-jack.c index 8a0a920..9f07551 100644 --- a/sound/soc/soc-jack.c +++ b/sound/soc/soc-jack.c @@ -263,11 +263,12 @@ int snd_soc_jack_add_gpios(struct snd_soc_jack *jack, int count, INIT_DELAYED_WORK(&gpios[i].work, gpio_work); gpios[i].jack = jack; - ret = request_irq(gpio_to_irq(gpios[i].gpio), - gpio_handler, - IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING, - jack->codec->dev->driver->name, - &gpios[i]); + ret = request_any_context_irq(gpio_to_irq(gpios[i].gpio), + gpio_handler, + IRQF_TRIGGER_RISING | + IRQF_TRIGGER_FALLING, + jack->codec->dev->driver->name, + &gpios[i]); if (ret) goto err; |