diff options
Diffstat (limited to 'drivers/input/input.c')
| -rw-r--r-- | drivers/input/input.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/input/input.c b/drivers/input/input.c index ccaeb2426385..c3139bc2aa0d 100644 --- a/drivers/input/input.c +++ b/drivers/input/input.c @@ -2285,6 +2285,12 @@ int input_register_device(struct input_dev *dev)  	/* KEY_RESERVED is not supposed to be transmitted to userspace. */  	__clear_bit(KEY_RESERVED, dev->keybit); +	/* Buttonpads should not map BTN_RIGHT and/or BTN_MIDDLE. */ +	if (test_bit(INPUT_PROP_BUTTONPAD, dev->propbit)) { +		__clear_bit(BTN_RIGHT, dev->keybit); +		__clear_bit(BTN_MIDDLE, dev->keybit); +	} +  	/* Make sure that bitmasks not mentioned in dev->evbit are clean. */  	input_cleanse_bitmasks(dev);  |