mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
thinkpad_acpi: Always report scancodes for hotkeys
Some thinkpad hotkeys report key codes like KEY_FN_F8 when something like KEY_VOLUMEDOWN is desired. Always provide the scan codes in addition to the key codes to assist with debugging these issues. Also send the scan code before the key code to match what other drivers do, as some userspace utilities expect this ordering. Signed-off-by: Seth Forshee <seth.forshee@canonical.com> Signed-off-by: Matthew Garrett <mjg@redhat.com>
This commit is contained in:
parent
bbb706079a
commit
5ffba7e696
@ -2275,16 +2275,12 @@ static void tpacpi_input_send_key(const unsigned int scancode)
|
|||||||
if (keycode != KEY_RESERVED) {
|
if (keycode != KEY_RESERVED) {
|
||||||
mutex_lock(&tpacpi_inputdev_send_mutex);
|
mutex_lock(&tpacpi_inputdev_send_mutex);
|
||||||
|
|
||||||
|
input_event(tpacpi_inputdev, EV_MSC, MSC_SCAN, scancode);
|
||||||
input_report_key(tpacpi_inputdev, keycode, 1);
|
input_report_key(tpacpi_inputdev, keycode, 1);
|
||||||
if (keycode == KEY_UNKNOWN)
|
|
||||||
input_event(tpacpi_inputdev, EV_MSC, MSC_SCAN,
|
|
||||||
scancode);
|
|
||||||
input_sync(tpacpi_inputdev);
|
input_sync(tpacpi_inputdev);
|
||||||
|
|
||||||
|
input_event(tpacpi_inputdev, EV_MSC, MSC_SCAN, scancode);
|
||||||
input_report_key(tpacpi_inputdev, keycode, 0);
|
input_report_key(tpacpi_inputdev, keycode, 0);
|
||||||
if (keycode == KEY_UNKNOWN)
|
|
||||||
input_event(tpacpi_inputdev, EV_MSC, MSC_SCAN,
|
|
||||||
scancode);
|
|
||||||
input_sync(tpacpi_inputdev);
|
input_sync(tpacpi_inputdev);
|
||||||
|
|
||||||
mutex_unlock(&tpacpi_inputdev_send_mutex);
|
mutex_unlock(&tpacpi_inputdev_send_mutex);
|
||||||
|
Loading…
Reference in New Issue
Block a user