summaryrefslogtreecommitdiff
path: root/drivers/pinctrl/pinctrl-ab8540.c
diff options
context:
space:
mode:
authorLee Jones <lee.jones@linaro.org>2013-01-31 09:57:52 +0000
committerLinus Walleij <linus.walleij@linaro.org>2013-02-10 15:44:33 +0100
commita6a16d274e734afa769a9651dfaf8315d404c116 (patch)
tree123e91e276d7b6b77f362cc1b59fb0fe78447bb5 /drivers/pinctrl/pinctrl-ab8540.c
parentac652d7941f84c24cb27378aefbb4015f4c1da67 (diff)
pinctrl/abx500: replace IRQ offsets with table read-in values
The ABx500 GPIO controller used to provide a set of virtual contiguous IRQs for use by sub-devices, but they have been removed after a request from Mainline Maintainers. Now the AB8500 core driver deals with almost all IRQ related issues instead. The ABx500 GPIO driver is now only used to convert between GPIO and IRQ numbers which is actually quite difficult, as the ABx500 GPIO's associated IRQs are clustered together throughout the interrupt number space at irregular intervals. To solve this quandary, we have placed the read-in values into the existing cluster information table to use during conversion. Signed-off-by: Lee Jones <lee.jones@linaro.org> [Moved irq_base removal into this patch] Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinctrl-ab8540.c')
-rw-r--r--drivers/pinctrl/pinctrl-ab8540.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/pinctrl/pinctrl-ab8540.c b/drivers/pinctrl/pinctrl-ab8540.c
index 0fcd9431607c..ac2e1352a5a2 100644
--- a/drivers/pinctrl/pinctrl-ab8540.c
+++ b/drivers/pinctrl/pinctrl-ab8540.c
@@ -377,8 +377,9 @@ static struct pullud ab8540_pullud = {
* GPIO51 to GPIO54
*/
struct abx500_gpio_irq_cluster ab8540_gpio_irq_cluster[] = {
- GPIO_IRQ_CLUSTER(43, 44, 2),
- GPIO_IRQ_CLUSTER(51, 54, 0),
+ GPIO_IRQ_CLUSTER(43, 43, 126),
+ GPIO_IRQ_CLUSTER(44, 44, 127),
+ GPIO_IRQ_CLUSTER(51, 54, 63),
};
static struct abx500_pinctrl_soc_data ab8540_soc = {