^

AR# 47538 Zynq-7000 AP SoC, USB - Device Mode from OTG does not Generate a Port Change Interrupt when Session is no longer Valid

The USB controller in OTG mode and acting as self-powered device does not generate a port change interrupt when the session is no longer valid (VBUS not present). To work around this, software can enable the B session end interrupt to detect when the VBUS voltage level drops.

Impact:

Minor. Refer to the workaround.

Workaround:

The two-step work-around is described in the Workaround Details.

Configurations Affected:

Systems that use the USB controller in OTG mode.

Device Revision(s) Affected: All, no plan to fix. Refer to (Xilinx Answer 47916) - Zynq-7000 Design Advisory Master Answer Record


Workaround Details

The following software steps can be followed to detect a disconnect from the host:

  • Enable the B SessionEnd Interrupt. Setusb.OTGSC[BSEIE] = 1.
  • Monitor for an interrupt statususing usb.OTGSC [BSEIS].

Note: The VBUS comparator interrupts are de-bounced for 1ms, so it will take 1ms to 2ms for the interrupt to be asserted from the time the disconnect has occurred.

AR# 47538
Date Created 05/23/2012
Last Updated 11/12/2012
Status Active
Type Design Advisory
Devices
  • Zynq-7000
Feed Back