diff options
author | Mark Brown <broonie@linaro.org> | 2013-06-17 20:20:31 +0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-06-17 20:20:31 +0400 |
commit | 7daf390b8bff7a96ae40c1f9d7356c7c5c9ac384 (patch) | |
tree | 0b5cd3589781dbdcd5049c95aa5c763d50dc7291 /sound/soc | |
parent | 458bcee95d9ff742dcb379f6605a4023848ed8cb (diff) | |
parent | fd8b96574456e23fe7dad491711f371f86034c64 (diff) | |
download | linux-7daf390b8bff7a96ae40c1f9d7356c7c5c9ac384.tar.xz |
Merge remote-tracking branch 'asoc/topic/wm0010' into asoc-next
Diffstat (limited to 'sound/soc')
-rw-r--r-- | sound/soc/codecs/wm0010.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sound/soc/codecs/wm0010.c b/sound/soc/codecs/wm0010.c index 370af0cbcc9a..f5e835662cdc 100644 --- a/sound/soc/codecs/wm0010.c +++ b/sound/soc/codecs/wm0010.c @@ -14,6 +14,7 @@ #include <linux/module.h> #include <linux/moduleparam.h> +#include <linux/interrupt.h> #include <linux/irqreturn.h> #include <linux/init.h> #include <linux/spi/spi.h> @@ -972,6 +973,13 @@ static int wm0010_spi_probe(struct spi_device *spi) } wm0010->irq = irq; + ret = irq_set_irq_wake(irq, 1); + if (ret) { + dev_err(wm0010->dev, "Failed to set IRQ %d as wake source: %d\n", + irq, ret); + return ret; + } + if (spi->max_speed_hz) wm0010->board_max_spi_speed = spi->max_speed_hz; else @@ -995,6 +1003,8 @@ static int wm0010_spi_remove(struct spi_device *spi) gpio_set_value_cansleep(wm0010->gpio_reset, wm0010->gpio_reset_value); + irq_set_irq_wake(wm0010->irq, 0); + if (wm0010->irq) free_irq(wm0010->irq, wm0010); |