An error occurred while fetching folder content.
[PATCH] USB: sl811-hcd driver, replaces hc_sl811
David Brownell authored

This patch provides a new "sl811-hcd" driver, which should replace the older
one from Cypress (which has been broken for ages, even on SA-1100).

Key features of this new driver:

 - Small, relatively tight code;
 - Uses the 2.6 platform_device and usbcore HCD infrastructures;
 - Compiles (x86, ARM) and works (ARM/PXA255);
 - Passed a day's worth of "usbtest" stress testing (on 2.6.9).

I've enumerated over a dozen different devices with it, and actually tested
mice, hubs, keyboards, and usb-storage.  There's a hardware erratum that
prevents this chip from working with certain external hubs.  There's scope
yet for some performance work here; and some IRQ quirks linger.

This PIO-only driver should serve as a model for some other non-DMA USB host
controllers (like isp1161, isp1362, td243) used in embedded Linuxes ... in
particular, showing how to maintain async and periodic schedules without
pointless emulation of OHCI DMA queues and/or registers.

The driver should handle ISO, but since it doesn't implement the special
urb->iso_frame_desc[] "pseudo-queue" model (and since Linux can't guarantee
low enough IRQ latencies!), ISO is disabled.
Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarGreg Kroah-Hartman <greg@kroah.com>
d3e8ea41
Name Last commit Last update