bcm63xx: periph_intc: fix warning
authorÁlvaro Fernández Rojas <noltari@gmail.com>
Thu, 14 May 2020 14:23:21 +0000 (16:23 +0200)
committerÁlvaro Fernández Rojas <noltari@gmail.com>
Thu, 14 May 2020 14:27:31 +0000 (16:27 +0200)
drivers/irqchip/irq-bcm6345-periph.c: In function 'bcm6345_periph_irq_handle':
drivers/irqchip/irq-bcm6345-periph.c:55:21: warning: 'block' may be used uninitialized in this function [-Wmaybe-uninitialized]
  struct intc_block *block;
                     ^~~~~

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
target/linux/bcm63xx/patches-5.4/324-irqchip-bcm6345-periph-fix-block-uninitialized.patch [new file with mode: 0644]

diff --git a/target/linux/bcm63xx/patches-5.4/324-irqchip-bcm6345-periph-fix-block-uninitialized.patch b/target/linux/bcm63xx/patches-5.4/324-irqchip-bcm6345-periph-fix-block-uninitialized.patch
new file mode 100644 (file)
index 0000000..60a645e
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/drivers/irqchip/irq-bcm6345-periph.c
++++ b/drivers/irqchip/irq-bcm6345-periph.c
+@@ -52,7 +52,7 @@ static void bcm6345_periph_irq_handle(st
+ {
+       struct intc_data *data = irq_desc_get_handler_data(desc);
+       struct irq_chip *chip = irq_desc_get_chip(desc);
+-      struct intc_block *block;
++      struct intc_block *block = NULL;
+       unsigned int irq = irq_desc_get_irq(desc);
+       unsigned int idx;
+@@ -62,7 +62,7 @@ static void bcm6345_periph_irq_handle(st
+               if (irq == data->block[idx].parent_irq)
+                       block = &data->block[idx];
+-      for (idx = 0; idx < data->num_words; idx++) {
++      for (idx = 0; block && idx < data->num_words; idx++) {
+               int base = idx * IRQS_PER_WORD;
+               unsigned long pending;
+               int hw_irq;