|
@@ -1613,6 +1613,15 @@ int _gpiochip_irqchip_add(struct gpio_chip *gpiochip,
|
|
|
if (gpiochip->of_node)
|
|
|
of_node = gpiochip->of_node;
|
|
|
#endif
|
|
|
+ /*
|
|
|
+ * Specifying a default trigger is a terrible idea if DT is
|
|
|
+ * used to configure the interrupts, as you may end-up with
|
|
|
+ * conflicting triggers. Tell the user, and reset to NONE.
|
|
|
+ */
|
|
|
+ if (WARN(of_node && type != IRQ_TYPE_NONE,
|
|
|
+ "%s: Ignoring %d default trigger\n", of_node->full_name, type))
|
|
|
+ type = IRQ_TYPE_NONE;
|
|
|
+
|
|
|
gpiochip->irqchip = irqchip;
|
|
|
gpiochip->irq_handler = handler;
|
|
|
gpiochip->irq_default_type = type;
|