On Tue, Jan 29, 2019 at 11:30:27AM +0800, YueHaibing wrote:
> >>            gpiod = fwnode_get_named_gpiod(&mdiodev->dev.of_node->fwnode,
> >>                                           "reset-gpios", 0, GPIOD_OUT_LOW,
> >>                                           "PHY reset");
> >> -  if (PTR_ERR(gpiod) == -ENOENT ||
> >> -      PTR_ERR(gpiod) == -ENOSYS)
> >> -          gpiod = NULL;
> >> -  else if (IS_ERR(gpiod))
> >> -          return PTR_ERR(gpiod);
> >> +  if (IS_ERR(gpiod)) {
> >> +          ret = PTR_ERR(gpiod);
> >> +          if (ret == -ENOENT || ret == -ENOSYS)
> >> +                  gpiod = NULL;
> >> +          else
> >> +                  return ret;
> >> +  }

Rule of the thumb: PTR_ERR(p) == -E... is almost always better off
as p == ERR_PTR(-E...)

Reply via email to