Input: gpio-keys - add support for disabling gpios through sysfs
authorMika Westerberg <ext-mika.1.westerberg@nokia.com>
Thu, 4 Feb 2010 08:48:00 +0000 (00:48 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 4 Feb 2010 08:50:44 +0000 (00:50 -0800)
commit9e3af04f8787315f63f55b191bb9a06741dbf183
treec08a9f88077ece1a232ce67ade8a22536d5464df
parent3d7bbd4575cfb23e6ef7368fff1f7d7e198b7930
Input: gpio-keys - add support for disabling gpios through sysfs

Now gpio-keys input driver exports 4 new attributes to userland through
sysfs:
/sys/devices/platform/gpio-keys/keys [ro]
/sys/devices/platform/gpio-keys/switches [ro]
/sys/devices/platform/gpio-keys/disabled_keys [rw]
/sys/devices/platform/gpio-keys/disables_switches [rw]

With these attributes, userland program can read which keys and
switches can be disabled and then disable/enable them as needed.
Keys and switches are exported as stringified bitmap of codes
(keycodes or switch codes). For example keys 15, 89, 100, 101,
102 are exported as: '15,89,100-102'.

Description of the attributes:
keys - bitmap of keys which can be disabled
switches - bitmap of switches which can be disabled
disabled_keys - bitmap of currently disabled keys
(bit 1 means disabled, 0 enabled)
disabled_switches - bitmap of currently disabled switches
(bit 1 means disabled, 0 enabled)

Signed-off-by: Mika Westerberg <ext-mika.1.westerberg@nokia.com>
Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
drivers/input/keyboard/gpio_keys.c
include/linux/gpio_keys.h