ASoC: pcm3008: Use gpio_set_value_cansleep()
authorMark Brown <broonie@linaro.org>
Thu, 15 Aug 2013 10:53:28 +0000 (11:53 +0100)
committerMark Brown <broonie@linaro.org>
Sun, 18 Aug 2013 15:40:00 +0000 (16:40 +0100)
We don't set the GPIO values from atomic context so support GPIOs that
can't be controlled from atomic context.

Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/codecs/pcm3008.c

index b883f99..8b9b378 100644 (file)
@@ -54,8 +54,8 @@ static int pcm3008_soc_suspend(struct snd_soc_codec *codec)
 {
        struct pcm3008_setup_data *setup = codec->dev->platform_data;
 
-       gpio_set_value(setup->pdad_pin, 0);
-       gpio_set_value(setup->pdda_pin, 0);
+       gpio_set_value_cansleep(setup->pdad_pin, 0);
+       gpio_set_value_cansleep(setup->pdda_pin, 0);
 
        return 0;
 }
@@ -64,8 +64,8 @@ static int pcm3008_soc_resume(struct snd_soc_codec *codec)
 {
        struct pcm3008_setup_data *setup = codec->dev->platform_data;
 
-       gpio_set_value(setup->pdad_pin, 1);
-       gpio_set_value(setup->pdda_pin, 1);
+       gpio_set_value_cansleep(setup->pdad_pin, 1);
+       gpio_set_value_cansleep(setup->pdda_pin, 1);
 
        return 0;
 }