Input: cros_ec_keyb - send 'scancodes' in addition to key events
authorDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 10 Dec 2020 01:59:53 +0000 (17:59 -0800)
committerDmitry Torokhov <dmitry.torokhov@gmail.com>
Thu, 10 Dec 2020 02:03:56 +0000 (18:03 -0800)
To let userspace know what 'scancodes' should be used in EVIOCGKEYCODE
and EVIOCSKEYCODE ioctls, we should send EV_MSC/MSC_SCAN events in
addition to EV_KEY/KEY_* events. The driver already declared MSC_SCAN
capability, so it is only matter of actually sending the events.

Link: https://lore.kernel.org/r/X87aOaSptPTvZ3nZ@google.com
Acked-by: Rajat Jain <rajatja@google.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
drivers/input/keyboard/cros_ec_keyb.c

index fc1793c..0a748ae 100644 (file)
@@ -183,6 +183,7 @@ static void cros_ec_keyb_process(struct cros_ec_keyb *ckdev,
                                        "changed: [r%d c%d]: byte %02x\n",
                                        row, col, new_state);
 
+                               input_event(idev, EV_MSC, MSC_SCAN, pos);
                                input_report_key(idev, keycodes[pos],
                                                 new_state);
                        }