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

Igor Grinberg grinberg at compulab.co.il
Mon Jun 10 15:31:09 CEST 2013


On 06/10/13 00:49, Marek Vasut wrote:
> 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.

I can see the v3 of this patch is already in Tom's repo and he has sent a
pull request with it.
I think currently it would be better to just do an incremental patch fixing
the port number to avoid any collisions, no? Tom?


-- 
Regards,
Igor.


More information about the U-Boot mailing list