This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/AM5728: USB - OTG is not working

Part Number: AM5728

Tool/software: Linux

Hi,

I m using yocto processor-sdk-04.02.00.09. I have tried to enable the USB OTG in custom board.

root@am57xx-evm:~# dmesg | grep "usb"
[    3.562032] ldousb: disabling
[    7.263711] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: GPIO lookup for consumer id
[    7.263717] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using device tree for GPIO lookup
[    7.263723] of_get_named_gpiod_flags: can't parse 'id-gpios' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]'
[    7.263728] of_get_named_gpiod_flags: can't parse 'id-gpio' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]'
[    7.263736] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using lookup tables for GPIO lookup
[    7.263747] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: lookup for GPIO id failed
[    7.263753] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: GPIO lookup for consumer vbus
[    7.263757] palmas-usb 48070000.i2c:tps659038@58:tps659038_usb: using device tree for GPIO lookup
[    7.263762] of_get_named_gpiod_flags: can't parse 'vbus-gpios' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]'
[    7.263833] of_get_named_gpiod_flags: parsed 'vbus-gpio' property of node '/ocp/i2c@48070000/tps659038@58/tps659038_usb[0]' - status (0)
[    8.513524] usbcore: registered new interface driver usbfs
[    8.513691] usbcore: registered new interface driver hub
[    8.513864] usbcore: registered new device driver usb
[    8.547381] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
root@am57xx-evm:~#

root@am57xx-evm:~#
root@am57xx-evm:~# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
root@am57xx-evm:~#

USB 1 port is working with default configuration.

usb2 is configured in DTS as follows :

&usb2_phy1 {
        phy-supply = <&ldousb_reg>;
};

&usb2_phy2 {
        phy-supply = <&ldousb_reg>;
};

&usb1 {
        dr_mode = "host";
};

&omap_dwc3_2 {
        extcon = <&extcon_usb2>;
};

&usb2 {
        /*
         * Stand alone usage is peripheral only.
         * However, with some resistor modifications
         * this port can be used via expansion connectors
         * as "host" or "dual-role". If so, provide
         * the necessary dr_mode override in the expansion
         * board's DT.
         */
        dr_mode = "peripheral";
};

In Menuconfig I have added the below supports :

+CONFIG_USB_DYNAMIC_MINORS=y
+CONFIG_USB_OTG=y
+CONFIG_USB_OTG_WHITELIST=y
+CONFIG_USB_OTG_FSM=m
+CONFIG_USB_GADGET_DEBUG=y
+# CONFIG_USB_GADGET_VERBOSE is not set
+# CONFIG_USB_ZERO_HNPTEST is not set

There is no voltage in USB2_5V  pin.

Please provide the Guidance to Enable USB2 as OTG (MICRO USB TYPE B FEMALE connector)