kern/94424: [bge] BGE5721 or BGE5750?
Internet Partners, Inc. Tech Support
support at ipinc.net
Wed May 3 22:30:23 UTC 2006
The following reply was made to PR kern/94424; it has been noted by GNATS.
From: "Internet Partners, Inc. Tech Support" <support at ipinc.net>
To: "Vivek Khera" <vivek at khera.org>
Cc: <bug-followup at FreeBSD.org>
Subject: RE: kern/94424: [bge] BGE5721 or BGE5750?
Date: Wed, 3 May 2006 15:27:59 -0700
Actually, they are the same bug just different manifestations
of it. If you check PR kern/94863 you will see that BCM5714
which is used in the IBM is listed in the current BGE driver
as having ASIC rev 0x05 which is not consistent with what the
Broadcom Linux driver says it's supposed to be. Broadcom says
BCM5714 has ASIC rev 0x09. There are also other differences in
the list of FreeBSD bge driver chip IDs from what Broadcom has
listed in the Linux driver.
The BCM6714 and BCM5780 require a number of exceptions in
the FreeBSD bge driver because they don't act exactly like the
other Broadcom chips. Those exceptions aren't currently present,
but even if they were, they wouldn't be activated because the chip
ID's and asci revs aren't correct in the FreeBSD driver.
Part of the fix for the IBM with it's BCM5714 chip is correction of
the chip and ASIC ID's, and that is the fix you need for the Dell PE800.
I've done part of that already and posted a patch to PR 94863 I need
to finish the rest of that and post the patch to the if_bge.c driver.
But, that is the easy part of the bge driver fix, since it just deals
with updating the detection logic in the driver. The other part of the
bge fix is figuring out where the BCM5714 needs to be excepted in the
The obvious way would be for the bge maintainer to look at the Linux
driver code, and see where they have excepted the BCM5714, then transfer the
exceptions into the FreeBSD driver. I've already posted the link to
where the Broadcom driver is. It shouldn't be more than a few hours
work for an experienced driver programmer, unfortunately I am not
one of those people. :-(
More information about the freebsd-bugs