|
@@ -669,8 +669,6 @@ int __irq_set_trigger(struct irq_desc *desc, unsigned long flags)
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
- flags &= IRQ_TYPE_SENSE_MASK;
|
|
|
|
-
|
|
|
|
if (chip->flags & IRQCHIP_SET_TYPE_MASKED) {
|
|
if (chip->flags & IRQCHIP_SET_TYPE_MASKED) {
|
|
if (!irqd_irq_masked(&desc->irq_data))
|
|
if (!irqd_irq_masked(&desc->irq_data))
|
|
mask_irq(desc);
|
|
mask_irq(desc);
|
|
@@ -678,7 +676,8 @@ int __irq_set_trigger(struct irq_desc *desc, unsigned long flags)
|
|
unmask = 1;
|
|
unmask = 1;
|
|
}
|
|
}
|
|
|
|
|
|
- /* caller masked out all except trigger mode flags */
|
|
|
|
|
|
+ /* Mask all flags except trigger mode */
|
|
|
|
+ flags &= IRQ_TYPE_SENSE_MASK;
|
|
ret = chip->irq_set_type(&desc->irq_data, flags);
|
|
ret = chip->irq_set_type(&desc->irq_data, flags);
|
|
|
|
|
|
switch (ret) {
|
|
switch (ret) {
|