We are experiencing an ESD failure with OMAPL138 USB2.0 port in host mode. Here are some details about the failure:
- An ESD pulse is applied near the USB connector when OMAPL138 USB2 host port is connected to a single USB slave device.
- The USB peripheral becomes unresponsive when the failure occurs, however, the peripheral can recover and continue functioning properly if we:
- Disconnect and reconnect the slave device from the host port.
- Perform a H/W reset of OMAP-L138
- When the failure occurs we observe that the D+ is held low, however we have observed the following:
- The failure only seems to occur when the bus is idle. If the ESD strike is applied while there are on-going IN/OUT transactions on the bus the failure does not occur.
- When the bus is idle and an ESD strike is applied between SOFs, then the failure occurs however the D+ line does not go low until the next SOF time period.
Questions:
- Is there any register with OMAP-L138 that we can query to determine the status of D+? We're looking for a S/W mechanism to detect when this failure occurs.
- Is there any mechanism in place on OMAP-L138 USB2.0 transceiver to detect an ESD or high voltage condition on the D+ line at the next SOF slot?
Thanks