[U-Boot] About the way to fix platform specific issue in source file xhci.c (U-Boot)

Marek Vasut marex at denx.de
Tue Oct 31 10:23:38 UTC 2017


On 10/31/2017 10:43 AM, Ran Wang wrote:
> Hi
>> -----Original Message-----
>> From: Marek Vasut [mailto:marek.vasut at gmail.com]
>> Sent: Tuesday, October 31, 2017 5:31 PM
>> To: Ran Wang <ran.wang_1 at nxp.com>; Marek Vasut <marex at denx.de>
>> Cc: open list <u-boot at lists.denx.de>
>> Subject: Re: [U-Boot] About the way to fix platform specific issue in source
>> file xhci.c (U-Boot)
>>
>> On 10/31/2017 10:15 AM, Ran Wang wrote:
>>> Hi Marek,
>>
>> Hi!
>>
>>>> -----Original Message-----
>>>> From: Marek Vasut [mailto:marex at denx.de]
>>>> Sent: Monday, October 30, 2017 6:55 PM
>>>> To: Ran Wang <ran.wang_1 at nxp.com>
>>>> Cc: bmeng.cn at gmail.com
>>>> Subject: Re: About the way to fix platform specific issue in source
>>>> file xhci.c
>>>> (U-Boot)
>>>>
>>>> On 10/30/2017 09:39 AM, Ran Wang wrote:
>>>>> Hi Vasut,
>>>>>    For git://git.denx.de/u-boot-usb.git, I work out a patch to fix
>>>>> USB issue
>>>> which will happen on SoC LS2080A only (it's using DWC3).
>>>>>    Per my understanding, we should not use platform define in xhci.c
>>>>> to
>>>> control its effect. However, I am not sure how to do it that can be
>>>> accepted by upstream, so send you this mail for suggestion before I
>>>> post the patch to patchwork. Thank you in advance.
>>>>
>>>> This should be fixed in common code, not in drivers.
>>>
>>> Did you mean it should be fixed in common/usb*.c rather than
>> drivers/usb/*?
>>
>> Yes
>>
>>> If yes, is it acceptable that I use 'if defined(CONFIG_ARCH_LS2080A)' in
>> common/usb.c?
>>
>> No
>>
>>> If answer is no, how should I do? I cannot find an example and not
>>> sure it's OK to related rule.
>>
>> What is the problem exactly ?
>> I recall there were reports of shitty USB sticks failing, but without further
>> details, it's hard to tell if this is the same problem.
>>
> We observed some USB2.0 drives (Transcend 8GB, 4GB, Samtec) fail to be
> enumerated by U-Boot, and if we try to add some time interval between
> control transfers (not in bulk transfers), issue get resolved.

Try disabling cache support, does it still happen ?
I had such an issue with DWC2 controller and it failed due to incorrect
cache handling.

-- 
Best regards,
Marek Vasut


More information about the U-Boot mailing list