Migrate USB to Driver Model (CONFIG_DM_USB=y).

Tested-by: Marcel Ziswiler <marcel.ziswi...@toradex.com>
Signed-off-by: Igor Opaniuk <igor.opan...@toradex.com>
---

v2:
- Drop vbus-supply property for usbotg1 node, as on Colibri the turning
on of the USB host power is actually done purely in hardware based on
the cable detect pin

 arch/arm/dts/imx7-colibri-emmc.dts    | 36 +++++++++++++++++++++++++
 arch/arm/dts/imx7-colibri-rawnand.dts | 39 +++++++++++++++++++++++++++
 configs/colibri_imx7_defconfig        |  1 +
 configs/colibri_imx7_emmc_defconfig   |  1 +
 4 files changed, 77 insertions(+)

diff --git a/arch/arm/dts/imx7-colibri-emmc.dts 
b/arch/arm/dts/imx7-colibri-emmc.dts
index efd600091d..371c680025 100644
--- a/arch/arm/dts/imx7-colibri-emmc.dts
+++ b/arch/arm/dts/imx7-colibri-emmc.dts
@@ -13,11 +13,30 @@
        aliases {
                mmc0 = &usdhc3;
                mmc1 = &usdhc1;
+               usb0 = &usbotg1; /* required for ums */
        };
 
        chosen {
                stdout-path = &uart1;
        };
+
+       reg_5v0: regulator-5v0 {
+               compatible = "regulator-fixed";
+               regulator-name = "5V";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+       };
+
+       reg_usbh_vbus: regulator-usbh-vbus {
+               compatible = "regulator-fixed";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_usbh_reg>;
+               regulator-name = "VCC_USB[1-4]";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+               gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
+               vin-supply = <&reg_5v0>;
+       };
 };
 
 &usdhc3 {
@@ -44,4 +63,21 @@
                        MX7D_PAD_SD3_STROBE__SD3_STROBE         0x19
                >;
        };
+
+       pinctrl_usbh_reg: gpio-usbh-vbus {
+               fsl,pins = <
+                       MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
+               >;
+       };
+};
+
+&usbotg2 {
+       dr_mode = "host";
+       vbus-supply = <&reg_usbh_vbus>;
+       status = "okay";
+};
+
+&usbotg1 {
+       dr_mode = "host";
+       status = "okay";
 };
diff --git a/arch/arm/dts/imx7-colibri-rawnand.dts 
b/arch/arm/dts/imx7-colibri-rawnand.dts
index 4eb86fb011..69a9c6a914 100644
--- a/arch/arm/dts/imx7-colibri-rawnand.dts
+++ b/arch/arm/dts/imx7-colibri-rawnand.dts
@@ -13,6 +13,28 @@
        chosen {
                stdout-path = &uart1;
        };
+
+       aliases {
+               usb0 = &usbotg1; /* required for ums */
+       };
+
+       reg_5v0: regulator-5v0 {
+               compatible = "regulator-fixed";
+               regulator-name = "5V";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+       };
+
+       reg_usbh_vbus: regulator-usbh-vbus {
+               compatible = "regulator-fixed";
+               pinctrl-names = "default";
+               pinctrl-0 = <&pinctrl_usbh_reg>;
+               regulator-name = "VCC_USB[1-4]";
+               regulator-min-microvolt = <5000000>;
+               regulator-max-microvolt = <5000000>;
+               gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
+               vin-supply = <&reg_5v0>;
+       };
 };
 
 &gpmi {
@@ -43,4 +65,21 @@
                        MX7D_PAD_SD3_DATA7__NAND_DATA07         0x71
                >;
        };
+
+       pinctrl_usbh_reg: gpio-usbh-vbus {
+               fsl,pins = <
+                       MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
+               >;
+       };
+};
+
+&usbotg2 {
+       dr_mode = "host";
+       vbus-supply = <&reg_usbh_vbus>;
+       status = "okay";
+};
+
+&usbotg1 {
+       dr_mode = "host";
+       status = "okay";
 };
diff --git a/configs/colibri_imx7_defconfig b/configs/colibri_imx7_defconfig
index 7a52361a2a..43af825d5c 100644
--- a/configs/colibri_imx7_defconfig
+++ b/configs/colibri_imx7_defconfig
@@ -62,6 +62,7 @@ CONFIG_PINCTRL=y
 CONFIG_PINCTRL_IMX7=y
 CONFIG_DM_PMIC=y
 CONFIG_PMIC_RN5T567=y
+CONFIG_DM_USB=y
 CONFIG_USB=y
 CONFIG_USB_EHCI_HCD=y
 CONFIG_USB_GADGET=y
diff --git a/configs/colibri_imx7_emmc_defconfig 
b/configs/colibri_imx7_emmc_defconfig
index 5e2a204a88..beec2704c5 100644
--- a/configs/colibri_imx7_emmc_defconfig
+++ b/configs/colibri_imx7_emmc_defconfig
@@ -64,3 +64,4 @@ CONFIG_USB_GADGET_DOWNLOAD=y
 CONFIG_VIDEO=y
 CONFIG_FAT_WRITE=y
 CONFIG_OF_LIBFDT_OVERLAY=y
+CONFIG_DM_USB=y
-- 
2.17.1

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
https://lists.denx.de/listinfo/u-boot

Reply via email to