Thread (15 messages) flat view 15 messages, 4 authors, 2018-03-01

Re: [PATCH v1 3/4] ASoC: codecs: pcm179x: Add reset gpio

From: Fabio Estevam <festevam@gmail.com>
Date: 2018-02-27 22:30:16
Also in: alsa-devel, lkml

On Tue, Feb 27, 2018 at 6:24 PM, Mylène Josserand
[off-list ref] wrote:
+       pcm179x->reset = of_get_named_gpio(np, "reset-gpios", 0);
+       if (gpio_is_valid(pcm179x->reset)) {
+               ret = devm_gpio_request_one(dev, pcm179x->reset,
+                                           GPIOF_OUT_INIT_LOW,
+                                           "pcm179x reset");
+               if (ret) {
+                       dev_err(dev,
+                               "Failed to request GPIO %d as reset pin, error %d\n",
+                               pcm179x->reset, ret);
+                       return ret;
+               }
+
+               gpio_set_value(pcm179x->reset, 1);
It would be better to use the gpiod API, which takes the GPIO polarity
into account.

There may be systems that have an inverter connected to this pin, and
this can be changed in dts via GPIO_ACTIVE_HIGH.

Also, as the reset pin can be connected to an I2C expander, for
example, so it is safer to use the cansleep variant:

gpiod_set_value_cansleep(pcm179x->reset, 0);
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help