Build system: x86_64 Build-tested: generic, smp Run-tested: generic/AR-5387un, smp/VR-3032u 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++)
 |