|
@@ -1251,6 +1251,14 @@ static void eeepc_input_exit(struct eeepc_laptop *eeepc)
|
|
|
/*
|
|
|
* ACPI driver
|
|
|
*/
|
|
|
+static void eeepc_input_notify(struct eeepc_laptop *eeepc, int event)
|
|
|
+{
|
|
|
+ if (!eeepc->inputdev)
|
|
|
+ return ;
|
|
|
+ if (!sparse_keymap_report_event(eeepc->inputdev, event, 1, true))
|
|
|
+ pr_info("Unknown key %x pressed\n", event);
|
|
|
+}
|
|
|
+
|
|
|
static void eeepc_acpi_notify(struct acpi_device *device, u32 event)
|
|
|
{
|
|
|
struct eeepc_laptop *eeepc = acpi_driver_data(device);
|
|
@@ -1287,12 +1295,11 @@ static void eeepc_acpi_notify(struct acpi_device *device, u32 event)
|
|
|
* event will be desired value (or else ignored)
|
|
|
*/
|
|
|
}
|
|
|
- sparse_keymap_report_event(eeepc->inputdev, event,
|
|
|
- 1, true);
|
|
|
+ eeepc_input_notify(eeepc, event);
|
|
|
}
|
|
|
} else {
|
|
|
/* Everything else is a bona-fide keypress event */
|
|
|
- sparse_keymap_report_event(eeepc->inputdev, event, 1, true);
|
|
|
+ eeepc_input_notify(eeepc, event);
|
|
|
}
|
|
|
}
|
|
|
|