aboutsummaryrefslogtreecommitdiff
path: root/drivers/input/misc
diff options
context:
space:
mode:
author=?UTF-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= <arve@android.com>2011-12-13 01:19:24 +0800
committerAndy Green <andy.green@linaro.org>2012-01-09 10:46:05 +0800
commitb89da32e7dc3ea3e32fcb04a0be90b4b40eb1a50 (patch)
treef2819521994ace8a19d8ed1d4e26947bec53b5bf /drivers/input/misc
parent9967dea79b449a8158e8091e3811b2a737b9fc8f (diff)
Input: gpio_input: Fix keys with keycode 0x100-0x1ff
MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit KEY_MAX is no longer a power of 2. Signed-off-by: Arve Hjønnevåg <arve@android.com>
Diffstat (limited to 'drivers/input/misc')
-rw-r--r--drivers/input/misc/gpio_matrix.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/input/misc/gpio_matrix.c b/drivers/input/misc/gpio_matrix.c
index 441cc1ce1ab..10b44110166 100644
--- a/drivers/input/misc/gpio_matrix.c
+++ b/drivers/input/misc/gpio_matrix.c
@@ -316,9 +316,8 @@ int gpio_event_matrix_func(struct input_dev *input_dev,
kp->keypad_info = mi;
set_bit(EV_KEY, input_dev->evbit);
for (i = 0; i < key_count; i++) {
- if (mi->keymap[i])
- set_bit(mi->keymap[i] & KEY_MAX,
- input_dev->keybit);
+ if (mi->keymap[i] && mi->keymap[i] <= KEY_MAX)
+ set_bit(mi->keymap[i], input_dev->keybit);
}
for (i = 0; i < mi->noutputs; i++) {