diff options
| -rw-r--r-- | target/linux/mpc85xx/patches/120-mpc8548_cds_i8259_noirq_init.patch | 23 | ||||
| -rw-r--r-- | target/linux/mpc85xx/patches/130-mpc8548_cds_disable_i8259_irq.patch | 13 | 
2 files changed, 36 insertions, 0 deletions
| diff --git a/target/linux/mpc85xx/patches/120-mpc8548_cds_i8259_noirq_init.patch b/target/linux/mpc85xx/patches/120-mpc8548_cds_i8259_noirq_init.patch new file mode 100644 index 000000000..4d585100e --- /dev/null +++ b/target/linux/mpc85xx/patches/120-mpc8548_cds_i8259_noirq_init.patch @@ -0,0 +1,23 @@ +--- a/arch/powerpc/platforms/85xx/mpc85xx_cds.c ++++ b/arch/powerpc/platforms/85xx/mpc85xx_cds.c +@@ -234,15 +234,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 diff --git a/target/linux/mpc85xx/patches/130-mpc8548_cds_disable_i8259_irq.patch b/target/linux/mpc85xx/patches/130-mpc8548_cds_disable_i8259_irq.patch new file mode 100644 index 000000000..54a27858f --- /dev/null +++ b/target/linux/mpc85xx/patches/130-mpc8548_cds_disable_i8259_irq.patch @@ -0,0 +1,13 @@ +--- a/arch/powerpc/boot/dts/mpc8548cds.dts ++++ b/arch/powerpc/boot/dts/mpc8548cds.dts +@@ -492,8 +492,10 @@ + 					#address-cells = <0>; + 					#interrupt-cells = <2>; + 					compatible = "chrp,iic"; ++/* + 					interrupts = <0 1>; + 					interrupt-parent = <&mpic>; ++*/ + 				}; +  + 				rtc@70 { | 
