usb: dwc3: add support for pwr_event_irq
Adds support for the pwr_event_irq in general, and for the L1_OUT pwr event specifically. The support consists of: 1. Enabling the pwr_event_irq based on the DT. 2. Adding a threaded irq handler as well as a centralized function (dwc3_pwr_event_handler()) for handling the various power events. 3. Enabling the L1_OUT pwr event. This is done on an arch-by-arch basis. The trigger for enabling this is dbm_l1_lpm_interrupt(). 4. Calling usb_gadget_wakeup() in order to initiate a wakeup sequence without sending a remote-wakeup indication to the host. 5. Adding a call from dwc3_msm_resume() to dwc3_pwr_event_handler(). This is done in order to overcome a situation where dwc3_msm_suspend() would have disabled the clocks, thereby disabling the ability to read the PWR_STAT register before calling the handler function. Change-Id: Ia548ec2e9ee4a7c6634c87ba24fe4cdbf1221000 Signed-off-by:Dov Levenglick <dovl@codeaurora.org> Signed-off-by:
Bar Weiner <bweiner@codeaurora.org>
Loading
Please register or sign in to comment