[PATCH] gpio-button-hotplug: do not error on interrupt attached keys
Tim Harvey
tharvey at gateworks.com
Mon Feb 27 16:56:25 PST 2023
The Linux gpio-keys driver bindings allow for GPIO attached or interrupt
attached keys. Currently if an interrupt attached key is encountered
gpio_keys_button_probe() will fail due to not being able to get a gpio
descriptor:
gpio-keys: probe of gpio-keys failed with error -2
Skip the failure in the case of interrupt attached keys to resolve this.
Signed-off-by: Tim Harvey <tharvey at gateworks.com>
---
.../kernel/gpio-button-hotplug/src/gpio-button-hotplug.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c b/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c
index 2b39ec8f3be5..522085bb2fa2 100644
--- a/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c
+++ b/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c
@@ -506,6 +506,13 @@ static int gpio_keys_button_probe(struct platform_device *pdev,
goto out;
}
+ if (button->irq) {
+ dev_err(dev, "skipping button %s (only gpio buttons supported)\n",
+ button->desc);
+ bdata->b = &pdata->buttons[i];
+ continue;
+ }
+
if (gpio_is_valid(button->gpio)) {
/* legacy platform data... but is it the lookup table? */
bdata->gpiod = devm_gpiod_get_index(dev, desc, i,
--
2.25.1
More information about the openwrt-devel
mailing list