50 lines
1.6 KiB
Plaintext
50 lines
1.6 KiB
Plaintext
USB HID driver
|
|
##############
|
|
|
|
Supports keyboard and mouse connected via USB.
|
|
It connects to one or multiple USB sessions. A run script can be found
|
|
under 'run/usb_hid.run'.
|
|
|
|
Configuration snippet:
|
|
|
|
!<start name="usb_hid_drv">
|
|
! <resource name="RAM" quantum="10M"/>
|
|
! <provides><service name="Input"/></provides>
|
|
! <config use_report="yes"/>
|
|
!</start>
|
|
|
|
When the use_report attribute is set, the HID driver will request a ROM called
|
|
"report" that is used to iterate over all devices provided by the USB host
|
|
controller driver (resp. a rom filter). In that mode the driver tries to
|
|
claim all HID devices (class 0x3) via dedicated USB sessions.
|
|
|
|
Note: It has been observed that certain 1.0 versions of Qemu do not generate
|
|
mouse interrupts. The mouse driver should work correctly on Qemu 1.0.93 and
|
|
above.
|
|
|
|
HID - Touchscreen support
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Touchscreen absolute coordinates must be calibrated (e.g. re-calculated) to
|
|
screen absolute coordinates. The screen resolution is not determined
|
|
automatically by the HID driver, but can be configured:
|
|
|
|
!...
|
|
!<config touchscreen width="1024" height="768" multitouch="no"/>
|
|
!...
|
|
|
|
If a touchscreen is multi-touch-capable than the multitouch attribute gears
|
|
which type of Genode input events are generated. If set to 'no' (default)
|
|
than absolute events are generated and no multitouch events. If set to 'yes'
|
|
solely multitouch events are generated.
|
|
|
|
Keyboard LED handling
|
|
~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
The state of the keyboard LEDs like capslock can be controlled by providing
|
|
a corresponding ROM to the driver and configure it appropriatedly:
|
|
|
|
!...
|
|
!<config capslock_led="rom" numlock_led="rom" scrlock_led="rom"/>
|
|
!...
|