Hi Olliver, On Wed, Jan 21, 2015 at 10:33:48PM +0100, Olliver Schinagl wrote: > diff --git a/drivers/input/keyboard/gpio_keys_polled.c b/drivers/input/keyboard/gpio_keys_polled.c > index 097d721..eadb472 100644 > --- a/drivers/input/keyboard/gpio_keys_polled.c > +++ b/drivers/input/keyboard/gpio_keys_polled.c > @@ -125,15 +125,19 @@ static struct gpio_keys_platform_data *gpio_keys_polled_get_devtree_pdata(struct > device_for_each_child_node(dev, child) { > struct gpio_desc *desc; > > - desc = devm_get_gpiod_from_child(dev, NULL, child); > + desc = devm_get_gpiod_from_child(dev, "gpio_keys_polled", > + child); > if (IS_ERR(desc)) { > - error = PTR_ERR(desc); > - if (error != -EPROBE_DEFER) > - dev_err(dev, > - "Failed to get gpio flags, error: %d\n", > - error); > - fwnode_handle_put(child); > - return ERR_PTR(error); > + desc = devm_get_gpiod_from_child(dev, NULL, child); > + if (IS_ERR(desc)) { > + error = PTR_ERR(desc); > + if (error != -EPROBE_DEFER) > + dev_err(dev, > + "Failed to get gpio flags, error: %d\n", > + error); > + fwnode_handle_put(child); > + return ERR_PTR(error); > + } > } > I do not think this is correct. If devm_get_gpiod_from_child(dev, "gpio_keys_polled", child) retruns -EPROBE_DEFER we'll try devm_get_gpiod_from_child(dev, NULL, child). If that returns some other error we'll fail probing entire driver. Did I mention how *I HATE* the -EPROBE_DEFER (the error that is not an error)? Thanks. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html