summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilippe Langlais <philippe.langlais@linaro.org>2012-02-29 14:56:10 +0100
committerPhilippe Langlais <philippe.langlais@stericsson.com>2012-05-22 11:02:53 +0200
commitb1c4c311f0040e398e1c27d77b442b8c19d30e86 (patch)
tree89c75cf4fc0c2bb114dbddf7265b30d6cb71363a
parentfcfae79728374fea7ccab95f2e08cabc203c92ea (diff)
mfd/ab8500: gpio: remaining mainline differences
This collects the AB9540 changes that could not be included in the mainline patch set due to differences in the internal code (esp re GPIO driver). Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
-rw-r--r--include/linux/mfd/abx500/ab8500-gpio.h24
1 files changed, 22 insertions, 2 deletions
diff --git a/include/linux/mfd/abx500/ab8500-gpio.h b/include/linux/mfd/abx500/ab8500-gpio.h
index c362b805104..67ac32c1dcb 100644
--- a/include/linux/mfd/abx500/ab8500-gpio.h
+++ b/include/linux/mfd/abx500/ab8500-gpio.h
@@ -20,8 +20,8 @@ struct ab8500_gpio_platform_data {
int gpio_base;
u32 irq_base;
u8 config_reg[8];
- u8 config_direction[6];
- u8 config_pullups[6];
+ u8 config_direction[7];
+ u8 config_pullups[7];
};
enum ab8500_pin {
@@ -67,6 +67,26 @@ enum ab8500_pin {
AB8500_PIN_GPIO40,
AB8500_PIN_GPIO41,
AB8500_PIN_GPIO42,
+ /* AB9540 GPIO extends support provided by AB8500 */
+ AB9540_PIN_GPIO43,
+ AB9540_PIN_GPIO44,
+ AB9540_PIN_GPIO45,
+ AB9540_PIN_GPIO46,
+ AB9540_PIN_GPIO47,
+ AB9540_PIN_GPIO48,
+ AB9540_PIN_GPIO49,
+ AB9540_PIN_GPIO50,
+ AB9540_PIN_GPIO51,
+ AB9540_PIN_GPIO52,
+ AB9540_PIN_GPIO53,
+ /*
+ * AB9540_PIN_GPIO60 is configured, in the AB9540 GPIO registers, where
+ * AB9540_PIN_GPIO54 would be expected. AB9540_PIN_GPIO54 to
+ * AB9540_PIN_GPIO59 do not exist and no reserved space has been left
+ * for them in the registers. Therefore the enum goes directly from
+ * AB9540_PIN_GPIO53 to AB9540_PIN_GPIO60.
+ */
+ AB9540_PIN_GPIO60,
};
int ab8500_config_pulldown(struct device *dev,