On Tuesday 20 March 2007 03:28 pm, John Polstra wrote: > Jung-uk Kim wrote: > > jkim 2007-03-19 23:17:39 UTC > > > > FreeBSD src repository > > > > Modified files: > > sys/dev/mii brgphy.c > > Log: > > Revert couple of changes from 1.51 and 1.52. Reading link > > status with BMSR is okay for most of the chipsets but BCM5701 PHY > > does not seem to like it. > > I'm not sure what you mean by "does not seem to like it", but did > you try reading the BMSR twice? The link status bit is a latching > bit. If you read the register once and it shows no link status, > that only means that at some point since you previously read the > register, link was lost. It says nothing about the current status > of link. The only way to find out the current status of link is to > read the register twice. The first read clears the latch, and the > second read reports the current status. This is not specific to > the Broadcom chips. It is standard across all PHYs.
Believe me, I know that. ;-) I was experimenting on brgphy.c some time ago and discovered all of my Broadcom PHYs are not 'standard' PHYs (in your definition), i.e., BMSR's link status bit is not latching. That is why I just used BMSR instead of aux status register to reduce register access. This commit actually reverts them to the old (but safer) behavior because BCM5701 PHY 'seems' to be more standard. Unfortunately we don't have any documents to verify anything ATM. We are flying blind. :-( Jung-uk Kim _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "[EMAIL PROTECTED]"