arm64: dts: imx8mm-tqma8mqml-mba8mx: Fix USB DR
authorAlexander Stein <alexander.stein@ew.tq-group.com>
Tue, 1 Nov 2022 09:30:31 +0000 (10:30 +0100)
committerShawn Guo <shawnguo@kernel.org>
Fri, 11 Nov 2022 05:08:39 +0000 (13:08 +0800)
Using extcon USB host mode works properly on DR interface, e.g.
enabling/disabling VBUS. But USB device mode is not working.
Fix this by switching to usb-role-switch instead.

Fixes: dfcd1b6f7620 ("arm64: dts: freescale: add initial device tree for TQMa8MQML with i.MX8MM")
Signed-off-by: Alexander Stein <alexander.stein@ew.tq-group.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
arch/arm64/boot/dts/freescale/imx8mm-tqma8mqml-mba8mx.dts

index 7e0aeb2..a0aeac6 100644 (file)
                off-on-delay-us = <12000>;
        };
 
-       extcon_usbotg1: extcon-usbotg1 {
-               compatible = "linux,extcon-usb-gpio";
+       connector {
+               compatible = "gpio-usb-b-connector", "usb-b-connector";
+               type = "micro";
+               label = "X19";
                pinctrl-names = "default";
-               pinctrl-0 = <&pinctrl_usb1_extcon>;
-               id-gpio = <&gpio1 10 GPIO_ACTIVE_HIGH>;
+               pinctrl-0 = <&pinctrl_usb1_connector>;
+               id-gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+                               usb_dr_connector: endpoint {
+                                       remote-endpoint = <&usb1_drd_sw>;
+                               };
+                       };
+               };
        };
 };
 
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_usbotg1>;
        dr_mode = "otg";
-       extcon = <&extcon_usbotg1>;
        srp-disable;
        hnp-disable;
        adp-disable;
        power-active-high;
        over-current-active-low;
+       usb-role-switch;
        status = "okay";
+
+       port {
+               usb1_drd_sw: endpoint {
+                       remote-endpoint = <&usb_dr_connector>;
+               };
+       };
 };
 
 &usbotg2 {
                           <MX8MM_IOMUXC_GPIO1_IO13_USB1_OTG_OC         0x84>;
        };
 
-       pinctrl_usb1_extcon: usb1-extcongrp {
+       pinctrl_usb1_connector: usb1-connectorgrp {
                fsl,pins = <MX8MM_IOMUXC_GPIO1_IO10_GPIO1_IO10          0x1c0>;
        };