1 From a5f3d2672d5b9efe93be0bf66d69156bf806220b Mon Sep 17 00:00:00 2001
2 From: Hans de Goede <hdegoede@redhat.com>
3 Date: Mon, 17 Feb 2014 22:04:20 +0100
4 Subject: [PATCH] pinctrl-sunxi: Fix interrupt register offset calculation
6 This fixing setting the interrupt type for eints >= 8.
8 Signed-off-by: Hans de Goede <hdegoede@redhat.com>
10 drivers/pinctrl/pinctrl-sunxi.h | 6 +++---
11 1 file changed, 3 insertions(+), 3 deletions(-)
13 diff --git a/drivers/pinctrl/pinctrl-sunxi.h b/drivers/pinctrl/pinctrl-sunxi.h
14 index 01c494f..552b0e9 100644
15 --- a/drivers/pinctrl/pinctrl-sunxi.h
16 +++ b/drivers/pinctrl/pinctrl-sunxi.h
17 @@ -511,7 +511,7 @@ static inline u32 sunxi_pull_offset(u16 pin)
19 static inline u32 sunxi_irq_cfg_reg(u16 irq)
21 - u8 reg = irq / IRQ_CFG_IRQ_PER_REG;
22 + u8 reg = irq / IRQ_CFG_IRQ_PER_REG * 0x04;
23 return reg + IRQ_CFG_REG;
26 @@ -523,7 +523,7 @@ static inline u32 sunxi_irq_cfg_offset(u16 irq)
28 static inline u32 sunxi_irq_ctrl_reg(u16 irq)
30 - u8 reg = irq / IRQ_CTRL_IRQ_PER_REG;
31 + u8 reg = irq / IRQ_CTRL_IRQ_PER_REG * 0x04;
32 return reg + IRQ_CTRL_REG;
35 @@ -535,7 +535,7 @@ static inline u32 sunxi_irq_ctrl_offset(u16 irq)
37 static inline u32 sunxi_irq_status_reg(u16 irq)
39 - u8 reg = irq / IRQ_STATUS_IRQ_PER_REG;
40 + u8 reg = irq / IRQ_STATUS_IRQ_PER_REG * 0x04;
41 return reg + IRQ_STATUS_REG;