提交 12a37687 编写于 作者: J Jiri Slaby 提交者: John W. Linville

[PATCH] pci: bcm43xx avoid pci_find_device

bcm43xx avoid pci_find_device

Change pci_find_device to safer pci_get_device with support for more
devices.
Signed-off-by: NJiri Slaby <jirislaby@gmail.com>
Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
上级 91769e7d
......@@ -2146,6 +2146,13 @@ static int bcm43xx_upload_initvals(struct bcm43xx_private *bcm)
return err;
}
#ifdef CONFIG_BCM947XX
static struct pci_device_id bcm43xx_47xx_ids[] = {
{ PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, 0x4324) },
{ 0 }
};
#endif
static int bcm43xx_initialize_irq(struct bcm43xx_private *bcm)
{
int res;
......@@ -2155,11 +2162,15 @@ static int bcm43xx_initialize_irq(struct bcm43xx_private *bcm)
bcm->irq = bcm->pci_dev->irq;
#ifdef CONFIG_BCM947XX
if (bcm->pci_dev->bus->number == 0) {
struct pci_dev *d = NULL;
/* FIXME: we will probably need more device IDs here... */
d = pci_find_device(PCI_VENDOR_ID_BROADCOM, 0x4324, NULL);
if (d != NULL) {
bcm->irq = d->irq;
struct pci_dev *d;
struct pci_device_id *id;
for (id = bcm43xx_47xx_ids; id->vendor; id++) {
d = pci_get_device(id->vendor, id->device, NULL);
if (d != NULL) {
bcm->irq = d->irq;
pci_dev_put(d);
break;
}
}
}
#endif
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册