of/irq: Refactor interrupt-map parsing
[linux-2.6-block.git] / arch / powerpc / platforms / fsl_uli1575.c
index 8904046556ad544cc24dc827ae65fdbe391602c7..b97f6f3d3c5b33f9bbcb0e83ba2f25f1be10cefd 100644 (file)
@@ -322,7 +322,6 @@ static void hpcd_final_uli5288(struct pci_dev *dev)
        struct pci_controller *hose = pci_bus_to_host(dev->bus);
        struct device_node *hosenode = hose ? hose->dn : NULL;
        struct of_phandle_args oirq;
-       int pin = 2;
        u32 laddr[3];
 
        if (!machine_is(mpc86xx_hpcd))
@@ -331,9 +330,12 @@ static void hpcd_final_uli5288(struct pci_dev *dev)
        if (!hosenode)
                return;
 
+       oirq.np = hosenode;
+       oirq.args[0] = 2;
+       oirq.args_count = 1;
        laddr[0] = (hose->first_busno << 16) | (PCI_DEVFN(31, 0) << 8);
        laddr[1] = laddr[2] = 0;
-       of_irq_parse_raw(hosenode, &pin, 1, laddr, &oirq);
+       of_irq_parse_raw(laddr, &oirq);
        dev->irq = irq_create_of_mapping(&oirq);
 }