[PATCH V2 1/2] input: gpio-keys: add support for disable button from DT
From: Laxman Dewangan
Date: Wed Jan 13 2016 - 01:24:44 EST
Add support to disable the button from DT via status property
if given button is not supporting on given platforms.
This will help to re-use the existing dtsi file with status
enable/disable across platforms.
Signed-off-by: Laxman Dewangan <ldewangan@xxxxxxxxxx>
---
Changes from V1:
- Converted print to dev_dbg.
drivers/input/keyboard/gpio_keys.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c
index bef317f..08bada8 100644
--- a/drivers/input/keyboard/gpio_keys.c
+++ b/drivers/input/keyboard/gpio_keys.c
@@ -632,6 +632,14 @@ gpio_keys_get_devtree_pdata(struct device *dev)
for_each_child_of_node(node, pp) {
enum of_gpio_flags flags;
+ /* Ignore the button if status of node is disabled */
+ error = of_device_is_available(pp);
+ if (!error) {
+ dev_dbg(dev, "Button %s is ignored\n", pp->name);
+ pdata->nbuttons--;
+ continue;
+ }
+
button = &pdata->buttons[i++];
button->gpio = of_get_gpio_flags(pp, 0, &flags);
--
2.1.4