TODO: - Dan Carpenter would like to see some cleanups to the microframe scheduler code: http://www.mail-archive.com/linux-usb@vger.kernel.org/msg26650.html - Should merge the NAK holdoff patch from Raspberry Pi (http://marc.info/?l=linux-usb&m=137625067103833). But as it stands that patch is incomplete, it needs more investigation to see if it can be made to work for non-Raspberry Pi platforms that lack the special FIQ interrupt that the Pi has. Without this patch, the driver has a high interrupt rate (8K/sec). - The Raspberry Pi platform needs to have support for its FIQ interrupt added, to get the same level of functionality as the downstream driver. The raspberrypi.org developers have indicated they are willing to help with that. - Some of the default driver parameters (see 'struct dwc2_core_params' in core.h) won't work for many platforms. So DT attributes will need to be added for some of these. But that can be done as-needed as new platforms are added. - Eventually the driver should be merged with the s3c-hsotg peripheral mode driver, so that both modes of operation can be supported with a single driver. But I think that can wait till after the driver has been moved to mainline. - After that, OTG support can be added. I'm not sure how much demand there is for that, though, so I have that as a low priority. Please send any patches for this driver to Paul Zimmerman and Greg Kroah-Hartman . And please CC linux-usb too.