Skip to content

Commit

Permalink
powerpc/mpc85xx: Update interrupt handling for IFC controller
Browse files Browse the repository at this point in the history
IFC may have one or two interrupts.  If two interrupt specifiers are
present, the first is the "common" interrupt (CM_EVTER_STAT), and the
second is the NAND interrupt (NAND_EVTER_STAT).  If there is only one, that
interrupt reports both types of event.

Signed-off-by: Prabhakar Kushwaha <prabhakar@freescale.com>
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
  • Loading branch information
Prabhakar Kushwaha authored and Kumar Gala committed Sep 19, 2012
1 parent 1919aac commit 721c070
Showing 1 changed file with 8 additions and 12 deletions.
20 changes: 8 additions & 12 deletions arch/powerpc/sysdev/fsl_ifc.c
Original file line number Diff line number Diff line change
Expand Up @@ -244,12 +244,6 @@ static int __devinit fsl_ifc_ctrl_probe(struct platform_device *dev)
/* get the nand machine irq */
fsl_ifc_ctrl_dev->nand_irq =
irq_of_parse_and_map(dev->dev.of_node, 1);
if (fsl_ifc_ctrl_dev->nand_irq == NO_IRQ) {
dev_err(&dev->dev, "failed to get irq resource "
"for NAND Machine\n");
ret = -ENODEV;
goto err;
}

fsl_ifc_ctrl_dev->dev = &dev->dev;

Expand All @@ -267,12 +261,14 @@ static int __devinit fsl_ifc_ctrl_probe(struct platform_device *dev)
goto err_irq;
}

ret = request_irq(fsl_ifc_ctrl_dev->nand_irq, fsl_ifc_nand_irq, 0,
"fsl-ifc-nand", fsl_ifc_ctrl_dev);
if (ret != 0) {
dev_err(&dev->dev, "failed to install irq (%d)\n",
fsl_ifc_ctrl_dev->nand_irq);
goto err_nandirq;
if (fsl_ifc_ctrl_dev->nand_irq) {
ret = request_irq(fsl_ifc_ctrl_dev->nand_irq, fsl_ifc_nand_irq,
0, "fsl-ifc-nand", fsl_ifc_ctrl_dev);
if (ret != 0) {
dev_err(&dev->dev, "failed to install irq (%d)\n",
fsl_ifc_ctrl_dev->nand_irq);
goto err_nandirq;
}
}

return 0;
Expand Down

0 comments on commit 721c070

Please sign in to comment.