IMX6SX USB: how to enable/disable internal 1.5K pullup for USB D+ line?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX6SX USB: how to enable/disable internal 1.5K pullup for USB D+ line?

2,371 Views
liushuo
Contributor I
I'm using USBOTG2 in peripheral mode. After loading the USB gadget serial driver(g_serial.ko), the D+ line is automatically pulled HIGH, even though it is not connected to a host yet. However, I don't want the D+ line to be pulled up if it's not connected to the host. Is it possible to control this D+ line?
I found the following information online. Is this "firmware control" supported by IMX6SX? Thanks.
Speed Identification
A USB device must indicate its speed by pulling either the D+ or D- line high to 3.3 volts. A full speed device, pictured below will use a pull up resistor attached to D+ to specify itself as a full speed device. These pull up resistors at the device end will also be used by the host or hub to detect the presence of a device connected to its port. Without a pull up resistor, USB assumes there is nothing connected to the bus. Some devices have this resistor built into its silicon, which can be turned on and off under firmware control, others require an external resistor.
Labels (1)
0 Kudos
Reply
2 Replies

2,202 Views
jimmychan
NXP TechSupport
NXP TechSupport

According to the Reference Manual 67.2.5.4 Switchable 1.5KΩ USB_DP Pullup Resistor

This product contains a switchable 1.5 KΩ pullup resistor on the USB_n_DP signal. This resistor is switched on to indicate to the host/hub controller that a full-speed-capable device is on the USB cable, powered on, and ready. This resistor is switched off at power-on reset so the host does not recognize a USB device until the processor software enables the announcement of a full-speed device.

 

 pastedImage_6.png

pastedImage_7.png

However, we do not recommend that you manually change this configuration, because the USB driver will control it.

0 Kudos
Reply

2,201 Views
liushuo
Contributor I

Thanks for your answer!

0 Kudos
Reply