USB HCD driver

Greg KH greg at kroah.com
Mon Jun 4 18:56:01 EDT 2012


On Sun, Jun 03, 2012 at 10:56:36PM +0100, Simon Arlott wrote:
> On 03/06/12 22:08, Greg KH wrote:
> > On Sun, Jun 03, 2012 at 07:06:37PM +0100, Simon Arlott wrote:
> >> I'm giving up on writing a USB HCD driver.
> >> 
> >> There's no specification on how to use the hardware, only a mountain of
> >> documentation on the driver itself which is needlessly full of wrappers
> >> making it very difficult to understand what it's actually doing.
> >> 
> >> This could really use some attention from someone with enough USB
> >> experience to understand what the original driver is really doing in
> >> order to rewrite it.
> > 
> > I know a bit about USB :)
> > 
> > I thought that I applied some patches recently that showed up in 3.5-rc1
> > that should work for this hardware, have you checked there to see if
> > that really is true or not?
> 
> I'm not sure what driver you're referring to... even the existing driver
> for device mode (s3c-hsotg) doesn't appear to be named correctly.

Yes, that's the one I was referring to.  The name is not "correct" that
is true, but the logic should be correct, right?

> > And if not, where would a good place for me to start be?
> 
> http://dl.dropbox.com/u/3669512/DWC_otg_2.94a.tgz is the most recent
> version of the driver provided by Synopsys. I've not tried to run it.

Is that the one that is in the "prebuilt" images that are being used
at the moment?

> The Synopsys driver on github in raspberrypi/rpi-patches was giving me
> lockdep warnings and deadlocking (with full preempt turned on) and the
> memory debugging was continually warning: http://s85.org/aygDp9tm:view
> 
> You'd need a recent kernel that boots... git://github.com/lp0/linux
> tag rpi-3.5-20120529-2242 will work if you manually update the .dtb.
> Unfortunately there's no SD support in that branch either so you need to
> use an initrd for everything.
> 
> There's also git://github.com/bootc/linux branch rpi-3.2.18 which is an
> updated of the 3.1.9 version of rpi-patches. If you try to merge 3.5
> into that then you need to watch out for issues with io.h and memory.h.
> 
> My rpi-usb branch needs quite a bit of cleaning up but it's able to
> enable the port on the root hub. That could be a reasonable place to
> start if you're only interested in HCD support. To test full OTG support
> would require a Model A or a bypass of the hub included on the Model B.

Thanks for the hints above.  I'm traveling for a few weeks and will not
have a chance to look into any of this for a while, but if no one picks
it up by then, maybe I'll have a go.

thanks,

greg k-h



More information about the linux-rpi-kernel mailing list