summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2023-06-24 00:24:09 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2023-06-24 00:24:09 +0200
commit6edecb9986eeffbf67e89aa510bc07835067cf60 (patch)
tree76975f49a8f6d36bd5b1636cc826439e50cfee4c /include
parentworkqueue: clean up WORK_* constant types, clarify masking (diff)
parentgpiolib: Fix irq_domain resource tracking for gpiochip_irqchip_add_domain() (diff)
downloadlinux-6edecb9986eeffbf67e89aa510bc07835067cf60.tar.xz
linux-6edecb9986eeffbf67e89aa510bc07835067cf60.zip
Merge tag 'gpio-fixes-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux
Pull gpio fixes from Bartosz Golaszewski: - fix IRQ initialization in gpiochip_irqchip_add_domain() - add a missing return value check for platform_get_irq() in gpio-sifive - don't free irq_domains which GPIOLIB does not manage * tag 'gpio-fixes-for-v6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: gpiolib: Fix irq_domain resource tracking for gpiochip_irqchip_add_domain() gpio: sifive: add missing check for platform_get_irq gpiolib: Fix GPIO chip IRQ initialization restriction
Diffstat (limited to 'include')
-rw-r--r--include/linux/gpio/driver.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h
index 5c6db5533be6..67b8774eed8f 100644
--- a/include/linux/gpio/driver.h
+++ b/include/linux/gpio/driver.h
@@ -252,6 +252,14 @@ struct gpio_irq_chip {
bool initialized;
/**
+ * @domain_is_allocated_externally:
+ *
+ * True it the irq_domain was allocated outside of gpiolib, in which
+ * case gpiolib won't free the irq_domain itself.
+ */
+ bool domain_is_allocated_externally;
+
+ /**
* @init_hw: optional routine to initialize hardware before
* an IRQ chip will be added. This is quite useful when
* a particular driver wants to clear IRQ related registers