mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-30 18:47:01 +00:00
9f73476b37
The new 'dde_linux' repository will host device drivers ported from the Linux kernel. In contrast to the original 'linux_drivers' repository, 'dde_linux' does not contain any 3rd-party source code. To download the Linux kernel source code and extract the drivers, execute the 'make prepare' rule of the top-level Makefile. The initial version of the 'dde_linux' repository comes with an USB driver. The porting methodology follows the path of the Intel GEM port. Instead of attempting to provide a generic Linux environment that works across drivers, each driver comes with a specially tailored DDE. The DDE consists of Genode-specific implementations of Linux API functions as declared in 'lx_emul.h'. Most of these functions are dummies that must merely be provided to resolve dependencies at the linking stage. They are called by unused code-paths. As of now, the USB driver support UHCI, EHCI on the x86_32 platform. I exposes USB HID devices and USB storage devices via Genode's input-session and block-session respectively. The USB driver is accompanied with two run scripts 'run/usb_hid.run' and 'run/usb_storage.run'.
23 lines
578 B
Diff
23 lines
578 B
Diff
diff -r 1d04c9c5fa8a drivers/input/evdev.c
|
|
--- a/drivers/input/evdev.c Tue Apr 17 16:14:54 2012 +0200
|
|
+++ b/drivers/input/evdev.c Wed Apr 18 11:25:37 2012 +0200
|
|
@@ -957,6 +957,9 @@
|
|
if (error)
|
|
goto err_cleanup_evdev;
|
|
|
|
+ evdev_open_device(evdev);
|
|
+ dev_info(evdev, "%s\n", dev->name);
|
|
+
|
|
return 0;
|
|
|
|
err_cleanup_evdev:
|
|
@@ -986,7 +989,7 @@
|
|
MODULE_DEVICE_TABLE(input, evdev_ids);
|
|
|
|
static struct input_handler evdev_handler = {
|
|
- .event = evdev_event,
|
|
+ .event = genode_evdev_event,
|
|
.connect = evdev_connect,
|
|
.disconnect = evdev_disconnect,
|
|
.fops = &evdev_fops,
|