Преглед изворни кода

bcm63xx: mask interrupts on init

Fixes BCM6348/BCM6358 hangs while booting:
https://bugs.openwrt.org/index.php?do=details&task_id=2202

Signed-off-by: Álvaro Fernández Rojas <[email protected]>
Álvaro Fernández Rojas пре 5 година
родитељ
комит
13c33f3f12

+ 12 - 0
target/linux/bcm63xx/patches-5.4/327-irqchip-bcm6345-periph-clear-on-init.patch

@@ -0,0 +1,12 @@
+--- a/drivers/irqchip/irq-bcm6345-periph.c
++++ b/drivers/irqchip/irq-bcm6345-periph.c
+@@ -240,6 +240,9 @@ static int __init __bcm6345_periph_intc_
+ 			/* route all interrupts to line 0 by default */
+ 			if (i == 0)
+ 				block->mask_cache[w] = 0xffffffff;
++
++			/* mask all interrupts */
++			__raw_writel(0, block->en_reg[w]);
+ 		}
+ 
+ 		irq_set_handler_data(block->parent_irq, data);