aboutsummaryrefslogtreecommitdiff
path: root/sound/soc/codecs/tas5086.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/codecs/tas5086.c')
-rw-r--r--sound/soc/codecs/tas5086.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sound/soc/codecs/tas5086.c b/sound/soc/codecs/tas5086.c
index 4bc1fdd232bb..b97c0e885713 100644
--- a/sound/soc/codecs/tas5086.c
+++ b/sound/soc/codecs/tas5086.c
@@ -463,9 +463,9 @@ static void tas5086_reset(struct tas5086_private *priv)
{
if (priv->reset) {
/* Reset codec - minimum assertion time is 400ns */
- gpiod_direction_output(priv->reset, 1);
+ gpiod_set_value_cansleep(priv->reset, 1);
udelay(1);
- gpiod_set_value(priv->reset, 0);
+ gpiod_set_value_cansleep(priv->reset, 0);
/* Codec needs ~15ms to wake up */
msleep(15);
@@ -866,9 +866,10 @@ static void tas5086_remove(struct snd_soc_component *component)
{
struct tas5086_private *priv = snd_soc_component_get_drvdata(component);
- if (priv->reset)
+ if (priv->reset) {
/* Set codec to the reset state */
- gpiod_set_value(priv->reset, 1);
+ gpiod_set_value_cansleep(priv->reset, 1);
+ }
regulator_bulk_disable(ARRAY_SIZE(priv->supplies), priv->supplies);
};