patch-1.3.44 linux/drivers/net/de620.c
Next file: linux/drivers/net/depca.c
Previous file: linux/drivers/net/de4x5.c
Back to the patch index
Back to the overall index
- Lines: 38
- Date:
Fri Nov 24 16:39:53 1995
- Orig file:
v1.3.43/linux/drivers/net/de620.c
- Orig date:
Thu Nov 9 11:23:49 1995
diff -u --recursive --new-file v1.3.43/linux/drivers/net/de620.c linux/drivers/net/de620.c
@@ -206,7 +206,7 @@
static int de620_open(struct device *);
static int de620_close(struct device *);
static struct netstats *get_stats(struct device *);
-static void de620_set_multicast_list(struct device *, int, void *);
+static void de620_set_multicast_list(struct device *);
static int de620_start_xmit(struct sk_buff *, struct device *);
/* Dispatch from interrupts. */
@@ -481,15 +481,11 @@
* Set or clear the multicast filter for this adaptor.
* (no real multicast implemented for the DE-620, but she can be promiscuous...)
*
- * num_addrs == -1 Promiscuous mode, receive all packets
- * num_addrs == 0 Normal mode, clear multicast list
- * num_addrs > 0 Multicast mode, receive normal and MC packets, and do
- * best-effort filtering.
*/
-static void
-de620_set_multicast_list(struct device *dev, int num_addrs, void *addrs)
+
+static void de620_set_multicast_list(struct device *dev)
{
- if (num_addrs)
+ if (dev->mc_count || dev->flags&(IFF_ALLMULTI|IFF_PROMISC))
{ /* Enable promiscuous mode */
/*
* We must make the kernel realise we had to move
@@ -500,7 +496,8 @@
de620_set_register(dev, W_TCR, (TCR_DEF & ~RXPBM) | RXALL);
}
- else { /* Disable promiscuous mode, use normal mode */
+ else
+ { /* Disable promiscuous mode, use normal mode */
de620_set_register(dev, W_TCR, TCR_DEF);
}
}
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov
with Sam's (original) version of this