Commit a80a0bbe authored by Marc Zyngier's avatar Marc Zyngier Committed by Linus Torvalds

gpio: add interrupt handling capability to max732x

Most of the GPIO expanders supported by the max732x driver have interrupt
generation capability by reporting changes on input pins through an INT#
pin.  This patch implements the irq_chip functionnality (edge detection
only).
Signed-off-by: default avatarMarc Zyngier <maz@misterjones.org>
Cc: Eric Miao <eric.y.miao@gmail.com>
Cc: Jebediah Huang <jebediah.huang@gmail.com>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 0af62f4d
...@@ -139,6 +139,13 @@ config GPIO_MAX732X ...@@ -139,6 +139,13 @@ config GPIO_MAX732X
Board setup code must specify the model to use, and the start Board setup code must specify the model to use, and the start
number for these GPIOs. number for these GPIOs.
config GPIO_MAX732X_IRQ
bool "Interrupt controller support for MAX732x"
depends on GPIO_MAX732X=y && GENERIC_HARDIRQS
help
Say yes here to enable the max732x to be used as an interrupt
controller. It requires the driver to be built in the kernel.
config GPIO_PCA953X config GPIO_PCA953X
tristate "PCA953x, PCA955x, TCA64xx, and MAX7310 I/O ports" tristate "PCA953x, PCA955x, TCA64xx, and MAX7310 I/O ports"
depends on I2C depends on I2C
......
This diff is collapsed.
...@@ -7,6 +7,9 @@ struct max732x_platform_data { ...@@ -7,6 +7,9 @@ struct max732x_platform_data {
/* number of the first GPIO */ /* number of the first GPIO */
unsigned gpio_base; unsigned gpio_base;
/* interrupt base */
int irq_base;
void *context; /* param to setup/teardown */ void *context; /* param to setup/teardown */
int (*setup)(struct i2c_client *client, int (*setup)(struct i2c_client *client,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment