This is a list of the different items that people have expressed they would like to see completed in the 2.5 kernel tree for the USB subsystem.
| Status | Owner | Description |
|---|---|---|
| Ongoing | everyone | Fix all reported bugs |
| It never ends... | ||
| Ongoing | everyone | Add new drivers for new vendor specific devices as needed. |
| Ongoing | everyone | Add new class drivers for USB class drivers as needed. |
| Ongoing | everyone | Document all public USB functions and structures. |
| All current public functions are documented, thanks to David Brownell. But any new functions added need to have documentation. | ||
| Started | David Brownell | USB 2.0 support. |
| Initial support is in 2.5.2, ISO in 2.5.8, and split periodic transaction support to be added as folk start to use highspeed hubs. | ||
| Resolved | David Brownell | Move existing HCDs to use new hcd common core. |
| At this point all in-core HCDs except sl811 and CRIS use it; that covers all common hardware, including some non-PCI OHCI hardware. There's a test framework (usbtest/testusb) that "old style" HCDs should be using, to make sure they act right. | ||
| Pending | greg k-h | Move firmware downloading to user space. |
| The linux-hotplug project has "fxload" which handles all of the known heavy lifting (with support from usbfs). | ||
| Started | N/A | Remove dc2xx (done) and rio500 from kernel tree. |
| Waiting on equavalent user space support. | ||
| Finished | greg k-h | Remove all unnecessary typedefs from include/linux/usb.h. |
| This was done in 2.5.3 | ||
| Finished | greg k-h | Add proper reference counting to urbs. |
| Patches have been submitted to make all USB drivers dynamically allocate their urbs. 2.5.3 has almost a complete implementation of this, but only the hcd based host controller drivers implement this properly. The other host controller drivers still need to be modified. | ||
| Pending | N/A | Add proper reference counting to struct usb_device. |
| Pending | greg k-h | Move more USB Serial driver common code to the USB Serial driver core. |
| Pending | greg k-h | Make USB Serial driver core work with upcoming Serial core changes. |
| Waiting on serial core to show up in the tree. | ||
| Pending | greg k-h | Add console support to USB Serial drivers. |
| Should fall into place very easily due to the Serial core changes planned. | ||
| Started | greg k-h | Add USB Module locking to the core code, and modify all USB drivers to use it. |
| Patches to modify the USB drivers to use the owner field in the usb_driver will be gladly accepted. | ||
| Started | greg k-h | Move USB core to the new driverfs model. |
| Initial driverfs support is now in the kernel. This still needs to be flushed out a bit better. | ||
| Started | David Brownell | Implement a physical naming scheme; submitted for 2.5.9-pre. |
| Supported so far by drivers for host controllers, input, network. Use usb_make_path(). All known open issues relate to user-space support; basically, applications are still making broken assumptions about device naming and persistence. | ||
| Pending | N/A | Clean up different DEBUG macros and levels |
| All of the drivers and the core USB code should implement a consistant set of debugging levels and method of changing them.Pending | ||
| Resolved | N/A | Add control pipe locking. |
| The root problem was resolved by requiring host controllers to queue control (and interrupt) requests, not just bulk and iso. This will be most noticeable with user mode drivers (through usbfs). |