usb: dwc3: dwc3-msm-core: configured dp/dm irqs

- Ensure proper configuration of USB wakeup interrupts for
  DP_HS_PHY_IRQ and DM_HS_PHY_IRQ.
- Apply level high trigger when in host mode without a connected
  device.
- Use edge rising trigger otherwise.

Change-Id: I5962baa53c5170c61bca7be389d38bf63894caea
Signed-off-by: Uttkarsh Aggarwal <quic_uaggarwa@quicinc.com>
This commit is contained in:
Uttkarsh Aggarwal 2024-06-19 11:17:35 +05:30
parent 448b009f8d
commit 37b027fb58

View File

@ -3942,12 +3942,14 @@ static void configure_usb_wakeup_interrupts(struct dwc3_msm *mdwc, bool enable)
*/
configure_usb_wakeup_interrupt(mdwc,
&mdwc->wakeup_irq[DP_HS_PHY_IRQ],
mdwc->in_host_mode ?
mdwc->in_host_mode && !(mdwc->use_pwr_event_for_wakeup
& PWR_EVENT_HS_WAKEUP) ?
(IRQF_TRIGGER_HIGH | IRQ_TYPE_LEVEL_HIGH) :
IRQ_TYPE_EDGE_RISING, true);
configure_usb_wakeup_interrupt(mdwc,
&mdwc->wakeup_irq[DM_HS_PHY_IRQ],
mdwc->in_host_mode ?
mdwc->in_host_mode && !(mdwc->use_pwr_event_for_wakeup
& PWR_EVENT_HS_WAKEUP) ?
(IRQF_TRIGGER_HIGH | IRQ_TYPE_LEVEL_HIGH) :
IRQ_TYPE_EDGE_RISING, true);
}