|
@@ -741,8 +741,7 @@ static void rtl8139_chip_reset (void __iomem *ioaddr)
|
|
|
}
|
|
|
|
|
|
|
|
|
-static int __devinit rtl8139_init_board (struct pci_dev *pdev,
|
|
|
- struct net_device **dev_out)
|
|
|
+static __devinit struct net_device * rtl8139_init_board (struct pci_dev *pdev)
|
|
|
{
|
|
|
void __iomem *ioaddr;
|
|
|
struct net_device *dev;
|
|
@@ -756,13 +755,11 @@ static int __devinit rtl8139_init_board (struct pci_dev *pdev,
|
|
|
|
|
|
assert (pdev != NULL);
|
|
|
|
|
|
- *dev_out = NULL;
|
|
|
-
|
|
|
/* dev and priv zeroed in alloc_etherdev */
|
|
|
dev = alloc_etherdev (sizeof (*tp));
|
|
|
if (dev == NULL) {
|
|
|
dev_err(&pdev->dev, "Unable to alloc new net device\n");
|
|
|
- return -ENOMEM;
|
|
|
+ return ERR_PTR(-ENOMEM);
|
|
|
}
|
|
|
SET_NETDEV_DEV(dev, &pdev->dev);
|
|
|
|
|
@@ -906,14 +903,13 @@ match:
|
|
|
|
|
|
rtl8139_chip_reset (ioaddr);
|
|
|
|
|
|
- *dev_out = dev;
|
|
|
- return 0;
|
|
|
+ return dev;
|
|
|
|
|
|
err_out:
|
|
|
__rtl8139_cleanup_dev (dev);
|
|
|
if (disable_dev_on_err)
|
|
|
pci_disable_device (pdev);
|
|
|
- return rc;
|
|
|
+ return ERR_PTR(rc);
|
|
|
}
|
|
|
|
|
|
static const struct net_device_ops rtl8139_netdev_ops = {
|
|
@@ -972,9 +968,9 @@ static int __devinit rtl8139_init_one (struct pci_dev *pdev,
|
|
|
use_io = 1;
|
|
|
}
|
|
|
|
|
|
- i = rtl8139_init_board (pdev, &dev);
|
|
|
- if (i < 0)
|
|
|
- return i;
|
|
|
+ dev = rtl8139_init_board (pdev);
|
|
|
+ if (IS_ERR(dev))
|
|
|
+ return PTR_ERR(dev);
|
|
|
|
|
|
assert (dev != NULL);
|
|
|
tp = netdev_priv(dev);
|