/[Development]
ViewVC logotype

Revision 3560


Jump to revision: Previous Next
Author: oxygene
Date: Tue Sep 2 16:06:22 2008 UTC (4 years, 8 months ago)
Changed paths: 17
Log Message:
This patch adds USB capabilities to libpayload. It requires some
memalign implementation (eg. the one I sent yesterday).
Features:
 - UHCI controller driver
 - UHCI root hub driver
 - USB MSC (Mass Storage Class) driver
 - skeleton of a USB HID driver
   (requires better interrupt transfer handling, which is TODO)
 - skeleton of a USB hub driver
   (needs several blank spots filled in, eg. power management.
    Again: TODO)

OHCI and EHCI are not supported, though OHCI support should be rather
easy as the stack provides reasonable abstractions (or so I hope). EHCI
will probably be more complicated.

Isochronous transfers (eg. webcams, audio stuff, ...) are not supported.
They can be, but I doubt we'll have a reason for that in the boot
environment.

The MSC driver was tested against a couple of USB flash drives, and
should be reasonably tolerant by now. But I probably underestimate
the amount of bugs present in USB flash drives, so feedback is welcome.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Jordan Crouse <jordan.crouse@amd.com>


Changed paths

Path Details
Directorytrunk/payloads/libpayload/Config.in modified , text changed
Directorytrunk/payloads/libpayload/Makefile modified , text changed
Directorytrunk/payloads/libpayload/drivers/Makefile.inc modified , text changed
Directorytrunk/payloads/libpayload/drivers/usb/ added
Directorytrunk/payloads/libpayload/drivers/usb/TODO added
Directorytrunk/payloads/libpayload/drivers/usb/uhci.c added
Directorytrunk/payloads/libpayload/drivers/usb/uhci.h added
Directorytrunk/payloads/libpayload/drivers/usb/uhci_rh.c added
Directorytrunk/payloads/libpayload/drivers/usb/usb.c added
Directorytrunk/payloads/libpayload/drivers/usb/usb.h added
Directorytrunk/payloads/libpayload/drivers/usb/usb_dev.c added
Directorytrunk/payloads/libpayload/drivers/usb/usbdisk.h added
Directorytrunk/payloads/libpayload/drivers/usb/usbhid.c added
Directorytrunk/payloads/libpayload/drivers/usb/usbhub.c added
Directorytrunk/payloads/libpayload/drivers/usb/usbinit.c added
Directorytrunk/payloads/libpayload/drivers/usb/usbmsc.c added
Directorytrunk/payloads/libpayload/drivers/usb/usbmsc.h added

Stefan Reinauer">Stefan Reinauer
ViewVC Help
Powered by ViewVC 1.1.15