genode/repos/dde_linux/patches/usb_hid_evdev.patch

31 lines
932 B
Diff
Raw Normal View History

diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
index c81c79d..a31b866 100644
--- a/drivers/input/evdev.c
+++ b/drivers/input/evdev.c
@@ -1425,6 +1425,7 @@ static int evdev_connect(struct input_handler *handler, struct input_dev *dev,
if (error)
goto err_cleanup_evdev;
+ evdev_open_device(evdev);
return 0;
err_cleanup_evdev:
@@ -1445,6 +1446,7 @@ static void evdev_disconnect(struct input_handle *handle)
evdev_cleanup(evdev);
input_free_minor(MINOR(evdev->dev.devt));
input_unregister_handle(handle);
+ mutex_destroy(&evdev->mutex);
put_device(&evdev->dev);
}
@@ -1456,8 +1458,7 @@ static const struct input_device_id evdev_ids[] = {
MODULE_DEVICE_TABLE(input, evdev_ids);
static struct input_handler evdev_handler = {
- .event = evdev_event,
- .events = evdev_events,
+ .event = genode_evdev_event,
.connect = evdev_connect,
.disconnect = evdev_disconnect,
.legacy_minors = true,