[v1,8/9] ARM: tegra: Enable UDC on AC100

Submitted by Dmitry Osipenko on July 5, 2017, 5:19 p.m.

Details

Message ID a0923f46a14c27afd7d2595dfb8878c2ebf02230.1499273075.git.digetx@gmail.com
State New
Headers show

Commit Message

Dmitry Osipenko July 5, 2017, 5:19 p.m.
Override the compatible string of the first USB controller to enable
device mode.

Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
Tested-by: Marc Dietrich <marvin24@gmx.de>
---
 arch/arm/boot/dts/tegra20-paz00.dts | 2 ++
 1 file changed, 2 insertions(+)

Comments

Stephen Warren July 6, 2017, 4:38 p.m.
On 07/05/2017 11:19 AM, Dmitry Osipenko wrote:
> Override the compatible string of the first USB controller to enable
> device mode.

> diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts

>   	usb@c5000000 {
> +		compatible = "nvidia,tegra20-udc";
>   		status = "okay";
> +		dr_mode = "otg";
>   	};

This port is the only external USB port on the AC100. I'm not sure it's 
a good idea to reconfigure it so it can only work in device mode, 
although given that display, keyboard, and mouse are built-in to this 
device, perhaps this change is merely unexpected rather than 
catastrophic to a user, since they can recover via the keyboard/display. 
Let's drop this patch until OTG mode is actually implemented.
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Dmitry Osipenko July 6, 2017, 4:57 p.m.
On 06.07.2017 19:38, Stephen Warren wrote:
> On 07/05/2017 11:19 AM, Dmitry Osipenko wrote:
>> Override the compatible string of the first USB controller to enable
>> device mode.
> 
>> diff --git a/arch/arm/boot/dts/tegra20-paz00.dts
>> b/arch/arm/boot/dts/tegra20-paz00.dts
> 
>>       usb@c5000000 {
>> +        compatible = "nvidia,tegra20-udc";
>>           status = "okay";
>> +        dr_mode = "otg";
>>       };
> 
> This port is the only external USB port on the AC100.

Seems that's not true. http://elinux.org/Tegra/Boards/Toshiba_AC100 claims that
there are host and micro USB ports.

 I'm not sure it's a good
> idea to reconfigure it so it can only work in device mode, although given that
> display, keyboard, and mouse are built-in to this device, perhaps this change is
> merely unexpected rather than catastrophic to a user, since they can recover via
> the keyboard/display. Let's drop this patch until OTG mode is actually implemented.
Stephen Warren July 6, 2017, 6 p.m.
On 07/06/2017 10:57 AM, Dmitry Osipenko wrote:
> On 06.07.2017 19:38, Stephen Warren wrote:
>> On 07/05/2017 11:19 AM, Dmitry Osipenko wrote:
>>> Override the compatible string of the first USB controller to enable
>>> device mode.
>>
>>> diff --git a/arch/arm/boot/dts/tegra20-paz00.dts
>>> b/arch/arm/boot/dts/tegra20-paz00.dts
>>
>>>        usb@c5000000 {
>>> +        compatible = "nvidia,tegra20-udc";
>>>            status = "okay";
>>> +        dr_mode = "otg";
>>>        };
>>
>> This port is the only external USB port on the AC100.
> 
> Seems that's not true. http://elinux.org/Tegra/Boards/Toshiba_AC100 claims that
> there are host and micro USB ports.

You're right; I was getting this board confused with the Springbank 
variety of Seaboard, and when I looked at the mini USB port on the AC100 
I thought it was something else.

Given the physical connector on this USB port on the AC100, it's 
probably fine to convert it to device-mode only since I don't expect 
anyone has a USB OTG cable that has a mini size connector on the host end.

It looks like this port is only enabled because the very first version 
of tegra-paz00.dts didn't explicitly disable the port, and when 
tegra20.dtsi was updated to disable all USB ports by default, 
tegra-paz00.dtsi was updated to enable the port so that the DT change 
didn't affect behaviour, which then left the port enabled explicitly 
albeit without much reason.

So, once the dr_mode is fixed in this change, it's:
Acked-by: Stephen Warren <swarren@nvidia.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-tegra" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Marc Dietrich July 6, 2017, 9:23 p.m.
Am Donnerstag, 6. Juli 2017, 20:00:02 CEST schrieb Stephen Warren:
> On 07/06/2017 10:57 AM, Dmitry Osipenko wrote:
> > On 06.07.2017 19:38, Stephen Warren wrote:
> >> On 07/05/2017 11:19 AM, Dmitry Osipenko wrote:
> >>> Override the compatible string of the first USB controller to enable
> >>> device mode.
> >>> 
> >>> diff --git a/arch/arm/boot/dts/tegra20-paz00.dts
> >>> b/arch/arm/boot/dts/tegra20-paz00.dts
> >>> 
> >>>        usb@c5000000 {
> >>> 
> >>> +        compatible = "nvidia,tegra20-udc";
> >>> 
> >>>            status = "okay";
> >>> 
> >>> +        dr_mode = "otg";
> >>> 
> >>>        };
> >> 
> >> This port is the only external USB port on the AC100.
> > 
> > Seems that's not true. http://elinux.org/Tegra/Boards/Toshiba_AC100 claims
> > that there are host and micro USB ports.
> 
> You're right; I was getting this board confused with the Springbank
> variety of Seaboard, and when I looked at the mini USB port on the AC100
> I thought it was something else.

Sorry, for the late reply, I'm on vacation.
 
> Given the physical connector on this USB port on the AC100, it's
> probably fine to convert it to device-mode only since I don't expect
> anyone has a USB OTG cable that has a mini size connector on the host end.
> 
> It looks like this port is only enabled because the very first version
> of tegra-paz00.dts didn't explicitly disable the port, and when
> tegra20.dtsi was updated to disable all USB ports by default,
> tegra-paz00.dtsi was updated to enable the port so that the DT change
> didn't affect behaviour, which then left the port enabled explicitly
> albeit without much reason.

I think someone used it in the past in host mode and it was working, but I 
think everyone will be happy to have it operating as client only (as original 
intended), especially because we already have an external (and also an 
internal) usb port.

> So, once the dr_mode is fixed in this change, it's:
> Acked-by: Stephen Warren <swarren@nvidia.com>

Tested-by: Marc Dietrich <marvin24@gmx.de>
Dmitry Osipenko July 7, 2017, 8:27 a.m.
On 07.07.2017 00:23, Marc Dietrich wrote:
> Am Donnerstag, 6. Juli 2017, 20:00:02 CEST schrieb Stephen Warren:
>> On 07/06/2017 10:57 AM, Dmitry Osipenko wrote:
>>> On 06.07.2017 19:38, Stephen Warren wrote:
>>>> On 07/05/2017 11:19 AM, Dmitry Osipenko wrote:
>>>>> Override the compatible string of the first USB controller to enable
>>>>> device mode.
>>>>>
>>>>> diff --git a/arch/arm/boot/dts/tegra20-paz00.dts
>>>>> b/arch/arm/boot/dts/tegra20-paz00.dts
>>>>>
>>>>>        usb@c5000000 {
>>>>>
>>>>> +        compatible = "nvidia,tegra20-udc";
>>>>>
>>>>>            status = "okay";
>>>>>
>>>>> +        dr_mode = "otg";
>>>>>
>>>>>        };
>>>>
>>>> This port is the only external USB port on the AC100.
>>>
>>> Seems that's not true. http://elinux.org/Tegra/Boards/Toshiba_AC100 claims
>>> that there are host and micro USB ports.
>>
>> You're right; I was getting this board confused with the Springbank
>> variety of Seaboard, and when I looked at the mini USB port on the AC100
>> I thought it was something else.
> 
> Sorry, for the late reply, I'm on vacation.
>  

No worries, have a good time!;)

>> Given the physical connector on this USB port on the AC100, it's
>> probably fine to convert it to device-mode only since I don't expect
>> anyone has a USB OTG cable that has a mini size connector on the host end.
>>
>> It looks like this port is only enabled because the very first version
>> of tegra-paz00.dts didn't explicitly disable the port, and when
>> tegra20.dtsi was updated to disable all USB ports by default,
>> tegra-paz00.dtsi was updated to enable the port so that the DT change
>> didn't affect behaviour, which then left the port enabled explicitly
>> albeit without much reason.
> 
> I think someone used it in the past in host mode and it was working, but I 
> think everyone will be happy to have it operating as client only (as original 
> intended), especially because we already have an external (and also an 
> internal) usb port.
> 
>> So, once the dr_mode is fixed in this change, it's:
>> Acked-by: Stephen Warren <swarren@nvidia.com>
> 
> Tested-by: Marc Dietrich <marvin24@gmx.de>
>

Patch hide | download patch | download mbox

diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts
index b4bfa5586c23..d979153d5a04 100644
--- a/arch/arm/boot/dts/tegra20-paz00.dts
+++ b/arch/arm/boot/dts/tegra20-paz00.dts
@@ -452,7 +452,9 @@ 
 	};
 
 	usb@c5000000 {
+		compatible = "nvidia,tegra20-udc";
 		status = "okay";
+		dr_mode = "otg";
 	};
 
 	usb-phy@c5000000 {