powerpc: remove ISERIES_[SUB]BUS macros
authorStephen Rothwell <sfr@canb.auug.org.au>
Fri, 14 Oct 2005 05:06:10 +0000 (15:06 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Fri, 14 Oct 2005 05:06:10 +0000 (15:06 +1000)
This allows us to simplify a couple of things.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
arch/powerpc/platforms/iseries/iommu.c
arch/powerpc/platforms/iseries/pci.h
arch/powerpc/platforms/iseries/vpdinfo.c

index e6f4a4ab57b842a9ba89675a13d1fd96d7688f7c..533d9b4674028d034727cd59da78b67046fc937f 100644 (file)
 #include <asm/tce.h>
 #include <asm/machdep.h>
 #include <asm/abs_addr.h>
+#include <asm/pci-bridge.h>
 #include <asm/iSeries/HvCallXm.h>
 
-#include "pci.h"
-
 extern struct list_head iSeries_Global_Device_List;
 
 
@@ -114,7 +113,7 @@ static struct iommu_table *iommu_table_find(struct iommu_table * tbl)
  * 2. TCE table per Bus.
  * 3. TCE Table per IOA.
  */
-static void iommu_table_getparms(struct device_node *dn,
+static void iommu_table_getparms(struct pci_dn *pdn,
                                 struct iommu_table* tbl)
 {
        struct iommu_table_cb *parms;
@@ -125,8 +124,8 @@ static void iommu_table_getparms(struct device_node *dn,
 
        memset(parms, 0, sizeof(*parms));
 
-       parms->itc_busno = ISERIES_BUS(dn);
-       parms->itc_slotno = PCI_DN(dn)->LogicalSlot;
+       parms->itc_busno = pdn->DsaAddr.Dsa.busNumber;
+       parms->itc_slotno = pdn->LogicalSlot;
        parms->itc_virtbus = 0;
 
        HvCallXm_getTceTableParms(iseries_hv_addr(parms));
@@ -153,7 +152,7 @@ void iommu_devnode_init_iSeries(struct device_node *dn)
 
        tbl = kmalloc(sizeof(struct iommu_table), GFP_KERNEL);
 
-       iommu_table_getparms(dn, tbl);
+       iommu_table_getparms(pdn, tbl);
 
        /* Look for existing tce table */
        pdn->iommu_table = iommu_table_find(tbl);
index e7d92504cb05ba28a265c22342c72eeb7c95ae6d..94b4bfdceadf5d54d727df5a2ae0a757b5f47849 100644 (file)
  * End Change Activity
  */
 
-#include <asm/pci-bridge.h>
-
 struct pci_dev;                                /* For Forward Reference */
 
-/*
- * Gets iSeries Bus, SubBus, DevFn using device_node structure
- */
-
-#define ISERIES_BUS(DevPtr)    PCI_DN(DevPtr)->DsaAddr.Dsa.busNumber
-#define ISERIES_SUBBUS(DevPtr) PCI_DN(DevPtr)->DsaAddr.Dsa.subBusNumber
-
 /*
  * Decodes Linux DevFn to iSeries DevFn, bridge device, or function.
  * For Linux, see PCI_SLOT and PCI_FUNC in include/linux/pci.h
index 6bd8da4f17fe2608059794da8e8616aecbedcfb5..dcdac995565c5a90fab1024433a7beab554e34c4 100644 (file)
@@ -31,6 +31,7 @@
 #include <asm/types.h>
 #include <asm/resource.h>
 #include <asm/abs_addr.h>
+#include <asm/pci-bridge.h>
 #include <asm/iSeries/HvCallPci.h>
 #include <asm/iSeries/HvTypes.h>
 
@@ -243,6 +244,7 @@ out_free:
 void __init iSeries_Device_Information(struct pci_dev *PciDev, int count)
 {
        struct device_node *DevNode = PciDev->sysdata;
+       struct pci_dn *pdn;
        u16 bus;
        u8 frame;
        char card[4];
@@ -255,8 +257,9 @@ void __init iSeries_Device_Information(struct pci_dev *PciDev, int count)
                return;
        }
 
-       bus = ISERIES_BUS(DevNode);
-       subbus = ISERIES_SUBBUS(DevNode);
+       pdn = PCI_DN(DevNode);
+       bus = pdn->DsaAddr.Dsa.busNumber;
+       subbus = pdn->DsaAddr.Dsa.subBusNumber;
        agent = ISERIES_PCI_AGENTID(ISERIES_GET_DEVICE_FROM_SUBBUS(subbus),
                        ISERIES_GET_FUNCTION_FROM_SUBBUS(subbus));
        iSeries_Get_Location_Code(bus, agent, &frame, card);