aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/gpio
diff options
context:
space:
mode:
authorThierry Reding <treding@nvidia.com>2017-11-07 13:15:48 -0500
committerLinus Walleij <linus.walleij@linaro.org>2017-11-08 08:07:20 -0500
commitc7a0aa59524c5bb20bebaca360f7c5faaec6b806 (patch)
treed4eec845e9b4a22a2596e45fd5438e6b8f89b0c3 /include/linux/gpio
parentf0fbe7bce733561b76a5b55c5f4625888acd3792 (diff)
gpio: Move irq_handler to struct gpio_irq_chip
In order to consolidate the multiple ways to associate an IRQ chip with a GPIO chip, move more fields into the new struct gpio_irq_chip. Signed-off-by: Thierry Reding <treding@nvidia.com> Acked-by: Grygorii Strashko <grygorii.strashko@ti.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/linux/gpio')
-rw-r--r--include/linux/gpio/driver.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h
index c5dfa8c0b829..864f507e859b 100644
--- a/include/linux/gpio/driver.h
+++ b/include/linux/gpio/driver.h
@@ -47,6 +47,14 @@ struct gpio_irq_chip {
47 const struct irq_domain_ops *domain_ops; 47 const struct irq_domain_ops *domain_ops;
48 48
49 /** 49 /**
50 * @handler:
51 *
52 * The IRQ handler to use (often a predefined IRQ core function) for
53 * GPIO IRQs, provided by GPIO driver.
54 */
55 irq_flow_handler_t handler;
56
57 /**
50 * @parent_handler: 58 * @parent_handler:
51 * 59 *
52 * The interrupt handler for the GPIO chip's parent interrupts, may be 60 * The interrupt handler for the GPIO chip's parent interrupts, may be
@@ -132,8 +140,6 @@ static inline struct gpio_irq_chip *to_gpio_irq_chip(struct irq_chip *chip)
132 * safely. 140 * safely.
133 * @bgpio_dir: shadowed direction register for generic GPIO to clear/set 141 * @bgpio_dir: shadowed direction register for generic GPIO to clear/set
134 * direction safely. 142 * direction safely.
135 * @irq_handler: the irq handler to use (often a predefined irq core function)
136 * for GPIO IRQs, provided by GPIO driver
137 * @irq_default_type: default IRQ triggering type applied during GPIO driver 143 * @irq_default_type: default IRQ triggering type applied during GPIO driver
138 * initialization, provided by GPIO driver 144 * initialization, provided by GPIO driver
139 * @irq_chained_parent: GPIO IRQ chip parent/bank linux irq number, 145 * @irq_chained_parent: GPIO IRQ chip parent/bank linux irq number,
@@ -214,7 +220,6 @@ struct gpio_chip {
214 * With CONFIG_GPIOLIB_IRQCHIP we get an irqchip inside the gpiolib 220 * With CONFIG_GPIOLIB_IRQCHIP we get an irqchip inside the gpiolib
215 * to handle IRQs for most practical cases. 221 * to handle IRQs for most practical cases.
216 */ 222 */
217 irq_flow_handler_t irq_handler;
218 unsigned int irq_default_type; 223 unsigned int irq_default_type;
219 unsigned int irq_chained_parent; 224 unsigned int irq_chained_parent;
220 bool irq_nested; 225 bool irq_nested;