If there is a power GPIO provided we control it from DAPM context so there
is no problem with a sleeping GPIO, use the _cansleep() version of the API
to allow this.
Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Tzung-Bi Shih <tzungbi@google.com>
Link: https://lore.kernel.org/r/20200422083550.50711-1-broonie@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
        switch (event) {
        case SND_SOC_DAPM_POST_PMU:
                if (dmic->gpio_en)
-                       gpiod_set_value(dmic->gpio_en, 1);
+                       gpiod_set_value_cansleep(dmic->gpio_en, 1);
 
                if (dmic->wakeup_delay)
                        msleep(dmic->wakeup_delay);
                break;
        case SND_SOC_DAPM_POST_PMD:
                if (dmic->gpio_en)
-                       gpiod_set_value(dmic->gpio_en, 0);
+                       gpiod_set_value_cansleep(dmic->gpio_en, 0);
                break;
        }