From 5932cde9e40f716dd58850256412a26ec40475a3 Mon Sep 17 00:00:00 2001 From: zhangqing Date: Wed, 15 Oct 2014 09:54:00 +0800 Subject: [PATCH] rk312x:pmic:rk818:slove irq handle failed --- drivers/mfd/rk818-irq.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/mfd/rk818-irq.c b/drivers/mfd/rk818-irq.c index 8b15cb7700e4..7315fa1e3d60 100755 --- a/drivers/mfd/rk818-irq.c +++ b/drivers/mfd/rk818-irq.c @@ -46,7 +46,7 @@ static irqreturn_t rk818_irq(int irq, void *irq_data) u32 irq_sts; u32 irq_mask; u8 reg; - int i; + int i, cur_irq; //printk(" rk818 irq %d \n",irq); wake_lock(&rk818->irq_wake); rk818_i2c_read(rk818, RK818_INT_STS_REG1, 1, ®); @@ -72,7 +72,10 @@ static irqreturn_t rk818_irq(int irq, void *irq_data) if (!(irq_sts & (1 << i))) continue; - handle_nested_irq(rk818->irq_base + i); + cur_irq = irq_find_mapping(rk818->irq_domain, i); + + if (cur_irq) + handle_nested_irq(cur_irq); } /* Write the STS register back to clear IRQs we handled */ -- 2.34.1