2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-17 01:34:00 +08:00

Broadcom 4400 resume small fix

Some issues in b44_resume().

- Return value of pci_enable_device() was ignored.

- If request_irq() has failed we have to just disable device and exit.

Signed-off-by: Dmitriy Monakhov <dmonakhov@openvz.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
This commit is contained in:
Dmitriy Monakhov 2007-01-27 00:00:03 -08:00 committed by Jeff Garzik
parent 00576e9380
commit 90afd0e574

View File

@ -2320,16 +2320,27 @@ static int b44_resume(struct pci_dev *pdev)
{ {
struct net_device *dev = pci_get_drvdata(pdev); struct net_device *dev = pci_get_drvdata(pdev);
struct b44 *bp = netdev_priv(dev); struct b44 *bp = netdev_priv(dev);
int rc = 0;
pci_restore_state(pdev); pci_restore_state(pdev);
pci_enable_device(pdev); rc = pci_enable_device(pdev);
if (rc) {
printk(KERN_ERR PFX "%s: pci_enable_device failed\n",
dev->name);
return rc;
}
pci_set_master(pdev); pci_set_master(pdev);
if (!netif_running(dev)) if (!netif_running(dev))
return 0; return 0;
if (request_irq(dev->irq, b44_interrupt, IRQF_SHARED, dev->name, dev)) rc = request_irq(dev->irq, b44_interrupt, IRQF_SHARED, dev->name, dev);
if (rc) {
printk(KERN_ERR PFX "%s: request_irq failed\n", dev->name); printk(KERN_ERR PFX "%s: request_irq failed\n", dev->name);
pci_disable_device(pdev);
return rc;
}
spin_lock_irq(&bp->lock); spin_lock_irq(&bp->lock);