Skip to content

Commit 7a5a4f9

Browse files
committed
Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull irq fixes from Thomas Gleixner: "Three fixlets from the ARM SoC camp: - correct irqdomain initialization for atmel-aic - correct error handling for device tree parsing in bcm controllers" * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: irqchip: brcmstb-l2: Fix error handling of irq_of_parse_and_map irqchip: bcm7120-l2: Fix error handling of irq_of_parse_and_map irqchip: atmel-aic: Fix irqdomain initialization
2 parents ed02bfa + d99ba44 commit 7a5a4f9

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

drivers/irqchip/irq-atmel-aic-common.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -217,8 +217,9 @@ struct irq_domain *__init aic_common_of_init(struct device_node *node,
217217
}
218218

219219
ret = irq_alloc_domain_generic_chips(domain, 32, 1, name,
220-
handle_level_irq, 0, 0,
221-
IRQCHIP_SKIP_SET_WAKE);
220+
handle_fasteoi_irq,
221+
IRQ_NOREQUEST | IRQ_NOPROBE |
222+
IRQ_NOAUTOEN, 0, 0);
222223
if (ret)
223224
goto err_domain_remove;
224225

@@ -230,7 +231,6 @@ struct irq_domain *__init aic_common_of_init(struct device_node *node,
230231
gc->unused = 0;
231232
gc->wake_enabled = ~0;
232233
gc->chip_types[0].type = IRQ_TYPE_SENSE_MASK;
233-
gc->chip_types[0].handler = handle_fasteoi_irq;
234234
gc->chip_types[0].chip.irq_eoi = irq_gc_eoi;
235235
gc->chip_types[0].chip.irq_set_wake = irq_gc_set_wake;
236236
gc->chip_types[0].chip.irq_shutdown = aic_common_shutdown;

drivers/irqchip/irq-bcm7120-l2.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,9 @@ static int bcm7120_l2_intc_init_one(struct device_node *dn,
101101
int parent_irq;
102102

103103
parent_irq = irq_of_parse_and_map(dn, irq);
104-
if (parent_irq < 0) {
104+
if (!parent_irq) {
105105
pr_err("failed to map interrupt %d\n", irq);
106-
return parent_irq;
106+
return -EINVAL;
107107
}
108108

109109
data->irq_map_mask |= be32_to_cpup(map_mask + irq);

drivers/irqchip/irq-brcmstb-l2.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,9 @@ int __init brcmstb_l2_intc_of_init(struct device_node *np,
135135
__raw_writel(0xffffffff, data->base + CPU_CLEAR);
136136

137137
data->parent_irq = irq_of_parse_and_map(np, 0);
138-
if (data->parent_irq < 0) {
138+
if (!data->parent_irq) {
139139
pr_err("failed to find parent interrupt\n");
140-
ret = data->parent_irq;
140+
ret = -EINVAL;
141141
goto out_unmap;
142142
}
143143

0 commit comments

Comments
 (0)