diff mbox

[v5,6/6] ARM: dts: imx6qdl-udoo.dtsi: fix onboard USB HUB property

Message ID 1470646331-23227-7-git-send-email-peter.chen@nxp.com (mailing list archive)
State New, archived
Headers show

Commit Message

Peter Chen Aug. 8, 2016, 8:52 a.m. UTC
The current dts describes USB HUB's property at USB controller's
entry, it is improper. The USB HUB should be the child node
under USB controller, and power sequence properties are under
it.

Signed-off-by: Peter Chen <peter.chen@nxp.com>
---
 arch/arm/boot/dts/imx6qdl-udoo.dtsi | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

Comments

Joshua Clayton Aug. 9, 2016, 11:33 p.m. UTC | #1
Hi Peter,

On 08/08/2016 01:52 AM, Peter Chen wrote:
> The current dts describes USB HUB's property at USB controller's
> entry, it is improper. The USB HUB should be the child node
> under USB controller, and power sequence properties are under
> it.
>
> Signed-off-by: Peter Chen <peter.chen@nxp.com>
> ---
>  arch/arm/boot/dts/imx6qdl-udoo.dtsi | 26 +++++++++++++-------------
>  1 file changed, 13 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
> index 3bee2f9..f29a72c2f 100644
> --- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
> @@ -9,6 +9,8 @@
>   *
>   */
>  
> +#include <dt-bindings/gpio/gpio.h>
> +
>  / {
>  	aliases {
>  		backlight = &backlight;
> @@ -58,17 +60,6 @@
>  		#address-cells = <1>;
>  		#size-cells = <0>;
>  
> -		reg_usb_h1_vbus: regulator@0 {
> -			compatible = "regulator-fixed";
> -			reg = <0>;
> -			regulator-name = "usb_h1_vbus";
> -			regulator-min-microvolt = <5000000>;
> -			regulator-max-microvolt = <5000000>;
> -			enable-active-high;
> -			startup-delay-us = <2>; /* USB2415 requires a POR of 1 us minimum */
> -			gpio = <&gpio7 12 0>;
> -		};
> -
>  		reg_panel: regulator@1 {
>  			compatible = "regulator-fixed";
>  			reg = <1>;
> @@ -259,9 +250,18 @@
>  &usbh1 {
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&pinctrl_usbh>;
> -	vbus-supply = <&reg_usb_h1_vbus>;
> -	clocks = <&clks IMX6QDL_CLK_CKO>;
>  	status = "okay";
> +
> +	#address-cells = <1>;
> +	#size-cells = <0>;
Assuming they are needed,
#address-cells and #size-cells should go in imx6qdl.dtsi,
rather than in board dts files, shouldn't they?
> +	usb2415: hub@1 {
> +		compatible = "usb424,2514";
> +		reg = <1>;
Does <reg>  have any effect?
I couldn't find any reference to it in the patches.
(so apologies if it is in core code)
Does it matter? Would it be possible to connect
more than one hub to the same usb phy?
> +
> +		clocks = <&clks IMX6QDL_CLK_CKO>;
> +		reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
> +		reset-duration-us = <3000>;
> +	};
>  };
>  
>  &usdhc3 {
Peter Chen Aug. 10, 2016, 3:02 a.m. UTC | #2
On Tue, Aug 09, 2016 at 04:33:35PM -0700, Joshua Clayton wrote:
> Hi Peter,
> 
> On 08/08/2016 01:52 AM, Peter Chen wrote:
> > The current dts describes USB HUB's property at USB controller's
> > entry, it is improper. The USB HUB should be the child node
> > under USB controller, and power sequence properties are under
> > it.
> >
> > Signed-off-by: Peter Chen <peter.chen@nxp.com>
> > ---
> >  arch/arm/boot/dts/imx6qdl-udoo.dtsi | 26 +++++++++++++-------------
> >  1 file changed, 13 insertions(+), 13 deletions(-)
> >
> > diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
> > index 3bee2f9..f29a72c2f 100644
> > --- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
> > +++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
> > @@ -9,6 +9,8 @@
> >   *
> >   */
> >  
> > +#include <dt-bindings/gpio/gpio.h>
> > +
> >  / {
> >  	aliases {
> >  		backlight = &backlight;
> > @@ -58,17 +60,6 @@
> >  		#address-cells = <1>;
> >  		#size-cells = <0>;
> >  
> > -		reg_usb_h1_vbus: regulator@0 {
> > -			compatible = "regulator-fixed";
> > -			reg = <0>;
> > -			regulator-name = "usb_h1_vbus";
> > -			regulator-min-microvolt = <5000000>;
> > -			regulator-max-microvolt = <5000000>;
> > -			enable-active-high;
> > -			startup-delay-us = <2>; /* USB2415 requires a POR of 1 us minimum */
> > -			gpio = <&gpio7 12 0>;
> > -		};
> > -
> >  		reg_panel: regulator@1 {
> >  			compatible = "regulator-fixed";
> >  			reg = <1>;
> > @@ -259,9 +250,18 @@
> >  &usbh1 {
> >  	pinctrl-names = "default";
> >  	pinctrl-0 = <&pinctrl_usbh>;
> > -	vbus-supply = <&reg_usb_h1_vbus>;
> > -	clocks = <&clks IMX6QDL_CLK_CKO>;
> >  	status = "okay";
> > +
> > +	#address-cells = <1>;
> > +	#size-cells = <0>;
> Assuming they are needed,
> #address-cells and #size-cells should go in imx6qdl.dtsi,
> rather than in board dts files, shouldn't they?

Yes, you are right. All imx USB controller has only one port.


> > +	usb2415: hub@1 {
> > +		compatible = "usb424,2514";
> > +		reg = <1>;
> Does <reg>  have any effect?
> I couldn't find any reference to it in the patches.
> (so apologies if it is in core code)
> Does it matter?

Please see 69bec7259853 ("USB: core: let USB device know device node")
for detail.

> Would it be possible to connect
> more than one hub to the same usb phy?

No possible for current imx, but possible for other SoCs.
Joshua Clayton Aug. 11, 2016, 4:40 p.m. UTC | #3
Hi Peter,

Consider this my attempt to squeeze my own dts into your patch series.
These patches repalce patch 6 in V5. of the usb pwrseq series
I adding a #address and #size to imx6qdl.dtsi in patch 1
and remove those lines from imx6qdl-udoo.dtsi in patch 2 (formerly patch 6)
Finally I make the change in imx6q-evi.dts and hope is can be slipped into
the series with the others.

Thanks, Joshua
Peter Chen Aug. 12, 2016, 3:09 a.m. UTC | #4
On Thu, Aug 11, 2016 at 09:40:29AM -0700, Joshua Clayton wrote:
> 
> Hi Peter,
> 
> Consider this my attempt to squeeze my own dts into your patch series.
> These patches repalce patch 6 in V5. of the usb pwrseq series
> I adding a #address and #size to imx6qdl.dtsi in patch 1
> and remove those lines from imx6qdl-udoo.dtsi in patch 2 (formerly patch 6)
> Finally I make the change in imx6q-evi.dts and hope is can be slipped into
> the series with the others.
> 

Thanks, I will send them at next revision
diff mbox

Patch

diff --git a/arch/arm/boot/dts/imx6qdl-udoo.dtsi b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
index 3bee2f9..f29a72c2f 100644
--- a/arch/arm/boot/dts/imx6qdl-udoo.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-udoo.dtsi
@@ -9,6 +9,8 @@ 
  *
  */
 
+#include <dt-bindings/gpio/gpio.h>
+
 / {
 	aliases {
 		backlight = &backlight;
@@ -58,17 +60,6 @@ 
 		#address-cells = <1>;
 		#size-cells = <0>;
 
-		reg_usb_h1_vbus: regulator@0 {
-			compatible = "regulator-fixed";
-			reg = <0>;
-			regulator-name = "usb_h1_vbus";
-			regulator-min-microvolt = <5000000>;
-			regulator-max-microvolt = <5000000>;
-			enable-active-high;
-			startup-delay-us = <2>; /* USB2415 requires a POR of 1 us minimum */
-			gpio = <&gpio7 12 0>;
-		};
-
 		reg_panel: regulator@1 {
 			compatible = "regulator-fixed";
 			reg = <1>;
@@ -259,9 +250,18 @@ 
 &usbh1 {
 	pinctrl-names = "default";
 	pinctrl-0 = <&pinctrl_usbh>;
-	vbus-supply = <&reg_usb_h1_vbus>;
-	clocks = <&clks IMX6QDL_CLK_CKO>;
 	status = "okay";
+
+	#address-cells = <1>;
+	#size-cells = <0>;
+	usb2415: hub@1 {
+		compatible = "usb424,2514";
+		reg = <1>;
+
+		clocks = <&clks IMX6QDL_CLK_CKO>;
+		reset-gpios = <&gpio7 12 GPIO_ACTIVE_LOW>;
+		reset-duration-us = <3000>;
+	};
 };
 
 &usdhc3 {