diff options
author | Stephen Rothwell <sfr@canb.auug.org.au> | 2007-12-07 01:54:57 +1100 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2007-12-11 13:42:25 +1100 |
commit | 72ece3b8271bb59b25e42e3f0a1d6a3dbc69e369 (patch) | |
tree | 8c2765a01286888cf3c3e363bdd3f4faa0848b31 /arch/powerpc | |
parent | 344893884685c1c4ec38d7c1e6f719c0030f7f9c (diff) |
[POWERPC] iSeries: Remove pci_dn dependency from iSeries_Device_Information
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/platforms/iseries/pci.c | 3 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/pci.h | 3 | ||||
-rw-r--r-- | arch/powerpc/platforms/iseries/vpdinfo.c | 17 |
3 files changed, 6 insertions, 17 deletions
diff --git a/arch/powerpc/platforms/iseries/pci.c b/arch/powerpc/platforms/iseries/pci.c index 8844d3e488df..3cf51c6df686 100644 --- a/arch/powerpc/platforms/iseries/pci.c +++ b/arch/powerpc/platforms/iseries/pci.c @@ -218,7 +218,8 @@ 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); + iSeries_Device_Information(pdev, num_dev, pdn->busno, + pdn->bussubno); iommu_devnode_init_iSeries(pdev, node); } iSeries_activate_IRQs(); diff --git a/arch/powerpc/platforms/iseries/pci.h b/arch/powerpc/platforms/iseries/pci.h index 730986bc917a..3cb18fa07b63 100644 --- a/arch/powerpc/platforms/iseries/pci.h +++ b/arch/powerpc/platforms/iseries/pci.h @@ -58,7 +58,8 @@ static inline u64 iseries_ds_addr(struct device_node *node) + ((u64)0x10 << 32); } -extern void iSeries_Device_Information(struct pci_dev*, int); +extern void iSeries_Device_Information(struct pci_dev *PciDev, int count, + u16 bus, HvSubBusNumber subbus); #ifdef CONFIG_PCI extern void iSeries_pci_final_fixup(void); #else diff --git a/arch/powerpc/platforms/iseries/vpdinfo.c b/arch/powerpc/platforms/iseries/vpdinfo.c index 9f83878a0c2e..25dc0bb6185b 100644 --- a/arch/powerpc/platforms/iseries/vpdinfo.c +++ b/arch/powerpc/platforms/iseries/vpdinfo.c @@ -31,7 +31,6 @@ #include <asm/types.h> #include <asm/resource.h> #include <asm/abs_addr.h> -#include <asm/pci-bridge.h> #include <asm/iseries/hv_types.h> #include "pci.h" @@ -244,25 +243,13 @@ out_free: * PCI: Bus 0, Device 26, Vendor 0x12AE Frame 1, Card C10 Ethernet * controller */ -void __init iSeries_Device_Information(struct pci_dev *PciDev, int count) +void __init iSeries_Device_Information(struct pci_dev *PciDev, int count, + u16 bus, HvSubBusNumber subbus) { - struct device_node *DevNode = PciDev->sysdata; - struct pci_dn *pdn; - u16 bus; u8 frame = 0; char card[4]; - HvSubBusNumber subbus; HvAgentId agent; - if (DevNode == NULL) { - printk("%d. PCI: iSeries_Device_Information DevNode is NULL\n", - count); - return; - } - - pdn = PCI_DN(DevNode); - bus = pdn->busno; - subbus = pdn->bussubno; agent = ISERIES_PCI_AGENTID(ISERIES_GET_DEVICE_FROM_SUBBUS(subbus), ISERIES_GET_FUNCTION_FROM_SUBBUS(subbus)); |