Message ID | 1366029306-1824-1-git-send-email-rogerq@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
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@ti.com> > Signed-off-by: Roger Quadros <rogerq@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? > + }; > + > + /* HS USB Host PHY on PORT 2 */ > + hsusb2_phy: hsusb2_phy { > + compatible = "usb-nop-xceiv"; > + reset-supply = <&hsusb2_reset>; > + vcc-supply = <&hsusb2_power>; > + }; > + > +}; cheers, -roger
* Roger Quadros <rogerq@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@ti.com> > > Signed-off-by: Roger Quadros <rogerq@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 common .dtsi. Regards, Tony
On Tue, Apr 16, 2013 at 7:52 PM, Tony Lindgren <tony@atomide.com> wrote: > * Roger Quadros <rogerq@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@ti.com> >> > Signed-off-by: Roger Quadros <rogerq@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. Regards,
On 04/17/13 04:30, Robert Nelson wrote: > On Tue, Apr 16, 2013 at 7:52 PM, Tony Lindgren <tony@atomide.com> wrote: >> * Roger Quadros <rogerq@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@ti.com> >>>> Signed-off-by: Roger Quadros <rogerq@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.
On 04/17/2013 10:56 AM, Igor Grinberg wrote: > On 04/17/13 04:30, Robert Nelson wrote: >> On Tue, Apr 16, 2013 at 7:52 PM, Tony Lindgren <tony@atomide.com> wrote: >>> * Roger Quadros <rogerq@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@ti.com> >>>>> Signed-off-by: Roger Quadros <rogerq@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. > > Moving the detection to bootloader is fine, but modifying the DT at runtime would create a debug/maintenance issue. Instead it could just pick one of the .DTBs and pass it to kernel. Since most users will be using rev-c, I think we should keep the original file 'omap3-beagle-xm.dts" as it is for rev-c boards. I can just create a new dts file for Revisions A and B that will be like so. +++ b/arch/arm/boot/dts/omap3-beagle-xm-ab.dts @@ -0,0 +1,6 @@ +/include/ "omap3-beagle-xm.dts" + +/* On Rev A/B USBHOST_PWR_EN is active high */ +&hsusb2_power { + enable-active-high; +}; Since omap3-beagle and omap3-beagle-xm use different SoC versions and have quite many differences, I don't think it is a good idea to create a common file between the two. cheers, -roger
On 04/17/13 11:38, Roger Quadros wrote: > On 04/17/2013 10:56 AM, Igor Grinberg wrote: >> On 04/17/13 04:30, Robert Nelson wrote: >>> On Tue, Apr 16, 2013 at 7:52 PM, Tony Lindgren <tony@atomide.com> wrote: >>>> * Roger Quadros <rogerq@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@ti.com> >>>>>> Signed-off-by: Roger Quadros <rogerq@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. >> >> > Moving the detection to bootloader is fine, but modifying the DT at > runtime would create a debug/maintenance issue. Instead it could just > pick one of the .DTBs and pass it to kernel. Like this will not create create any debug/maintenance issues.... ;-) We have no problem with debug, as all the DT nodes can be seen in both U-Boot (with fdt commands) and Linux through procfs... I've just dropped my 2 cents and I don't really insist... > > Since most users will be using rev-c, I think we should keep the original > file 'omap3-beagle-xm.dts" as it is for rev-c boards. > I can just create a new dts file for Revisions A and B that will be > like so. > > +++ b/arch/arm/boot/dts/omap3-beagle-xm-ab.dts > @@ -0,0 +1,6 @@ > +/include/ "omap3-beagle-xm.dts" > + > +/* On Rev A/B USBHOST_PWR_EN is active high */ > +&hsusb2_power { > + enable-active-high; > +}; > > Since omap3-beagle and omap3-beagle-xm use different SoC versions and have > quite many differences, I don't think it is a good idea to create a common > file between the two. > > cheers, > -roger >
* Igor Grinberg <grinberg@compulab.co.il> [130417 05:31]: > On 04/17/13 11:38, Roger Quadros wrote: > > On 04/17/2013 10:56 AM, Igor Grinberg wrote: > >> On 04/17/13 04:30, Robert Nelson wrote: > >>> On Tue, Apr 16, 2013 at 7:52 PM, Tony Lindgren <tony@atomide.com> wrote: > >>>> * Roger Quadros <rogerq@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@ti.com> > >>>>>> Signed-off-by: Roger Quadros <rogerq@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. > >> > >> > > Moving the detection to bootloader is fine, but modifying the DT at > > runtime would create a debug/maintenance issue. Instead it could just > > pick one of the .DTBs and pass it to kernel. > > Like this will not create create any debug/maintenance issues.... ;-) > We have no problem with debug, as all the DT nodes can be seen in > both U-Boot (with fdt commands) and Linux through procfs... > > I've just dropped my 2 cents and I don't really insist... The dynamic configuration from the bootloader can also be done too, I don't think they are mutually exclusive. > > Since most users will be using rev-c, I think we should keep the original > > file 'omap3-beagle-xm.dts" as it is for rev-c boards. > > I can just create a new dts file for Revisions A and B that will be > > like so. > > > > +++ b/arch/arm/boot/dts/omap3-beagle-xm-ab.dts > > @@ -0,0 +1,6 @@ > > +/include/ "omap3-beagle-xm.dts" > > + > > +/* On Rev A/B USBHOST_PWR_EN is active high */ > > +&hsusb2_power { > > + enable-active-high; > > +}; > > > > Since omap3-beagle and omap3-beagle-xm use different SoC versions and have > > quite many differences, I don't think it is a good idea to create a common > > file between the two. Sounds good to me. But please also add the revision info to the compatible flags for both .dts files. Regards, Tony
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 */ + }; + + /* HS USB Host PHY on PORT 2 */ + hsusb2_phy: hsusb2_phy { + compatible = "usb-nop-xceiv"; + reset-supply = <&hsusb2_reset>; + vcc-supply = <&hsusb2_power>; + }; + +}; + +&omap3_pmx_core { + pinctrl-names = "default"; + pinctrl-0 = < + &hsusbb2_pins + >; + + hsusbb2_pins: pinmux_hsusbb2_pins { + pinctrl-single,pins = < + 0x5c0 0x3 /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_clk OUTPUT */ + 0x5c2 0x3 /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_stp OUTPUT */ + 0x5c4 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dir INPUT | PULLDOWN */ + 0x5c6 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_nxt INPUT | PULLDOWN */ + 0x5c8 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat0 INPUT | PULLDOWN */ + 0x5cA 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat1 INPUT | PULLDOWN */ + 0x1a4 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat2 INPUT | PULLDOWN */ + 0x1a6 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat3 INPUT | PULLDOWN */ + 0x1a8 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat4 INPUT | PULLDOWN */ + 0x1aa 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat5 INPUT | PULLDOWN */ + 0x1ac 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat6 INPUT | PULLDOWN */ + 0x1ae 0x10b /* USBB2_ULPITLL_CLK_MUXMODE.usbb1_ulpiphy_dat7 INPUT | PULLDOWN */ + >; + }; }; &i2c1 { @@ -125,3 +179,11 @@ mode = <3>; power = <50>; }; + +&usbhshost { + port2-mode = "ehci-phy"; +}; + +&usbhsehci { + phys = <0 &hsusb2_phy>; +};
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@ti.com> Signed-off-by: Roger Quadros <rogerq@ti.com> --- arch/arm/boot/dts/omap3-beagle-xm.dts | 62 +++++++++++++++++++++++++++++++++ 1 files changed, 62 insertions(+), 0 deletions(-)