Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3b32c162bb2be2075508cdc2260e6a6853335581
Commit:     3b32c162bb2be2075508cdc2260e6a6853335581
Parent:     2cd1008cf56371404055fbc7d59f6da060af16fa
Author:     Stephen Rothwell <[EMAIL PROTECTED]>
AuthorDate: Fri Dec 7 01:56:55 2007 +1100
Committer:  Paul Mackerras <[EMAIL PROTECTED]>
CommitDate: Tue Dec 11 13:42:28 2007 +1100

    [POWERPC] iSeries: Reduce dependence on pci_dn bussubno
    
    Signed-off-by: Stephen Rothwell <[EMAIL PROTECTED]>
    Signed-off-by: Paul Mackerras <[EMAIL PROTECTED]>
---
 arch/powerpc/platforms/iseries/pci.c |   18 +++++++++---------
 1 files changed, 9 insertions(+), 9 deletions(-)

diff --git a/arch/powerpc/platforms/iseries/pci.c 
b/arch/powerpc/platforms/iseries/pci.c
index b46d8c5..7e00e35 100644
--- a/arch/powerpc/platforms/iseries/pci.c
+++ b/arch/powerpc/platforms/iseries/pci.c
@@ -190,6 +190,7 @@ void __init iSeries_pci_final_fixup(void)
        for_each_pci_dev(pdev) {
                struct pci_dn *pdn;
                const u32 *agent;
+               const u32 *sub_bus;
 
                node = find_device_node(pdev->bus->number, pdev->devfn);
                printk("pci dev %p (%x.%x), node %p\n", pdev,
@@ -202,23 +203,23 @@ void __init iSeries_pci_final_fixup(void)
 
                pdn = PCI_DN(node);
                agent = of_get_property(node, "linux,agent-id", NULL);
-               if (pdn && agent) {
-                       u8 irq = iSeries_allocate_IRQ(pdn->busno, 0,
-                                       pdn->bussubno);
+               sub_bus = of_get_property(node, "linux,subbus", NULL);
+               if (pdn && agent && sub_bus) {
+                       u8 irq = iSeries_allocate_IRQ(pdn->busno, 0, *sub_bus);
                        int err;
 
-                       err = HvCallXm_connectBusUnit(pdn->busno, pdn->bussubno,
+                       err = HvCallXm_connectBusUnit(pdn->busno, *sub_bus,
                                        *agent, irq);
                        if (err)
                                pci_log_error("Connect Bus Unit",
-                                       pdn->busno, pdn->bussubno, *agent, err);
+                                       pdn->busno, *sub_bus, *agent, err);
                        else {
                                err = HvCallPci_configStore8(pdn->busno,
-                                       pdn->bussubno, *agent,
+                                       *sub_bus, *agent,
                                        PCI_INTERRUPT_LINE, irq);
                                if (err)
                                        pci_log_error("PciCfgStore Irq Failed!",
-                                               pdn->busno, pdn->bussubno,
+                                               pdn->busno, *sub_bus,
                                                *agent, err);
                                else
                                        pdev->irq = irq;
@@ -229,8 +230,7 @@ void __init iSeries_pci_final_fixup(void)
                pdev->sysdata = node;
                PCI_DN(node)->pcidev = pdev;
                allocate_device_bars(pdev);
-               iSeries_Device_Information(pdev, num_dev, pdn->busno,
-                               pdn->bussubno);
+               iSeries_Device_Information(pdev, num_dev, pdn->busno, *sub_bus);
                iommu_devnode_init_iSeries(pdev, node);
        }
        iSeries_activate_IRQs();
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to