From owner-freebsd-current Tue Mar 26 7: 6:19 2002 Delivered-To: freebsd-current@freebsd.org Received: from mongrel.pacific.net.au (mongrel.pacific.net.au [61.8.0.107]) by hub.freebsd.org (Postfix) with ESMTP id AD96637B417; Tue, 26 Mar 2002 07:06:11 -0800 (PST) Received: from dungeon.home (ppp84.dyn248.pacific.net.au [203.143.248.84]) by mongrel.pacific.net.au (8.9.3/8.9.3/Debian 8.9.3-21) with ESMTP id CAA28079; Wed, 27 Mar 2002 02:04:09 +1100 X-Authentication-Warning: mongrel.pacific.net.au: Host ppp84.dyn248.pacific.net.au [203.143.248.84] claimed to be dungeon.home Received: from dungeon.home (localhost [127.0.0.1]) by dungeon.home (8.11.6/8.11.1) with ESMTP id g2QF5vH15251; Wed, 27 Mar 2002 01:05:57 +1000 (EST) (envelope-from mckay) Message-Id: <200203261505.g2QF5vH15251@dungeon.home> To: Robert Watson Cc: freebsd-current@freebsd.org, mckay@thehub.com.au Subject: Re: if_dc broken in -current References: In-Reply-To: from Robert Watson at "Mon, 25 Mar 2002 12:30:11 -0500" Date: Wed, 27 Mar 2002 01:05:57 +1000 From: Stephen McKay Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG On Monday, 25th March 2002, Robert Watson wrote: >I think I have an identical problem involving a Linksys ethernet card >using if_dc. I have to force it to negotiate 10mbps, since it fails to >negotiate anything higher with my 10/100 switch. No idea why at all. > >dc0: port 0xe800-0xe8ff mem >0xfebfff00-0xfebfffff irq 10 at device 19.0 on pci0 >dc0: Ethernet address: 00:a0:cc:35:3e:56 >miibus0: on dc0 >dcphy0: on miibus0 >dcphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > >dc0: flags=8843 mtu 1500 > inet6 fe80::2a0:ccff:fe35:3e56%dc0 prefixlen 64 scopeid 0x1 > inet 192.168.11.150 netmask 0xffffff00 broadcast 192.168.11.255 > ether 00:a0:cc:35:3e:56 > media: Ethernet 10baseT/UTP > status: active > >If I set it to auto-negotiate or hard-set to 100mbps, no packets go back >or forth. I've had this problem for at least a year, if not longer. I >have the same problem with 4.4-STABLE using an identical card on different >hardware: if it tries to negotiate 100mbps, then it simply doesn't work. >If I force it to 10, it's fine. After careful consideration, I think this has to be a different problem. My problem is that auto-negotiation doesn't start at boot (when an address is assigned to dc0). If I explicitly set a speed, that speed works. Most bizarrely, if I misspell the media option, that causes a successful autonegotation! I mean, I type "ifconfig dc0 media 10baset" immediately after boot, and autonegotiation takes over. (If I spell it "10baset/utp" it goes into 10Mbit half-duplex mode, like you expect.) So it's just a hair's breadth away from working properly, and reverting rev 1.56 is enough for full operation to be restored. Since you explicitly set 100Mbit half-duplex and it doesn't work, then that must be something else. We could have a go at finding that bug too, but it will be harder, since I don't have a PNIC II here. I do have some info on the Macronix 98715A, which Bill Paul says is almost the same. Maybe we can get lucky. Stephen. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message