[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>
This commit is contained in:
Родитель
3448938846
Коммит
72ece3b827
|
@ -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)
|
||||||
+ ((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 @@
|
||||||
#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 @@ out_free:
|
||||||
* 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));
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче