Skip to content

Commit

Permalink
usb: dwc3: qcom: Add helper functions to enable,disable wake irqs
Browse files Browse the repository at this point in the history
Adding helper functions to enable,disable wake irqs to make
the code simple and readable.

Reviewed-by: Matthias Kaehlcke <mka@chromium.org>
Reviewed-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com>
Signed-off-by: Sandeep Maheswaram <quic_c_sanm@quicinc.com>
Signed-off-by: Krishna Kurapati <quic_kriskura@quicinc.com>
Link: https://lore.kernel.org/r/1655094654-24052-4-git-send-email-quic_kriskura@quicinc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
  • Loading branch information
Sandeep Maheswaram authored and Greg Kroah-Hartman committed Jun 21, 2022
1 parent 649f5c8 commit 360e823
Showing 1 changed file with 26 additions and 32 deletions.
58 changes: 26 additions & 32 deletions drivers/usb/dwc3/dwc3-qcom.c
Original file line number Diff line number Diff line change
Expand Up @@ -296,50 +296,44 @@ static void dwc3_qcom_interconnect_exit(struct dwc3_qcom *qcom)
icc_put(qcom->icc_path_apps);
}

static void dwc3_qcom_enable_wakeup_irq(int irq)
{
if (!irq)
return;

enable_irq(irq);
enable_irq_wake(irq);
}

static void dwc3_qcom_disable_wakeup_irq(int irq)
{
if (!irq)
return;

disable_irq_wake(irq);
disable_irq_nosync(irq);
}

static void dwc3_qcom_disable_interrupts(struct dwc3_qcom *qcom)
{
if (qcom->hs_phy_irq) {
disable_irq_wake(qcom->hs_phy_irq);
disable_irq_nosync(qcom->hs_phy_irq);
}
dwc3_qcom_disable_wakeup_irq(qcom->hs_phy_irq);

if (qcom->dp_hs_phy_irq) {
disable_irq_wake(qcom->dp_hs_phy_irq);
disable_irq_nosync(qcom->dp_hs_phy_irq);
}
dwc3_qcom_disable_wakeup_irq(qcom->dp_hs_phy_irq);

if (qcom->dm_hs_phy_irq) {
disable_irq_wake(qcom->dm_hs_phy_irq);
disable_irq_nosync(qcom->dm_hs_phy_irq);
}
dwc3_qcom_disable_wakeup_irq(qcom->dm_hs_phy_irq);

if (qcom->ss_phy_irq) {
disable_irq_wake(qcom->ss_phy_irq);
disable_irq_nosync(qcom->ss_phy_irq);
}
dwc3_qcom_disable_wakeup_irq(qcom->ss_phy_irq);
}

static void dwc3_qcom_enable_interrupts(struct dwc3_qcom *qcom)
{
if (qcom->hs_phy_irq) {
enable_irq(qcom->hs_phy_irq);
enable_irq_wake(qcom->hs_phy_irq);
}
dwc3_qcom_enable_wakeup_irq(qcom->hs_phy_irq);

if (qcom->dp_hs_phy_irq) {
enable_irq(qcom->dp_hs_phy_irq);
enable_irq_wake(qcom->dp_hs_phy_irq);
}
dwc3_qcom_enable_wakeup_irq(qcom->dp_hs_phy_irq);

if (qcom->dm_hs_phy_irq) {
enable_irq(qcom->dm_hs_phy_irq);
enable_irq_wake(qcom->dm_hs_phy_irq);
}
dwc3_qcom_enable_wakeup_irq(qcom->dm_hs_phy_irq);

if (qcom->ss_phy_irq) {
enable_irq(qcom->ss_phy_irq);
enable_irq_wake(qcom->ss_phy_irq);
}
dwc3_qcom_enable_wakeup_irq(qcom->ss_phy_irq);
}

static int dwc3_qcom_suspend(struct dwc3_qcom *qcom)
Expand Down

0 comments on commit 360e823

Please sign in to comment.