Date: Thu, 15 Mar 2001 11:03:43 -0600 From: Jonathan Lemon <jlemon@flugsvamp.com> To: Peter Wemm <peter@netplex.com.au>, Ollivier Robert <roberto@eurocontrol.fr> Cc: Jonathan Lemon <jlemon@flugsvamp.com>, cnielsen@pobox.com, net@FreeBSD.ORG Subject: Re: Intel PRO/100+ PCI problem Message-ID: <20010315110343.B82645@prism.flugsvamp.com> In-Reply-To: <200103151320.f2FDKwh83702@mobile.wemm.org> References: <200103151147.f2FBlZh83021@mobile.wemm.org> <200103151320.f2FDKwh83702@mobile.wemm.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Mar 15, 2001 at 05:20:58AM -0800, Peter Wemm wrote: > > fxp0: <Intel Pro 10/100B/100+ Ethernet> port 0xff20-0xff3f mem 0xff800000-0xf > f8fffff,0xffbde000-0xffbdefff irq 2 at device 6.0 on pci0 > > fxp0: using memory space register mapping > > fxp0: Ethernet address 00:a0:c9:49:aa:d3 > > fxp0: PCI IDs: 8086 1229 0000 0000 > > nsphy0: <DP83840 10/100 media interface> on miibus0 > > nsphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto > > bpf: fxp0 attached > > > > This actually does have the NatSemi phy on it and it is correctly detected. > > Unfortunately, I just locked that machine up with SMPng. oops. I can't > > verify that it works just yet.. We have another old machine with a NS > > phy on it (pII based instead of PPro based) and are working on it now. > > It appears that the nsphy version is unable to actually transmit packets. > It is recieving OK, just not sending. (or, the other machines are unable > to see it, maybe the switch is dropping the packets as "damaged" or > something?) Try this following patch to mii/nsphy.c. It appears that we need to toggle some undocumented bits in order to get this PHY to work with the fxp driver. -- Jonathan Index: nsphy.c =================================================================== RCS file: /ncvs/src/sys/dev/mii/nsphy.c,v retrieving revision 1.7 diff -u -r1.7 nsphy.c --- nsphy.c 2001/02/07 19:57:16 1.7 +++ nsphy.c 2001/03/15 17:14:51 @@ -264,17 +264,20 @@ */ reg |= PCR_FLINK100; -#if 0 /* * Mystery bits which are supposedly `reserved', * but we seem to need to set them when the PHY - * is connected to some interfaces! + * is connected to some interfaces: + * + * 0x0400 is needed for fxp + * (Intel EtherExpress Pro 10+/100B, 82557 chip) + * (nsphy with a DP83840 chip) + * 0x0100 may be needed for some other card */ reg |= 0x0100 | 0x0400; -#endif -/* + PHY_WRITE(sc, MII_NSPHY_PCR, reg); -*/ + switch (IFM_SUBTYPE(ife->ifm_media)) { case IFM_AUTO: /* To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010315110343.B82645>