patch-2.4.0-prerelease linux/drivers/net/lance.c
Next file: linux/drivers/net/mac89x0.c
Previous file: linux/drivers/net/irda/smc-ircc.c
Back to the patch index
Back to the overall index
- Lines: 71
- Date:
Sat Dec 30 11:23:14 2000
- Orig file:
v2.4.0-test12/linux/drivers/net/lance.c
- Orig date:
Mon Dec 11 17:59:44 2000
diff -u --recursive --new-file v2.4.0-test12/linux/drivers/net/lance.c linux/drivers/net/lance.c
@@ -58,7 +58,7 @@
static unsigned int lance_portlist[] __initdata = { 0x300, 0x320, 0x340, 0x360, 0};
int lance_probe(struct net_device *dev);
-int lance_probe1(struct net_device *dev, int ioaddr, int irq, int options);
+static int lance_probe1(struct net_device *dev, int ioaddr, int irq, int options);
#ifdef LANCE_DEBUG
int lance_debug = LANCE_DEBUG;
@@ -287,21 +287,15 @@
#ifdef MODULE
#define MAX_CARDS 8 /* Max number of interfaces (cards) per module */
-static int io[MAX_CARDS] = { 0, };
-static int dma[MAX_CARDS] = { 0, };
-static int irq[MAX_CARDS] = { 0, };
+static struct net_device dev_lance[MAX_CARDS];
+static int io[MAX_CARDS];
+static int dma[MAX_CARDS];
+static int irq[MAX_CARDS];
MODULE_PARM(io, "1-" __MODULE_STRING(MAX_CARDS) "i");
MODULE_PARM(dma, "1-" __MODULE_STRING(MAX_CARDS) "i");
MODULE_PARM(irq, "1-" __MODULE_STRING(MAX_CARDS) "i");
-static struct net_device dev_lance[MAX_CARDS] =
-{{
- "", /* device name is inserted by linux/drivers/net/net_init.c */
- 0, 0, 0, 0,
- 0, 0,
- 0, 0, 0, NULL, NULL}};
-
int init_module(void)
{
int this_dev, found = 0;
@@ -374,7 +368,7 @@
return -ENODEV;
}
-int __init lance_probe1(struct net_device *dev, int ioaddr, int irq, int options)
+static int __init lance_probe1(struct net_device *dev, int ioaddr, int irq, int options)
{
struct lance_private *lp;
short dma_channels; /* Mark spuriously-busy DMA channels */
@@ -437,6 +431,9 @@
/* We can't use init_etherdev() to allocate dev->priv because it must
a ISA DMA-able region. */
dev = init_etherdev(dev, 0);
+ if (!dev)
+ return -ENOMEM;
+ SET_MODULE_OWNER(dev);
dev->open = lance_open_fail;
chipname = chip_table[lance_version].name;
printk("%s: %s at %#3x,", dev->name, chipname, ioaddr);
@@ -653,8 +650,6 @@
return -EAGAIN;
}
- MOD_INC_USE_COUNT;
-
/* We used to allocate DMA here, but that was silly.
DMA lines can't be shared! We now permanently allocate them. */
@@ -1143,7 +1138,6 @@
lance_purge_ring(dev);
- MOD_DEC_USE_COUNT;
return 0;
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)