summaryrefslogtreecommitdiffstats
path: root/drivers/pinctrl/pinctrl-ab9540.c
diff options
context:
space:
mode:
authorLee Jones <lee.jones@linaro.org>2013-01-31 10:45:17 +0100
committerLinus Walleij <linus.walleij@linaro.org>2013-02-06 22:38:40 +0100
commitb9fab6e45d2d41de5495f7d40808e9e131652f92 (patch)
treed832b21acfd75e63982c6031e5b20998febf760a /drivers/pinctrl/pinctrl-ab9540.c
parentpinctrl/abx500: prevent error path from corrupting returning error (diff)
downloadlinux-b9fab6e45d2d41de5495f7d40808e9e131652f92.tar.xz
linux-b9fab6e45d2d41de5495f7d40808e9e131652f92.zip
pinctrl/abx500: align GPIO cluster boundaries
Not quite sure how this ever worked. In ab8500_gpio_to_irq() the GPIO for conversion is passed through as the second argument. If GPIO13, which is a valid GPIO for IRQ functionality, was received; it would be rejected by the following guard: GPIO_IRQ_CLUSTER(5, 12, 0); /* GPIO numbers start from 1 */ if (offset >= cluster->start && offset <= cluster->end) /* Valid GPIO for IRQ use */ Signed-off-by: Lee Jones <lee.jones@linaro.org> [Augmented to account for off-by-one problem] Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'drivers/pinctrl/pinctrl-ab9540.c')
-rw-r--r--drivers/pinctrl/pinctrl-ab9540.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/pinctrl/pinctrl-ab9540.c b/drivers/pinctrl/pinctrl-ab9540.c
index 31fec3e5dd52..28dfb2ee5531 100644
--- a/drivers/pinctrl/pinctrl-ab9540.c
+++ b/drivers/pinctrl/pinctrl-ab9540.c
@@ -455,10 +455,10 @@ struct alternate_functions ab9540alternate_functions[AB9540_GPIO_MAX_NUMBER + 1]
};
struct abx500_gpio_irq_cluster ab9540_gpio_irq_cluster[] = {
- GPIO_IRQ_CLUSTER(9, 12, 0), /* GPIO numbers start from 1 */
- GPIO_IRQ_CLUSTER(23, 24, 0),
- GPIO_IRQ_CLUSTER(39, 40, 0),
- GPIO_IRQ_CLUSTER(49, 53, 0),
+ GPIO_IRQ_CLUSTER(10, 13, 0),
+ GPIO_IRQ_CLUSTER(24, 25, 0),
+ GPIO_IRQ_CLUSTER(40, 41, 0),
+ GPIO_IRQ_CLUSTER(50, 54, 0),
};
static struct abx500_pinctrl_soc_data ab9540_soc = {