| To: | Ralf Baechle <ralf@linux-mips.org> |
|---|---|
| Subject: | [PATCH 3/4] MIPS: JZ4740: GPIO: Simplify IRQ demuxer |
| From: | Lars-Peter Clausen <lars@metafoo.de> |
| Date: | Fri, 3 Jun 2011 03:06:50 +0200 |
| Cc: | linux-mips@linux-mips.org, linux-kernel@vger.kernel.org, Lars-Peter Clausen <lars@metafoo.de> |
| In-reply-to: | <1307063211-10098-1-git-send-email-lars@metafoo.de> |
| References: | <1307063211-10098-1-git-send-email-lars@metafoo.de> |
| Sender: | linux-mips-bounce@linux-mips.org |
We already know the base IRQ for a GPIO chip, so there is no need to recalculate
it in the demux handler.
Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
---
arch/mips/jz4740/gpio.c | 8 +-------
1 files changed, 1 insertions(+), 7 deletions(-)
diff --git a/arch/mips/jz4740/gpio.c b/arch/mips/jz4740/gpio.c
index ab583b8..f3590a2 100644
--- a/arch/mips/jz4740/gpio.c
+++ b/arch/mips/jz4740/gpio.c
@@ -301,22 +301,16 @@ static void jz_gpio_irq_demux_handler(unsigned int irq,
struct irq_desc *desc)
{
uint32_t flag;
unsigned int gpio_irq;
- unsigned int gpio_bank;
struct jz_gpio_chip *chip = irq_desc_get_handler_data(desc);
- gpio_bank = JZ4740_IRQ_GPIO0 - irq;
-
flag = readl(chip->base + JZ_REG_GPIO_FLAG);
-
if (!flag)
return;
- gpio_irq = __fls(flag);
+ gpio_irq = chip->irq_base + __fls(flag);
jz_gpio_check_trigger_both(chip, irq);
- gpio_irq += (gpio_bank << 5) + JZ4740_IRQ_GPIO(0);
-
generic_handle_irq(gpio_irq);
};
--
1.7.2.5
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH 1/4] PM / MIPS: Use struct syscore_ops instead of sysdevs for PM (v2), Lars-Peter Clausen |
|---|---|
| Next by Date: | [PATCH 4/4] MIPS: JZ4740: GPIO: Check correct IRQ in demux handler, Lars-Peter Clausen |
| Previous by Thread: | [PATCH 1/4] PM / MIPS: Use struct syscore_ops instead of sysdevs for PM (v2), Lars-Peter Clausen |
| Next by Thread: | [PATCH 4/4] MIPS: JZ4740: GPIO: Check correct IRQ in demux handler, Lars-Peter Clausen |
| Indexes: | [Date] [Thread] [Top] [All Lists] |