[U-Boot] [PATCH 3/3] omap3_beagle: enable EHCI and USB storage.
Alexander Holler
holler at ahsoftware.de
Thu May 26 17:41:03 CEST 2011
Am 26.05.2011 13:30, schrieb Christian Spielberger:
> Hi Alexander Holler,
>
> is EHCI on omap3 already working?
>
> On my beagleboard xM
>
> usb start
>
> hangs at this position in method ehci_hcd_init:
>
> + /* perform TLL soft reset, and wait until reset is complete */
> + writel(OMAP_USBTLL_SYSCONFIG_SOFTRESET,
> + OMAP3_USBTLL_BASE + OMAP_USBTLL_SYSCONFIG);
It works on a normal BeagleBoard (720 MHz). On the XM it seems you have
either move the initialization of the usb-clocks a bit upwards (e.g.
before the reset of the phy) or you have to add a check if the clock
runs after it was initialized (before that writel). The XM seems to be
too fast and the peripheral-clock isn't ready when that writel wants to
write to the peripheral-register, therefor it hangs there on a XM.
But even than USB doesn't seem to work on a BeagleBoard XM (at least
some people told me so). I don't have a XM, so I can't help more there.
It might be a problem with (a needed reset of) the HUB which is included
on the XM, I don't know.
And a side note: don't try a kernel compiled with gcc 4.6 on the
BeagleBoard. EHCI on the OMAP3 doesn't come up here when the kernel is
compiled with gcc 4.6. That seems to be specific to OMAP, I don't have
those problems on other ARM hw (I use successfull e.g. EHCI on some
armv5 devices with kernels which are compiled with gcc 4.6).When I
compile the same kernel using gcc 4.5.2 I have no problems with EHCI on
the BeagleBoard. Haven't investigated that further.
Regards,
Alexander
More information about the U-Boot
mailing list