Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 37936
b: refs/heads/master
c: 9fa1b1f
h: refs/heads/master
v: v3
  • Loading branch information
Stephen Hemminger authored and Jeff Garzik committed Sep 27, 2006
1 parent 605da16 commit 801b78f
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 22 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: c2716fb407ebaab7a09888cc8e4a2b9dfac20416
refs/heads/master: 9fa1b1f33c4cbbe0ba7c0c166d170faaa735e53d
37 changes: 16 additions & 21 deletions trunk/drivers/net/sky2.c
Original file line number Diff line number Diff line change
Expand Up @@ -3349,13 +3349,29 @@ static int __devinit sky2_probe(struct pci_dev *pdev,
if (!dev)
goto err_out_free_pci;

if (!disable_msi && pci_enable_msi(pdev) == 0) {
err = sky2_test_msi(hw);
if (err == -EOPNOTSUPP)
pci_disable_msi(pdev);
else if (err)
goto err_out_free_netdev;
}

err = register_netdev(dev);
if (err) {
printk(KERN_ERR PFX "%s: cannot register net device\n",
pci_name(pdev));
goto err_out_free_netdev;
}

err = request_irq(pdev->irq, sky2_intr, IRQF_SHARED, dev->name, hw);
if (err) {
printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
pci_name(pdev), pdev->irq);
goto err_out_unregister;
}
sky2_write32(hw, B0_IMSK, Y2_IS_BASE);

sky2_show_addr(dev);

if (hw->ports > 1 && (dev1 = sky2_init_netdev(hw, 1, using_dac))) {
Expand All @@ -3370,23 +3386,6 @@ static int __devinit sky2_probe(struct pci_dev *pdev,
}
}

if (!disable_msi && pci_enable_msi(pdev) == 0) {
err = sky2_test_msi(hw);
if (err == -EOPNOTSUPP)
pci_disable_msi(pdev);
else if (err)
goto err_out_unregister;
}

err = request_irq(pdev->irq, sky2_intr, IRQF_SHARED, DRV_NAME, hw);
if (err) {
printk(KERN_ERR PFX "%s: cannot assign irq %d\n",
pci_name(pdev), pdev->irq);
goto err_out_unregister;
}

sky2_write32(hw, B0_IMSK, Y2_IS_BASE);

setup_timer(&hw->idle_timer, sky2_idle, (unsigned long) hw);
sky2_idle_start(hw);

Expand All @@ -3396,10 +3395,6 @@ static int __devinit sky2_probe(struct pci_dev *pdev,

err_out_unregister:
pci_disable_msi(pdev);
if (dev1) {
unregister_netdev(dev1);
free_netdev(dev1);
}
unregister_netdev(dev);
err_out_free_netdev:
free_netdev(dev);
Expand Down

0 comments on commit 801b78f

Please sign in to comment.