ARM: dts: imx6qdl-sabrelite: fix USB PHY reset
authorGary Bisson <gary.bisson@boundarydevices.com>
Mon, 24 Jul 2017 12:59:57 +0000 (14:59 +0200)
committerShawn Guo <shawnguo@kernel.org>
Wed, 26 Jul 2017 02:39:10 +0000 (10:39 +0800)
Declared as a regulator since the driver doesn't have a reset-gpios
property for this.

This ensures that the PHY is woken up, not depending on the state the
second stage bootloader leaves the pin.

This is a workaround until a proper mechanism is provided to reset such
devices like the pwrseq library [1] for instance.

[1] https://lkml.org/lkml/2017/2/10/779

Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm/boot/dts/imx6qdl-sabrelite.dtsi

index afe7449c47da2d0b67ffc2628d323feaa4e00ea5..756c5054f047724f7e12a1fad1ca98fde09f50c2 100644 (file)
                        regulator-max-microvolt = <2800000>;
                        regulator-always-on;
                };
+
+               reg_usb_h1_vbus: regulator@7 {
+                       compatible = "regulator-fixed";
+                       reg = <7>;
+                       pinctrl-names = "default";
+                       pinctrl-0 = <&pinctrl_usbh1>;
+                       regulator-name = "usb_h1_vbus";
+                       regulator-min-microvolt = <3300000>;
+                       regulator-max-microvolt = <3300000>;
+                       gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
+                       enable-active-high;
+               };
        };
 
        mipi_xclk: mipi_xclk {
                        >;
                };
 
+               pinctrl_usbh1: usbh1grp {
+                       fsl,pins = <
+                               MX6QDL_PAD_GPIO_17__GPIO7_IO12          0x030b0
+                       >;
+               };
+
                pinctrl_usbotg: usbotggrp {
                        fsl,pins = <
                                MX6QDL_PAD_GPIO_1__USB_OTG_ID           0x17059
 };
 
 &usbh1 {
+       vbus-supply = <&reg_usb_h1_vbus>;
        status = "okay";
 };