From 2760b7c8ece34f637afebe4e1e099f6dbed362b1 Mon Sep 17 00:00:00 2001 From: Thomas Richard Date: Tue, 24 Sep 2024 18:13:00 +0200 Subject: gpio-button-hotplug: skip disabled buttons Ignore buttons which are disabled in the devicetree. Reviewed-by: Rosen Penev Signed-off-by: Thomas Richard Link: https://patchwork.ozlabs.org/project/openwrt/patch/mailman.117522.1727194512.1280.openwrt-devel@lists.openwrt.org/ Signed-off-by: Hauke Mehrtens --- package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c') 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 de100777f24..1dd0ff2a1a1 100644 --- a/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c +++ b/package/kernel/gpio-button-hotplug/src/gpio-button-hotplug.c @@ -373,7 +373,7 @@ gpio_keys_get_devtree_pdata(struct device *dev) if (!node) return NULL; - nbuttons = of_get_child_count(node); + nbuttons = of_get_available_child_count(node); if (nbuttons == 0) return ERR_PTR(-EINVAL); @@ -388,7 +388,7 @@ gpio_keys_get_devtree_pdata(struct device *dev) pdata->rep = !!of_get_property(node, "autorepeat", NULL); of_property_read_u32(node, "poll-interval", &pdata->poll_interval); - for_each_child_of_node(node, pp) { + for_each_available_child_of_node(node, pp) { button = (struct gpio_keys_button *)(&pdata->buttons[i++]); if (of_property_read_u32(pp, "linux,code", &button->code)) { -- cgit v1.2.3