[U-Boot] [PATCH v3] usb: omap: ulpi: fix ulpi transceiver access

Marek Vasut marex at denx.de
Sun Jun 9 23:49:04 CEST 2013


Dear Michael Trimarchi,

> Hi Marek
> 
> On 06/09/2013 11:09 PM, Marek Vasut wrote:
> > Dear Michael Trimarchi,
> > 
> >> Dear Marek
> >> 
> >> On 06/09/2013 10:05 PM, Marek Vasut wrote:
> >>> Dear Michael Trimarchi,
> >>> 
> >>>> This patch fix the omap access to the transceiver
> >>>> configuration registers using the ulpi bus. As reported by
> >>>> the documentation the bit31 is used only to check if the
> >>>> transaction is done or still running and the reading and
> >>>> writing operation have different offset and have different
> >>>> values. What we need to do at the end of a transaction is
> >>>> leave the bus in done state. Anyway an error using the ulpi
> >>>> omap register is not recoverable so any error give out the
> >>>> usage of this interface.
> >>>> 
> >>>> Signed-off-by: Michael Trimarchi <michael at amarulasolutions.com>
> >>>> Reviewed-by: Igor Grinberg <grinberg at compulab.co.il>
> >>> 
> >>> Tom, can you ACK/NAK this ? I have no omap board.
> >> 
> >> I don't understand the point, the old code was wrong and you can
> >> check omap3/omap4 documentation. If you revert it you still have a wrong
> >> code so it's better to drop omap3/4 viewport.
> >> 
> >> You can take a look at this patch
> >> 
> >> http://git.omapzoom.org/?p=kernel/omap.git;a=commitdiff;h=2a18e1248588c3
> >> 26f 0a63c5bce4a611d709130a8
> >> 
> >> that is used to fix this errata
> >> 
> >> http://git.omapzoom.org/?p=kernel/omap.git;a=commitdiff;h=a0dd0ee69578e3
> >> 2f1 469596b8fd3a6c8ef172d42
> >> 
> >> I'm using this ulpi code in one of our device. I have fixed the u-boot
> >> viewport code because I have seen it wrong. Sorry for the late response
> >> but I was busy for a Wedding ;)
> > 
> > Fear not! I'm busy having no life, it's really hard task! I will actually
> > be busy with that until sometimes mid-next-week.
> > 
> >> I can try to test it tomorrow on an omap3
> >> device but I think that is more easy for Stefano because he has already
> >> a platform with a recent uboot
> > 
> > I don't care who tests it, I'd just like to make sure it's tested on more
> > devices than one ;-)
> 
> I think that I have already understand the problem.
> The port_num is used starting from 0 in omap-ehci, so if this is correct my
> patch need a fix
> 
> from
> 
> u32 val = (OMAP_ULPI_START | (ulpi_vp->port_num & 0xf) << 24) |
>  			OMAP_ULPI_WR_OPSEL | ((u32)reg << 16) | (value & 0xff);
> 
> to
> 
> u32 val = (OMAP_ULPI_START | ((ulpi_vp->port_num + 1) & 0xf) << 24) |
>  			OMAP_ULPI_WR_OPSEL | ((u32)reg << 16) | (value & 0xff);
> 
> Michael

Make sure you base this stuff on u-boot-usb/master too.

Best regards,
Marek Vasut


More information about the U-Boot mailing list