]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - sound/soc/codecs/adau1977.c
Merge remote-tracking branches 'asoc/topic/rt5670', 'asoc/topic/rt5677', 'asoc/topic...
[karo-tx-linux.git] / sound / soc / codecs / adau1977.c
index 70ab35744abadd9970a65a86eaee155f70244db1..7ad8e156e2df9010a6d2fbe2d70bf45358da79af 100644 (file)
@@ -938,22 +938,15 @@ int adau1977_probe(struct device *dev, struct regmap *regmap,
                adau1977->dvdd_reg = NULL;
        }
 
-       adau1977->reset_gpio = devm_gpiod_get(dev, "reset");
-       if (IS_ERR(adau1977->reset_gpio)) {
-               ret = PTR_ERR(adau1977->reset_gpio);
-               if (ret != -ENOENT && ret != -ENOSYS)
-                       return PTR_ERR(adau1977->reset_gpio);
-               adau1977->reset_gpio = NULL;
-       }
+       adau1977->reset_gpio = devm_gpiod_get_optional(dev, "reset",
+                                                      GPIOD_OUT_LOW);
+       if (IS_ERR(adau1977->reset_gpio))
+               return PTR_ERR(adau1977->reset_gpio);
 
        dev_set_drvdata(dev, adau1977);
 
-       if (adau1977->reset_gpio) {
-               ret = gpiod_direction_output(adau1977->reset_gpio, 0);
-               if (ret)
-                       return ret;
+       if (adau1977->reset_gpio)
                ndelay(100);
-       }
 
        ret = adau1977_power_enable(adau1977);
        if (ret)