Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq fixes from Thomas Glexiner: - unbreak the irq trigger type check for legacy platforms - a handful fixes for ARM GIC v3/4 interrupt controllers - a few trivial fixes all over the place * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: genirq/matrix: Make - vs ?: Precedence explicit irqchip/imgpdc: Use resource_size function on resource object irqchip/qcom: Fix u32 comparison with value less than zero irqchip/exiu: Fix return value check in exiu_init() irqchip/gic-v3-its: Remove artificial dependency on PCI irqchip/gic-v4: Add forward definition of struct irq_domain_ops irqchip/gic-v3: pr_err() strings should end with newlines irqchip/s3c24xx: pr_err() strings should end with newlines irqchip/gic-v3: Fix ppi-partitions lookup irqchip/gic-v4: Clear IRQ_DISABLE_UNLAZY again if mapping fails genirq: Track whether the trigger type has been set
This commit is contained in:
+12
-1
@@ -1246,7 +1246,18 @@ __setup_irq(unsigned int irq, struct irq_desc *desc, struct irqaction *new)
|
||||
* set the trigger type must match. Also all must
|
||||
* agree on ONESHOT.
|
||||
*/
|
||||
unsigned int oldtype = irqd_get_trigger_type(&desc->irq_data);
|
||||
unsigned int oldtype;
|
||||
|
||||
/*
|
||||
* If nobody did set the configuration before, inherit
|
||||
* the one provided by the requester.
|
||||
*/
|
||||
if (irqd_trigger_type_was_set(&desc->irq_data)) {
|
||||
oldtype = irqd_get_trigger_type(&desc->irq_data);
|
||||
} else {
|
||||
oldtype = new->flags & IRQF_TRIGGER_MASK;
|
||||
irqd_set_trigger_type(&desc->irq_data, oldtype);
|
||||
}
|
||||
|
||||
if (!((old->flags & new->flags) & IRQF_SHARED) ||
|
||||
(oldtype != (new->flags & IRQF_TRIGGER_MASK)) ||
|
||||
|
||||
+1
-1
@@ -384,7 +384,7 @@ unsigned int irq_matrix_available(struct irq_matrix *m, bool cpudown)
|
||||
{
|
||||
struct cpumap *cm = this_cpu_ptr(m->maps);
|
||||
|
||||
return m->global_available - cpudown ? cm->available : 0;
|
||||
return (m->global_available - cpudown) ? cm->available : 0;
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user