diff options
Diffstat (limited to 'drivers/input/keyboard/matrix_keypad.c')
| -rw-r--r-- | drivers/input/keyboard/matrix_keypad.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/input/keyboard/matrix_keypad.c b/drivers/input/keyboard/matrix_keypad.c index d3c8b61a941..b443e088fd3 100644 --- a/drivers/input/keyboard/matrix_keypad.c +++ b/drivers/input/keyboard/matrix_keypad.c @@ -22,6 +22,7 @@  #include <linux/module.h>  #include <linux/gpio.h>  #include <linux/input/matrix_keypad.h> +#include <linux/slab.h>  struct matrix_keypad {  	const struct matrix_keypad_platform_data *pdata; @@ -373,7 +374,9 @@ static int __devinit matrix_keypad_probe(struct platform_device *pdev)  	input_dev->name		= pdev->name;  	input_dev->id.bustype	= BUS_HOST;  	input_dev->dev.parent	= &pdev->dev; -	input_dev->evbit[0]	= BIT_MASK(EV_KEY) | BIT_MASK(EV_REP); +	input_dev->evbit[0]	= BIT_MASK(EV_KEY); +	if (!pdata->no_autorepeat) +		input_dev->evbit[0] |= BIT_MASK(EV_REP);  	input_dev->open		= matrix_keypad_start;  	input_dev->close	= matrix_keypad_stop;  |