[U-Boot] [PATCH 10/16] usb: xhci: Program 'route string' in the input slot context

Bin Meng bmeng.cn at gmail.com
Tue Jun 27 00:01:56 UTC 2017


Hi Marek,

On Tue, Jun 27, 2017 at 2:07 AM, Marek Vasut <marex at denx.de> wrote:
> On 06/24/2017 03:57 AM, Bin Meng wrote:
>> Hi Marek,
>>
>> On Sat, Jun 24, 2017 at 2:02 AM, Marek Vasut <marex at denx.de> wrote:
>>> On 06/23/2017 11:54 AM, Bin Meng wrote:
>>>> xHCI spec says: the values of the 'route string' field shall be
>>>> initialized by the first 'Address Device' command issued to a
>>>> device slot, and shall not be modified by any other command.
>>>>
>>>> So far U-Boot does not program this field, and it does not prevent
>>>> SS device directly attached to root port, or HS device behind an HS
>>>> hub, from working, due to the fact that 'route string' is used by
>>>> the xHC to target SS packets. But in order to enumerate devices
>>>> behind an SS hub, this field must be programmed.
>>>>
>>>> With this commit and along with previous commits, now SS & HS devices
>>>> attached to a USB 3.0 hub can be enumerated by U-Boot.
>>>>
>>>> As usual, this new feature is only available when DM is on.
>>>
>>> Great, but I really dislike the ifdef pollution, so this needs to be
>>> sorted out.
>>
>> The ifdef was needed due to it calls DM APIs or access DM udevice. I
>> have no intention to add a new feature to the non-DM driver.
>
> But then this creates a massive disparity, it's like we're growing two
> USB stacks.
>

Yep, unfortunately. But if we continue adding new features/fixes to
the old non-DM stuff, I am not sure how this can encourage people to
switch to DM. Maybe I can check all boards that use xHCI to see if
they are switched to DM?

[snip]

Regards,
Bin


More information about the U-Boot mailing list