In file included from ./arch/mips/include/asm/io.h:34,
                 from ./arch/mips/include/asm/mmiowb.h:5,
                 from ./include/linux/spinlock.h:60,
                 from ./include/linux/irq.h:14,
                 from drivers/irqchip/irq-bcm6345-ext.c:10:
drivers/irqchip/irq-bcm6345-ext.c: In function 'bcm6345_ext_intc_of_init':
./arch/mips/include/asm/mach-bcm63xx/ioremap.h:48:9: warning: 'base' may be used uninitialized in this function [-Wmaybe-uninitialized]
  return is_bcm63xx_internal_registers((unsigned long)addr);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/irqchip/irq-bcm6345-ext.c:255:16: note: 'base' was declared here
  void __iomem *base;
                ^~~~
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
		
	
			
		
			
				
	
	
		
			29 lines
		
	
	
		
			601 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			601 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
| --- 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++)
 |