lkml.org 
[lkml]   [2016]   [May]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [RFC 1/5] usb: chipidea: Add support for Tegra20/30/114/124
From
Date
On 05/26/2016 03:17 PM, Stephen Warren wrote:
> On 05/26/2016 09:40 AM, Thierry Reding wrote:
>> From: Thierry Reding <treding@nvidia.com>
>>
>> All of these Tegra SoC generations have a ChipIdea UDC IP block that can
>> be used for device mode communication with a host. Implement rudimentary
>> support that doesn't allow switching between host and device modes.
>
> Are you sure this is correct for Tegra20? I ask because for the /host/
> mode driver, there's a "has_hostpc" flag which is set to false for
> Tegra20 and true for all other SoCs. In the U-Boot device mode driver
> (if not in the kernel driver; I didn't check), there's a concept of "has
> hostpc" too. I might expect that flag to be set the same way for both
> drivers. That said, I /think/ the host and device HW are unrelated, so
> it's possible has_hostpc might be set differently for them.
> Unfortunately, we haven't enabled the device mode driver for any Tegra20
> system in U-Boot so I can't tell whether we should enable has_hostpc for
> Tegra20's device mode driver.
>
> Still, if this code works then I guess it's likely correct...

On the other hand, it looks like the kernel device mode driver might
auto-detect this; in core.c:hw_device_init(), I see:

reg = hw_read(ci, CAP_HCCPARAMS, HCCPARAMS_LEN) >>
__ffs(HCCPARAMS_LEN);
ci->hw_bank.lpm = reg;

... and in host.c:host_start(), I see:

ehci->has_hostpc = ci->hw_bank.lpm;

\
 
 \ /
  Last update: 2016-05-26 23:41    [W:0.049 / U:0.584 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site