summaryrefslogtreecommitdiff
path: root/include/linux/irq.h
diff options
context:
space:
mode:
authorLinus Walleij <linus.walleij@linaro.org>2019-02-07 21:16:23 -0500
committerLinus Walleij <linus.walleij@linaro.org>2019-02-13 09:23:05 +0100
commit5aa5bd563ce041d931c0dc1fc436dd18c27c60a7 (patch)
treef01d80a8f43b6fa082a78240aaaf2e484ed95c59 /include/linux/irq.h
parentb5c231d8c8037f63d34199ea1667bbe1cd9f940f (diff)
downloadlwn-5aa5bd563ce041d931c0dc1fc436dd18c27c60a7.tar.gz
lwn-5aa5bd563ce041d931c0dc1fc436dd18c27c60a7.zip
genirq: introduce irq_chip_mask_ack_parent()
The hierarchical irqchip never before ran into a situation where the parent is not "simple", i.e. does not implement .irq_ack() and .irq_mask() like most, but the qcom-pm8xxx.c happens to implement only .irq_mask_ack(). Since we want to make ssbi-gpio a hierarchical child of this irqchip, it must *also* only implement .irq_mask_ack() and call down to the parent, and for this we of course need irq_chip_mask_ack_parent(). Cc: Marc Zyngier <marc.zyngier@arm.com> Cc: Thomas Gleixner <tglx@linutronix.de> Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Brian Masney <masneyb@onstation.org> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'include/linux/irq.h')
-rw-r--r--include/linux/irq.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/irq.h b/include/linux/irq.h
index def2b2aac8b1..9a1a67d2e07d 100644
--- a/include/linux/irq.h
+++ b/include/linux/irq.h
@@ -605,6 +605,7 @@ extern void irq_chip_disable_parent(struct irq_data *data);
extern void irq_chip_ack_parent(struct irq_data *data);
extern int irq_chip_retrigger_hierarchy(struct irq_data *data);
extern void irq_chip_mask_parent(struct irq_data *data);
+extern void irq_chip_mask_ack_parent(struct irq_data *data);
extern void irq_chip_unmask_parent(struct irq_data *data);
extern void irq_chip_eoi_parent(struct irq_data *data);
extern int irq_chip_set_affinity_parent(struct irq_data *data,