3c59x promiscuous mode still broken (fix attached)

Ian Goldberg (iang@cs.berkeley.edu)
Tue, 2 Apr 1996 11:08:42 -0800 (PST)


The 3c59x driver refuses to put the card into promiscuous mode when asked.
Here's a simple patch (it's against 1.3.69, but it should still work...):

--- 3c59x.orig.c Fri Feb 23 18:13:38 1996
+++ 3c59x.c Fri Feb 23 18:14:24 1996
@@ -1027,7 +1027,8 @@
short ioaddr = dev->base_addr;

if ((dev->mc_list) || (dev->flags & IFF_ALLMULTI)) {
- outw(SetRxFilter|RxStation|RxMulticast|RxBroadcast, ioaddr + EL3_CMD);
+ outw(SetRxFilter|RxStation|RxMulticast|RxBroadcast
+ | ((dev->flags & IFF_PROMISC) ? RxProm : 0) , ioaddr + EL3_CMD);
if (vortex_debug > 3) {
printk("%s: Setting Rx multicast mode, %d addresses.\n",
dev->name, dev->mc_count);

- Ian