USB Host port inoperative after kexec on Beagleboard
Will Deacon
will.deacon at arm.com
Mon Jan 9 18:03:31 EST 2012
On Mon, Jan 09, 2012 at 10:54:03PM +0000, Will Deacon wrote:
> On Mon, Jan 09, 2012 at 10:09:54PM +0000, Peter Chubb wrote:
> >
> > Hi Will,
>
> Hi Peter [adding linux-arm-kernel],
*Actually* adding linux-arm-kernel this time...
>
> > Thanks for the fixes to kexec for ARM that went into mainline this
> > week. Mostly things work now.
>
> Great, that's good to hear!
>
> > One issue: the USB EHCI port on the (rev C2) beagleboard doesn't
> > work after a kexec. During boot after kexec, the host device is
> > detected and initialised, but nothing plugged in works, even when
> > everything was working corectly before the kexec. Das U-boot
> > must set up something that is then undone during the kexec reboot.
>
> Ouch. Have you had a chance to look at the u-boot sources to see what it
> does?
>
> > I've traced all calls to clk_enable() and clk_disable(), and
> > everything looks all right --- in particular I can't see
> > anything explicitly disabled during kexec that isn't reenabled
> > during boot of the subsequent kernel.
> >
> > Voltages that I can measure look correct on the port.
> >
> > Do you have any suggestions as to what else could be wrong?
>
> I'm afraid I'm not familiar with the Beagleboard, so I can't begin to guess.
> Have you tried re-initialising the host controller in the new kernel
> manually (perhaps my building the driver as a module and {un}loading it a
> few times?). It could be that some hardware state persists across the kexec
> and it just needs resetting.
>
> Will
More information about the kexec
mailing list