Commit ca519274 authored by Stephen Hemminger's avatar Stephen Hemminger Committed by David S. Miller

sky2: Make sure both ports initialize correctly

Sorry Mike, I sent you off the wrong way. The following is simpler and the
second port is diffrent enough in setup (because of NAPI), that the
following is simpler.
Signed-off-by: default avatarStephen Hemminger <shemminger@vyatta.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 07e31637
...@@ -4550,16 +4550,18 @@ static int __devinit sky2_probe(struct pci_dev *pdev, ...@@ -4550,16 +4550,18 @@ static int __devinit sky2_probe(struct pci_dev *pdev,
if (hw->ports > 1) { if (hw->ports > 1) {
struct net_device *dev1; struct net_device *dev1;
err = -ENOMEM;
dev1 = sky2_init_netdev(hw, 1, using_dac, wol_default); dev1 = sky2_init_netdev(hw, 1, using_dac, wol_default);
if (!dev1) if (dev1 && (err = register_netdev(dev1)) == 0)
dev_warn(&pdev->dev, "allocation for second device failed\n"); sky2_show_addr(dev1);
else if ((err = register_netdev(dev1))) { else {
dev_warn(&pdev->dev, dev_warn(&pdev->dev,
"register of second port failed (%d)\n", err); "register of second port failed (%d)\n", err);
hw->dev[1] = NULL; hw->dev[1] = NULL;
free_netdev(dev1); hw->ports = 1;
} else if (dev1)
sky2_show_addr(dev1); free_netdev(dev1);
}
} }
setup_timer(&hw->watchdog_timer, sky2_watchdog, (unsigned long) hw); setup_timer(&hw->watchdog_timer, sky2_watchdog, (unsigned long) hw);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment