summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/iseries/pci.c
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2005-10-10 22:52:26 +1000
committerPaul Mackerras <paulus@samba.org>2005-10-10 22:52:26 +1000
commit76f9f87fa51c9fb62c17986e2066ed467ac2da05 (patch)
tree7e9d351fe87d543b4054a2869718d4b6370b6a29 /arch/powerpc/platforms/iseries/pci.c
parent40ef8cbc6d360e564573eb19582249c35d8ba330 (diff)
powerpc: Get iseries to compile with ARCH=powerpc
This moves the Device_List member from struct device_node to struct pci_dn, which cleans up the device_node and makes the code a little simpler. Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/platforms/iseries/pci.c')
-rw-r--r--arch/powerpc/platforms/iseries/pci.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/arch/powerpc/platforms/iseries/pci.c b/arch/powerpc/platforms/iseries/pci.c
index 70185dec940..46879d7de92 100644
--- a/arch/powerpc/platforms/iseries/pci.c
+++ b/arch/powerpc/platforms/iseries/pci.c
@@ -220,7 +220,7 @@ static struct device_node *build_device_node(HvBusNumber Bus,
return NULL;
}
node->data = pdn;
- list_add_tail(&node->Device_List, &iSeries_Global_Device_List);
+ list_add_tail(&pdn->Device_List, &iSeries_Global_Device_List);
#if 0
pdn->DsaAddr = ((u64)Bus << 48) + ((u64)SubBus << 40) + ((u64)0x10 << 32);
#endif
@@ -549,15 +549,12 @@ EXPORT_SYMBOL(iSeries_memcpy_fromio);
*/
static struct device_node *find_Device_Node(int bus, int devfn)
{
- struct list_head *pos;
-
- list_for_each(pos, &iSeries_Global_Device_List) {
- struct device_node *node =
- list_entry(pos, struct device_node, Device_List);
+ struct pci_dn *pdn;
- if ((bus == ISERIES_BUS(node)) &&
- (devfn == PCI_DN(node)->devfn))
- return node;
+ list_for_each_entry(pdn, &iSeries_Global_Device_List, Device_List) {
+ if ((bus == pdn->DsaAddr.Dsa.busNumber) &&
+ (devfn == pdn->devfn))
+ return pdn->node;
}
return NULL;
}