USB: gadget: Perform BAM reset as part of disconnect processing
Currently BAM reset is not performed as part of disconnect processing.
This is causing EP flush issues during connect/disconnect and
composition switch, which results in basic USB functionality
failure. USB doesn't recover unless cable is reconnected. As per hardware
programming guide, it is required to do BAM reset during disconnect
processing. Hence make necessary changes to perform BAM reset during
disconnect.
Also disable USB interrupt before scheduling disconnect work in function
drivers which uses BAM2BAM mode and re-enable it once either disconnect
processing and BAM reset is done or one second timer expires to enable
forcefully.
CRs-Fixed: 830194
Change-Id: Ic7c3c5621b0a02ce33c04ea6fbfb2dd86383ece3
Signed-off-by:
Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
Loading
Please register or sign in to comment