From: Max Reitz <max@xxxxxxxxxx>
This series adds some long-missing USB drivers to the CDI repository
(and defines the required interfaces).
For now, it only supports control and bulk transfers (which are enough
for mass storage devices), no hotplugging, no suspend/resume, neither a
lot of other things.
The drivers added by this series are an EHCI driver, a USB 2.0 bus
driver (including a hub driver), and a bulk-only mass storage driver
(with a SCSI interface; should be the right thing to drive your average
thumb drive (and maybe even HDDs), but will not work for e.g. USB floppy
drives).
I tested these drivers using µxoµcota in qemu and on a real machine
(which only has EHCIs and xHCIs; every EHCI has a high speed hub to
communicate with low and full speed devices, so there is no need for
companion controllers).