From 3b25215c1e7ec81babe04ab02948532904344f10 Mon Sep 17 00:00:00 2001 From: wpaul Date: Sat, 29 Oct 2005 03:01:16 +0000 Subject: Remove call to txp_set_filter() from txp_attach(). txp_set_filter() needs the ifp, so you can't call it before doing if_alloc(). Also, there's really no need to call it here anyway: the code I originally ported from OpenBSD incorrectly set the station address only once at device attach time, instead of setting in txp_init(). This meant you couldn't change the address with ifconfig txp0 ether xx:xx:xx:xx:xx:xx. I added the call to txp_set_filter() in txp_init() to correct this, but forgot to remove the call from txp_attach(). Until now, it never mattered. With this fix, the txp driver tests good: txp0: <3Com 3cR990-TX-97 Etherlink with 3XP Processor> port 0xb800-0xb87f mem 0xe6800000-0xe683ffff irq 12 at device 10.0 on pci0 txp0: Ethernet address: 00:01:03:d4:91:4f --- sys/dev/txp/if_txp.c | 2 -- 1 file changed, 2 deletions(-) (limited to 'sys/dev/txp') diff --git a/sys/dev/txp/if_txp.c b/sys/dev/txp/if_txp.c index c92b300..4ddaa06 100644 --- a/sys/dev/txp/if_txp.c +++ b/sys/dev/txp/if_txp.c @@ -293,8 +293,6 @@ txp_attach(dev) goto fail; } - txp_set_filter(sc); - eaddr[0] = ((u_int8_t *)&p1)[1]; eaddr[1] = ((u_int8_t *)&p1)[0]; eaddr[2] = ((u_int8_t *)&p2)[3]; -- cgit v1.1