Input: gpio_input: Fix keys with keycode 0x100-0x1ff
authorArve Hjønnevåg <arve@android.com>
Wed, 15 Jul 2009 03:58:41 +0000 (20:58 -0700)
committerArve Hjønnevåg <arve@android.com>
Mon, 8 Feb 2010 23:07:47 +0000 (15:07 -0800)
KEY_MAX is no longer a power of 2.

Signed-off-by: Arve Hjønnevåg <arve@android.com>
drivers/input/misc/gpio_matrix.c

index c1f47651a4937d5c976a9625ca5da389dd7e4a7c..671ebb0ce1c6b080d3760ed4214bd98c890ff9f5 100644 (file)
@@ -315,9 +315,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++) {