aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/mpc85xx/patches-3.3/120-mpc8548_cds_i8259_noirq_init.patch
blob: 79c0e18fe6dd35bfbfcf74d661a23d54e68ded6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
--- a/arch/powerpc/platforms/85xx/mpc85xx_cds.c
+++ b/arch/powerpc/platforms/85xx/mpc85xx_cds.c
@@ -215,15 +215,16 @@ static int mpc85xx_cds_8259_attach(void)
 		return -ENODEV;
 	}
 
+	i8259_init(cascade_node, 0);
+	of_node_put(cascade_node);
+
 	cascade_irq = irq_of_parse_and_map(cascade_node, 0);
 	if (cascade_irq == NO_IRQ) {
-		printk(KERN_ERR "Failed to map cascade interrupt\n");
+		of_node_put(cascade_node);
+		printk(KERN_DEBUG "No interrupt for i8259 PIC\n");
 		return -ENXIO;
 	}
 
-	i8259_init(cascade_node, 0);
-	of_node_put(cascade_node);
-
 	/*
 	 *  Hook the interrupt to make sure desc->action is never NULL.
 	 *  This is required to ensure that the interrupt does not get