genode/dde_linux
Norman Feske 0dbb5e1696 Propagate 'Range_allocator::alloc_aligned' errors
This patch reflects eventual allocation errors in a more specific way to
the caller of 'alloc_aligned', in particular out-of-metadata and
out-of-memory are considered as different conditions.

Related to issue #526.
2012-11-28 22:51:09 +01:00
..
patches USB: Performance improvements 2012-08-07 22:22:45 +02:00
run Increase quota of USB driver 2012-09-18 10:53:17 +02:00
src/drivers/usb Propagate 'Range_allocator::alloc_aligned' errors 2012-11-28 22:51:09 +01:00
Makefile USB: Support usbnet and smsc95xx for omap4 2012-07-09 17:53:43 +02:00
README USB: Support usbnet and smsc95xx for omap4 2012-07-09 17:53:43 +02:00

Device drivers ported from the Linux kernel

USB
###

HID
~~~

Supports keyboard and mouse. A run script can be found under 'run/usb_hid.run'.

Configuration snippet:

!<start name="usb_drv">
!  <resource name="RAM" quantum="3M"/>
!  <provides><service name="Input"/></provides>
!  <config>
!    <hid/>
!  </config>
!</start>

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.

Storage
~~~~~~~

Currently supports one USB storage device. Hot plugging has not been tested. A
run script can be found under 'run/usb_storage.run'.

Configuration snippet:

!<start name="usb_drv">
!  <resource name="RAM" quantum="2M"/>
!  <provides> <service name="Block"/> </provides>
!  <config><storage /></config>
!</start>


Network (Nic)
~~~~~~~~~~~~~

Supported on PandaBoard only using the 'smsc95xx' driver.

Configuration snippet:

!<start name="usb_drv">
!  <resource name="RAM" quantum="3M"/>
!  <provides>
!    <service name="Nic"/>
!    <service name="Input"/>
!  </provides>
!  <config>
!    <nic mac="2e:60:90:0c:4e:01" />
!    <hid/>
!  </config>
!</start>

Please observe that this setup starts the HID and Nic service at the same time.
Also there is the 'mac' attribute where one can specify the hardware address of
the network interface. This is necessary in case the EEPROM of the network card
cannot be accessed via the host controller making it impossible to retrieve the
devices hardware address. If this is the case and no 'mac' attribute is given a
fallback address will be assigned to the network device. Note that the fallback
address will always be the same.