Hi,
On Mon, Aug 22, 2016 at 02:49:16PM +0800, Wenyou Yang wrote:
[...]
- chglev_pin = of_get_named_gpio_flags(np,
- "active-semi,chglev-gpios", 0, &flags);
-
- if (gpio_is_valid(chglev_pin)) {
- gpio_set_value(chglev_pin,
- ((flags == OF_GPIO_ACTIVE_LOW) ? 0 : 1));
+ charger->chglev_gpio = gpiod_get(dev->parent,
+ "active-semi,chglev", GPIOD_IN);
+ if (PTR_ERR(charger->chglev_gpio) == -EPROBE_DEFER) {
+ dev_info(dev, "probe retry requested for gpio \"chglev\"\n");
missing return? You need to return EPROBE_DEFER in probe().
+ } else if (IS_ERR(charger->chglev_gpio)) {
+ dev_err(dev, "unable to claim gpio \"chglev\"\n");
+ charger->chglev_gpio = NULL;
}
[...]
-- Sebastian