[PATCH] ARM: dts: omap3-beagle-xm: Add USB Host support for Rev Ax/Bx

Igor Grinberg grinberg at compulab.co.il
Wed Apr 17 03:56:07 EDT 2013


On 04/17/13 04:30, Robert Nelson wrote:
> On Tue, Apr 16, 2013 at 7:52 PM, Tony Lindgren <tony at atomide.com> wrote:
>> * Roger Quadros <rogerq at ti.com> [130415 05:44]:
>>> On 04/15/2013 03:35 PM, Roger Quadros wrote:
>>>> Provide RESET and Power regulators for the USB PHY,
>>>> the USB Host port mode and the PHY device.
>>>>
>>>> Also provide pin multiplexer information for USB host
>>>> pins.
>>>>
>>>> This will not work for Rev Cx boards because of reversed logic
>>>> for USB_POWER_Enable.
>>>>
>>>> CC: Benoît Cousson <b-cousson at ti.com>
>>>> Signed-off-by: Roger Quadros <rogerq at ti.com>
>>>> ---
>>>>  arch/arm/boot/dts/omap3-beagle-xm.dts |   62 +++++++++++++++++++++++++++++++++
>>>>  1 files changed, 62 insertions(+), 0 deletions(-)
>>>>
>>>> diff --git a/arch/arm/boot/dts/omap3-beagle-xm.dts b/arch/arm/boot/dts/omap3-beagle-xm.dts
>>>> index 5a31964..d394c51 100644
>>>> --- a/arch/arm/boot/dts/omap3-beagle-xm.dts
>>>> +++ b/arch/arm/boot/dts/omap3-beagle-xm.dts
>>>> @@ -57,6 +57,60 @@
>>>>             ti,mcbsp = <&mcbsp2>;
>>>>             ti,codec = <&twl_audio>;
>>>>     };
>>>> +
>>>> +   /* HS USB Port 2 RESET */
>>>> +   hsusb2_reset: hsusb2_reset_reg {
>>>> +           compatible = "regulator-fixed";
>>>> +           regulator-name = "hsusb2_reset";
>>>> +           regulator-min-microvolt = <3300000>;
>>>> +           regulator-max-microvolt = <3300000>;
>>>> +           gpio = <&gpio5 19 0>;   /* gpio_147 */
>>>> +           startup-delay-us = <70000>;
>>>> +           enable-active-high;
>>>> +   };
>>>> +
>>>> +   /* HS USB Port 2 Power */
>>>> +   hsusb2_power: hsusb2_power_reg {
>>>> +           compatible = "regulator-fixed";
>>>> +           regulator-name = "hsusb2_vbus";
>>>> +           regulator-min-microvolt = <3300000>;
>>>> +           regulator-max-microvolt = <3300000>;
>>>> +           gpio = <&twl_gpio 18 0>;        /* GPIO LEDA */
>>>> +           startup-delay-us = <70000>;
>>>> +           enable-active-high;     /* FIXME: active-low for Rev. C */
>>>
>>> Benoit & Tony,
>>>
>>> Any ideas how to tackle the reversed logic for Rev. C boards?
>>
>> Sounds like we need a shared omap3-beage.dtsi, then omap3-beagle-xm.dts
>> and omap3-beagle-rev-c.dts. Then xm and rev-c can both include the
> 
> Bike-sheding, but we might want to make that "omap3-beagle-xmc.dts" as
> there is the "rev c" variant of the original beagle...
> 
> It's too bad we can't read the 3 gpio pin states in the device tree
> and make a decision.

I would recommend to move the detection to the boot loader and
adjust the DT blob at run time (in the boot loader).
This way, we will not need to deal with all the (sub)revision stuff.


-- 
Regards,
Igor.



More information about the linux-arm-kernel mailing list