aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2015-03-31 16:08:45 -0400
committerDavid S. Miller <davem@davemloft.net>2015-04-01 12:44:04 -0400
commit687908c2b6498130172286f3387ec0eb0a20080e (patch)
treee0635c86a56c2779175280a35ad35e092bb65164 /drivers
parent906a7985f72ee2f28433e2dd847a013da0e4cdea (diff)
net: phy: at803x: simplify using devm_gpiod_get_optional and its 4th argument
Since 39b2bbe3d715 (gpio: add flags argument to gpiod_get*() functions) which appeared in v3.17-rc1, the gpiod_get* functions take an additional parameter that allows to specify direction and initial value for output. Moreover use devm_gpiod_get_optional instead of ignoring all errors returned by devm_gpiod_get and simplify accordingly. The result is more strict error handling which is good. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/phy/at803x.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/net/phy/at803x.c b/drivers/net/phy/at803x.c
index f80e19ac6704..fabf11d32d27 100644
--- a/drivers/net/phy/at803x.c
+++ b/drivers/net/phy/at803x.c
@@ -192,16 +192,17 @@ static int at803x_probe(struct phy_device *phydev)
192{ 192{
193 struct device *dev = &phydev->dev; 193 struct device *dev = &phydev->dev;
194 struct at803x_priv *priv; 194 struct at803x_priv *priv;
195 struct gpio_desc *gpiod_reset;
195 196
196 priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL); 197 priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
197 if (!priv) 198 if (!priv)
198 return -ENOMEM; 199 return -ENOMEM;
199 200
200 priv->gpiod_reset = devm_gpiod_get(dev, "reset"); 201 gpiod_reset = devm_gpiod_get_optional(dev, "reset", GPIOD_OUT_HIGH);
201 if (IS_ERR(priv->gpiod_reset)) 202 if (IS_ERR(gpiod_reset))
202 priv->gpiod_reset = NULL; 203 return PTR_ERR(gpiod_reset);
203 else 204
204 gpiod_direction_output(priv->gpiod_reset, 1); 205 priv->gpiod_reset = gpiod_reset;
205 206
206 phydev->priv = priv; 207 phydev->priv = priv;
207 208