USB: gadget: Fix race between pullup and USB entering into LPM
During USB composition switch and USB cable connected scenario,
there can be a race when ChipIdea controller driver is performing
the pullup, USB entered into low power mode because USB cable was
disconnected right at this time. While processing the USB entering
into LPM, it turns off the usb core clock. As part of pullup, it has
to access the ulpi register to perform the DP pullup and leads to
unclocked access because usb core clock was off already.
Fix this by protecting the pullup under udc lock. If vbus is not active,
then do not process the pullup part.
Change-Id: Ic7aa45b14196d74ceb3789de8e250fe8fdebbc1b
Signed-off-by:
ChandanaKishori Chiluveru <cchilu@codeaurora.org>
Loading
Please register or sign in to comment