aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinctrl-abx500.h
diff options
context:
space:
mode:
authorLee Jones <lee.jones@linaro.org>2013-01-31 04:57:52 -0500
committerLinus Walleij <linus.walleij@linaro.org>2013-02-10 09:44:33 -0500
commita6a16d274e734afa769a9651dfaf8315d404c116 (patch)
tree123e91e276d7b6b77f362cc1b59fb0fe78447bb5 /drivers/pinctrl/pinctrl-abx500.h
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-abx500.h')
-rw-r--r--drivers/pinctrl/pinctrl-abx500.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/pinctrl/pinctrl-abx500.h b/drivers/pinctrl/pinctrl-abx500.h
index df8e0ff0c5d5..eeca8f973999 100644
--- a/drivers/pinctrl/pinctrl-abx500.h
+++ b/drivers/pinctrl/pinctrl-abx500.h
@@ -98,7 +98,7 @@ struct pullud {
98{ \ 98{ \
99 .start = a, \ 99 .start = a, \
100 .end = b, \ 100 .end = b, \
101 .offset = c, \ 101 .to_irq = c, \
102} 102}
103 103
104/** 104/**
@@ -106,14 +106,16 @@ struct pullud {
106 * capable 106 * capable
107 * @start: The pin number of the first pin interrupt capable 107 * @start: The pin number of the first pin interrupt capable
108 * @end: The pin number of the last pin interrupt capable 108 * @end: The pin number of the last pin interrupt capable
109 * @offset: offset used to compute specific setting strategy of 109 * @to_irq: The ABx500 GPIO's associated IRQs are clustered
110 * the interrupt line 110 * together throughout the interrupt numbers at irregular
111 * intervals. To solve this quandary, we will place the
112 * read-in values into the cluster information table
111 */ 113 */
112 114
113struct abx500_gpio_irq_cluster { 115struct abx500_gpio_irq_cluster {
114 int start; 116 int start;
115 int end; 117 int end;
116 int offset; 118 int to_irq;
117}; 119};
118 120
119/** 121/**