Call for testers, if_bge patch for BCM570x users

Jeremy Chadwick freebsd at
Wed Sep 15 17:50:28 PDT 2004


A couple questions:

1.  Could the issue at hand also cause watchdog timeout messages?  I have
seen such messages on one of my home FreeBSD systems "occasionally",
almost always during boot-up.  Sadly I don't have examples to provide
(the last time it happened was 2-3 weeks ago).  Also, the system in
question uses 100mbit over CAT5 copper, not gige.

2.  "Should" your patch work against the BCM5788 chip?  If so, I'll be
happy to test in a couple of hours (once I get finished with dinner :)):

Hardware in question:

bge0: <Broadcom BCM5788 Gigabit Ethernet, ASIC rev. 0x3003> mem
0xf7000000-0xf700ffff irq 19 at device 7.0 on pci2
miibus0: <MII bus> on bge0
brgphy0: <BCM5705 10/100/1000baseTX PHY> on miibus0
brgphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseTX,
1000baseTX-FDX, auto
bge0: Ethernet address: 00:30:1b:b2:ec:21


| Jeremy Chadwick                                 jdc at |
| Parodius Networking               |
| UNIX Systems Administrator                   Mountain View, CA, USA |
| Making life hard for others since 1977.                             |

On Wed, Sep 15, 2004 at 09:57:05PM +0000, Bill Paul wrote:
> Ok, I have a patch that needs testing which addresses a particular problem
> with the bge(4) driver. If you have a BCM5701 or newer copper NIC and are
> running -current or 5.3-BETA, you may have noticed that doing a simple
> "ifconfig bge0" causes the driver to emit a "bge0: gigabit link up"
> message on the console. In fact, anything that invokes the SIOCGIFMEDIA
> ioctl in the driver will do it, including dhcp and possibly even the
> PPPOE daemon.
> The bge driver programs the chip to autopoll the MII to check for link
> changes. But when calling bge_miibus_readreg() or bge_miibus_writereg()
> to access the PHY registers, you have to turn autopolling off (failing
> to do so apparently triggers PCI bus errors on some hardware). It turns
> out that toggling autopoll off and back on again causes the chip to
> generate a spurious link change event. This makes the driver think that
> the link has dropped and come back up, which is why it spits out the
> "bge0: gigabit link up" message.
> I have a small patch to filter these bogus events out. It is available at:
> It works for my sample BCM5701 card, however I want to be sure it
> works for the BCM5702, 5703, 5704 or 5705 chips before I check it in.
> (Murphy's Law dictates that Broadcom somehow made the other chips
> different enough that this trick won't work for them.) Unfortunately,
> I don't have anything newer than the 5701 handy at the moment. So,
> if you have a system with a bge(4) device with a BCM5702/3/4/5 chip
> with a gigabit over twisted pair interface (*NOT* fiber optic!) and
> are experiencing problems with spurious link up messages, please try
> this patch. This applies to both x86 and amd64 systems.
> NOTE: don't bother writing me to tell me that you will be able to
> test the patch sometime in the near/far/whatever future. I don't need
> to know that. Just go ahead and try it, then show me the results. 
> -Bill
> --
> =============================================================================
> -Bill Paul            (510) 749-2329 | Senior Engineer, Master of Unix-Fu
>                  wpaul at | Wind River Systems
> =============================================================================
>               <adamw> you're just BEGGING to face the moose
> =============================================================================
> _______________________________________________
> freebsd-current at mailing list
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at"

More information about the freebsd-current mailing list