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@nvidia.com>
---
drivers/input/keyboard/gpio_keys.c | 8 ++++++++
1 file changed, 8 insertions(+)
@@ -632,6 +632,14 @@ gpio_keys_get_devtree_pdata(struct device *dev)for_each_child_of_node(node,pp){enumof_gpio_flagsflags;+/* Ignore the button if status of node is disabled */+error=of_device_is_available(pp);+if(!error){+dev_info(dev,"Button %s is ignored\n",pp->name);+pdata->nbuttons--;+continue;+}+button=&pdata->buttons[i++];button->gpio=of_get_gpio_flags(pp,0,&flags);
Add support from DT to name the gpio-keys driver to have
desired key name for this input system.
This helps userspace code to get name and perform proper
event to key mapping in some of cases. In android, the
user space map the key code to application code using
key character layout and for this it uses the name of
input system.
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
---
Documentation/devicetree/bindings/input/gpio-keys.txt | 1 +
drivers/input/keyboard/gpio_keys.c | 2 ++
2 files changed, 3 insertions(+)
From: Rob Herring <robh@kernel.org> Date: 2016-01-12 14:43:08
On Tue, Jan 12, 2016 at 05:02:50PM +0530, Laxman Dewangan wrote:
Add support from DT to name the gpio-keys driver to have
desired key name for this input system.
This helps userspace code to get name and perform proper
event to key mapping in some of cases. In android, the
user space map the key code to application code using
key character layout and for this it uses the name of
input system.
@@ -4,6 +4,7 @@ Required properties: - compatible = "gpio-keys"; Optional properties:+ - gpio-keys,name: String, name of the gpio-keys input system.
gpio-keys is not a vendor.
Would "label" work for you instead?
Either way, I'm concerned this doesn't work for other key bindings
which have multiple keys.
- autorepeat: Boolean, Enable auto repeat feature of Linux input
subsystem.
On Tuesday 12 January 2016 08:13 PM, Rob Herring wrote:
On Tue, Jan 12, 2016 at 05:02:50PM +0530, Laxman Dewangan wrote:
quoted
Add support from DT to name the gpio-keys driver to have
desired key name for this input system.
This helps userspace code to get name and perform proper
event to key mapping in some of cases. In android, the
user space map the key code to application code using
key character layout and for this it uses the name of
input system.
Why is specifying the key code not enough?
This is the name for input system instead of individual keys.
In android system, the key mapping is done in user space. By having name
offers to specifying the customized key character layout instead of
generic one form android which is fall-back.
From: Rob Herring <robh@kernel.org> Date: 2016-01-12 15:24:23
On Tue, Jan 12, 2016 at 8:55 AM, Laxman Dewangan [off-list ref] wrote:
On Tuesday 12 January 2016 08:13 PM, Rob Herring wrote:
quoted
On Tue, Jan 12, 2016 at 05:02:50PM +0530, Laxman Dewangan wrote:
quoted
Add support from DT to name the gpio-keys driver to have
desired key name for this input system.
This helps userspace code to get name and perform proper
event to key mapping in some of cases. In android, the
user space map the key code to application code using
key character layout and for this it uses the name of
input system.
Why is specifying the key code not enough?
This is the name for input system instead of individual keys.
In android system, the key mapping is done in user space. By having name
offers to specifying the customized key character layout instead of generic
one form android which is fall-back.
@@ -4,6 +4,7 @@ Required properties: - compatible = "gpio-keys"; Optional properties:+ - gpio-keys,name: String, name of the gpio-keys input system.
gpio-keys is not a vendor.
Would "label" work for you instead?
"label" means node name?
No, the standard label property. See gpio-leds for an example.
quoted
Either way, I'm concerned this doesn't work for other key bindings
which have multiple keys.
This is not for the individual keys, its for input system like
/sys/class/input/input0/name.
So label is exactly for this purpose of defining user meaningful names.
Rob
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, Jan 12, 2016 at 05:02:49PM +0530, Laxman Dewangan wrote:
quoted hunk
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@nvidia.com>
---
drivers/input/keyboard/gpio_keys.c | 8 ++++++++
1 file changed, 8 insertions(+)
@@ -632,6 +632,14 @@ gpio_keys_get_devtree_pdata(struct device *dev)for_each_child_of_node(node,pp){enumof_gpio_flagsflags;+/* Ignore the button if status of node is disabled */+error=of_device_is_available(pp);+if(!error){+dev_info(dev,"Button %s is ignored\n",pp->name);