diff options
author | Olof Johansson <olof@lixom.net> | 2013-01-14 19:20:02 +0100 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-01-14 19:20:02 +0100 |
commit | 8d84981e395850aab31c3f2ca7e2738e03f671d7 (patch) | |
tree | 933425fddb23d28be802277471df3fe3f6c2711d /drivers/input/keyboard/gpio_keys.c | |
parent | Merge branch 'timer/cleanup' into next/cleanup (diff) | |
parent | clocksource: use clockevents_config_and_register() where possible (diff) | |
download | linux-8d84981e395850aab31c3f2ca7e2738e03f671d7.tar.xz linux-8d84981e395850aab31c3f2ca7e2738e03f671d7.zip |
Merge branch 'clocksource/cleanup' into next/cleanup
Clockevent cleanup series from Shawn Guo.
Resolved move/change conflict in mach-pxa/time.c due to the sys_timer
cleanup.
* clocksource/cleanup:
clocksource: use clockevents_config_and_register() where possible
ARM: use clockevents_config_and_register() where possible
clockevents: export clockevents_config_and_register for module use
+ sync to Linux 3.8-rc3
Signed-off-by: Olof Johansson <olof@lixom.net>
Conflicts:
arch/arm/mach-pxa/time.c
Diffstat (limited to 'drivers/input/keyboard/gpio_keys.c')
-rw-r--r-- | drivers/input/keyboard/gpio_keys.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c index d327f5a2bb0e..b29ca651a395 100644 --- a/drivers/input/keyboard/gpio_keys.c +++ b/drivers/input/keyboard/gpio_keys.c @@ -602,6 +602,7 @@ gpio_keys_get_devtree_pdata(struct device *dev) i = 0; for_each_child_of_node(node, pp) { + int gpio; enum of_gpio_flags flags; if (!of_find_property(pp, "gpios", NULL)) { @@ -610,9 +611,19 @@ gpio_keys_get_devtree_pdata(struct device *dev) continue; } + gpio = of_get_gpio_flags(pp, 0, &flags); + if (gpio < 0) { + error = gpio; + if (error != -EPROBE_DEFER) + dev_err(dev, + "Failed to get gpio flags, error: %d\n", + error); + goto err_free_pdata; + } + button = &pdata->buttons[i++]; - button->gpio = of_get_gpio_flags(pp, 0, &flags); + button->gpio = gpio; button->active_low = flags & OF_GPIO_ACTIVE_LOW; if (of_property_read_u32(pp, "linux,code", &button->code)) { |