Browse Source

Input: sparse-keymap - send sync event for KE_SW/KE_VSW

Sync events are sent by sparse_keymap_report_entry for normal KEY_*
events, and are generated by several drivers after generating
SW_* events, so sparse_keymap_report_entry should do the same.

Without the sync, events are accumulated in the kernel.

Currently, no driver uses sparse-keymap for SW_* events, but
it is required for the intel-vbtn platform driver to generate
SW_TABLET_MODE events.

Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Stefan Brüns 7 years ago
parent
commit
6f29c24407
1 changed files with 1 additions and 0 deletions
  1. 1 0
      drivers/input/sparse-keymap.c

+ 1 - 0
drivers/input/sparse-keymap.c

@@ -255,6 +255,7 @@ void sparse_keymap_report_entry(struct input_dev *dev, const struct key_entry *k
 
 
 	case KE_VSW:
 	case KE_VSW:
 		input_report_switch(dev, ke->sw.code, value);
 		input_report_switch(dev, ke->sw.code, value);
+		input_sync(dev);
 		break;
 		break;
 	}
 	}
 }
 }