openwrt/target/linux/bcm63xx/patches-5.4/325-irqchip-bcm6345-external-fix-base-uninitialized.patch

29 lines
601 B
Diff
Raw Normal View History

--- a/drivers/irqchip/irq-bcm6345-ext.c
+++ b/drivers/irqchip/irq-bcm6345-ext.c
@@ -271,21 +271,19 @@ static int __init bcm6345_ext_intc_of_in
for (i = 0; i < num_irqs; i++) {
irqs[i] = irq_of_parse_and_map(node, i);
- if (!irqs[i]) {
- ret = -ENOMEM;
- goto out_unmap;
- }
+ if (!irqs[i])
+ return -ENOMEM;
}
base = of_iomap(node, 0);
if (!base)
- goto out_unmap;
+ return -ENXIO;
ret = __bcm6345_ext_intc_init(node, num_irqs, irqs, base, shift,
toggle_clear_on_ack);
if (!ret)
return 0;
-out_unmap:
+
iounmap(base);
for (i = 0; i < num_irqs; i++)