summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArun KS <arunks@codeaurora.org>2017-07-14 10:20:53 +0530
committerGerrit - the friendly Code Review server <code-review@localhost>2017-07-23 21:39:04 -0700
commit51a7468ba0f4c4e8496ab7d07058e50e080ff3b6 (patch)
tree50f78b133e4e65f1d7e3eaa8fedeb77f75798e52
parent9023a992a898bf03eccc0c1bab50093259181557 (diff)
esoc: Fix irq unbalance wake disable warning
Power management irq wakeup mode is by default disabled. Calling irq_set_irq_wake() on a disabled irq causes warning. Remove irq_set_irq_wake() function from mdm_enable/disable_irqs functions and set it once in probe. Change-Id: Ib7f49ae101e6dc04790649d408c1722df8da8bd2 Signed-off-by: Arun KS <arunks@codeaurora.org>
-rw-r--r--drivers/esoc/esoc-mdm-4x.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/esoc/esoc-mdm-4x.c b/drivers/esoc/esoc-mdm-4x.c
index 26f69fa61ba1..6eab3ea187c6 100644
--- a/drivers/esoc/esoc-mdm-4x.c
+++ b/drivers/esoc/esoc-mdm-4x.c
@@ -88,12 +88,10 @@ static void mdm_enable_irqs(struct mdm_ctrl *mdm)
return;
if (mdm->irq_mask & IRQ_ERRFATAL) {
enable_irq(mdm->errfatal_irq);
- irq_set_irq_wake(mdm->errfatal_irq, 1);
mdm->irq_mask &= ~IRQ_ERRFATAL;
}
if (mdm->irq_mask & IRQ_STATUS) {
enable_irq(mdm->status_irq);
- irq_set_irq_wake(mdm->status_irq, 1);
mdm->irq_mask &= ~IRQ_STATUS;
}
if (mdm->irq_mask & IRQ_PBLRDY) {
@@ -107,12 +105,10 @@ static void mdm_disable_irqs(struct mdm_ctrl *mdm)
if (!mdm)
return;
if (!(mdm->irq_mask & IRQ_ERRFATAL)) {
- irq_set_irq_wake(mdm->errfatal_irq, 0);
disable_irq_nosync(mdm->errfatal_irq);
mdm->irq_mask |= IRQ_ERRFATAL;
}
if (!(mdm->irq_mask & IRQ_STATUS)) {
- irq_set_irq_wake(mdm->status_irq, 0);
disable_irq_nosync(mdm->status_irq);
mdm->irq_mask |= IRQ_STATUS;
}
@@ -701,6 +697,7 @@ static int mdm_configure_ipc(struct mdm_ctrl *mdm, struct platform_device *pdev)
goto errfatal_err;
}
mdm->errfatal_irq = irq;
+ irq_set_irq_wake(mdm->errfatal_irq, 1);
errfatal_err:
/* status irq */
@@ -719,6 +716,7 @@ errfatal_err:
goto status_err;
}
mdm->status_irq = irq;
+ irq_set_irq_wake(mdm->status_irq, 1);
status_err:
if (gpio_is_valid(MDM_GPIO(mdm, MDM2AP_PBLRDY))) {
irq = platform_get_irq_byname(pdev, "plbrdy_irq");