Commit 72ece3b8 authored by Stephen Rothwell's avatar Stephen Rothwell Committed by Paul Mackerras

[POWERPC] iSeries: Remove pci_dn dependency from iSeries_Device_Information

Signed-off-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent 34489388
...@@ -218,7 +218,8 @@ void __init iSeries_pci_final_fixup(void) ...@@ -218,7 +218,8 @@ void __init iSeries_pci_final_fixup(void)
pdev->sysdata = node; pdev->sysdata = node;
PCI_DN(node)->pcidev = pdev; PCI_DN(node)->pcidev = pdev;
allocate_device_bars(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); iommu_devnode_init_iSeries(pdev, node);
} }
iSeries_activate_IRQs(); iSeries_activate_IRQs();
......
...@@ -58,7 +58,8 @@ static inline u64 iseries_ds_addr(struct device_node *node) ...@@ -58,7 +58,8 @@ static inline u64 iseries_ds_addr(struct device_node *node)
+ ((u64)0x10 << 32); + ((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 #ifdef CONFIG_PCI
extern void iSeries_pci_final_fixup(void); extern void iSeries_pci_final_fixup(void);
#else #else
......
...@@ -31,7 +31,6 @@ ...@@ -31,7 +31,6 @@
#include <asm/types.h> #include <asm/types.h>
#include <asm/resource.h> #include <asm/resource.h>
#include <asm/abs_addr.h> #include <asm/abs_addr.h>
#include <asm/pci-bridge.h>
#include <asm/iseries/hv_types.h> #include <asm/iseries/hv_types.h>
#include "pci.h" #include "pci.h"
...@@ -244,25 +243,13 @@ static int __init iSeries_Get_Location_Code(u16 bus, HvAgentId agent, ...@@ -244,25 +243,13 @@ static int __init iSeries_Get_Location_Code(u16 bus, HvAgentId agent,
* PCI: Bus 0, Device 26, Vendor 0x12AE Frame 1, Card C10 Ethernet * PCI: Bus 0, Device 26, Vendor 0x12AE Frame 1, Card C10 Ethernet
* controller * 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; u8 frame = 0;
char card[4]; char card[4];
HvSubBusNumber subbus;
HvAgentId agent; 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), agent = ISERIES_PCI_AGENTID(ISERIES_GET_DEVICE_FROM_SUBBUS(subbus),
ISERIES_GET_FUNCTION_FROM_SUBBUS(subbus)); ISERIES_GET_FUNCTION_FROM_SUBBUS(subbus));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment