The input_sync() function will already be called within gpio_keys_gpio_report_event(), so there's no need to call it again after the loop in gpio_keys_report_state(). Signed-off-by: Paul Cercueil <paul@xxxxxxxxxxxxxxx> --- drivers/input/keyboard/gpio_keys.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c index 77bac4ddf324..0be204693ab0 100644 --- a/drivers/input/keyboard/gpio_keys.c +++ b/drivers/input/keyboard/gpio_keys.c @@ -641,7 +641,6 @@ static int gpio_keys_setup_key(struct platform_device *pdev, static void gpio_keys_report_state(struct gpio_keys_drvdata *ddata) { - struct input_dev *input = ddata->input; int i; for (i = 0; i < ddata->pdata->nbuttons; i++) { @@ -649,7 +648,6 @@ static void gpio_keys_report_state(struct gpio_keys_drvdata *ddata) if (bdata->gpiod) gpio_keys_gpio_report_event(bdata); } - input_sync(input); } static int gpio_keys_open(struct input_dev *input) -- 2.30.1