The Hardware section used to generate hardware release notes starts: https://man.freebsd.org/cgi/man.cgi?query=bge > The bge driver provides support for various NICs > based on the Broadcom BCM570x family of Gigabit > Ethernet controller chips, including the following: > - 3Com 3c996-SX (1000baseSX) > - ... But bge(4) is no longer limited to BCM570x, and listed hardware mostly dates to when Hardware sections were added in 2004. Omissions have caused confusion in forums, with people incorrectly concluding more recent devices are unsupported. It also means hardware relnotes are outdated. Some commits widening support: (Dec 2, 2013, fixing bug 184304 re support for Broadcom NetXtreme BCM57786) > Add support for BCM57764, BCM57767, BCM57782, BCM57786 and BCM57787. https://github.com/freebsd/freebsd-src/commit/67129934a966f7b8a1689c1031927b7013f5ce7b (Jul 20, 2013) > Add support for upcoming BCM5725 (ASIC 5762) controller. This is a > new 1Gb server controller chip that will be going into production > soon. https://github.com/freebsd/freebsd-src/commit/2927f01f66d750292d7038eea843fbdb293d650b The history of bge.4 shows some man page additions since then (e.g. Apple Thunderbolt) but not reflecting the above changes: https://github.com/freebsd/freebsd-src/blob/main/share/man/man4/bge.4 The "based on the Broadcom BCM570x" in the Hardware section could be expanded to reflect wider support, like how the Description section states "based on the Broadcom BCM570x, 571x, 572x, 575x, 576x, 578x, 5776x and 5778x Gigabit Ethernet controller chips and the 590x and 5779x Fast Ethernet controller chips" - then all would appear on hardware relnotes, at least in abbreviated form. Alternatively, to avoid duplicating the Description, "based on the Broadcom BCM570x" could be removed from the Hardware section provided chips are named explicitly in the hardware support list, like how bce(4) is written. But it would not be feasible to make a list both unabbreviated and exhaustive. Either way, it would be nice to add some post-2004 hardware to the support list. Here's a list I found evidence of people successfully using with FreeBSD, confirmed from forum searches or probed as "working" on FreeBSD (or GhostBSD etc) at https://bsd-hardware.info/?view=search&name=BCM57 - Broadcom NetLink BCM57780 Gigabit Ethernet PCIe - Broadcom NetLink BCM57781 Gigabit Ethernet PCIe - Broadcom NetLink BCM57785 Gigabit Ethernet PCIe - Broadcom NetLink BCM57788 Gigabit Ethernet PCIe - Broadcom NetLink BCM5784M Gigabit Ethernet PCIe - Broadcom NetLink BCM5786 Gigabit Ethernet PCI Express - Broadcom NetLink BCM5787 Gigabit Ethernet PCI Express - Broadcom NetLink BCM5787M Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5701 Gigabit Ethernet - Broadcom NetXtreme BCM5715 Gigabit Ethernet - Broadcom NetXtreme BCM5717 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5718 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5719 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5720 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5721 Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5722 Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5723 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5751 Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5751M Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5752 Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5754 Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5755 Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5755M Gigabit Ethernet PCI Express - Broadcom NetXtreme BCM5761 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5761e Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5762 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM5764M Gigabit Ethernet PCIe - Broadcom NetXtreme BCM57760 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM57761 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM57762 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM57765 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM57766 Gigabit Ethernet PCIe - Broadcom NetXtreme BCM57786 Gigabit Ethernet PCIe (Acer) - Broadcom NetXtreme BCM5780 Gigabit Ethernet - Broadcom NetXtreme BCM5788 Gigabit Ethernet A few others probed as "detected" and likely work, but I couldn't find confirmation. Even more are theoretically supported but I found no evidence of being used in practice. Note "Broadcom NetXtreme BCM57786 Gigabit Ethernet PCIe" probed as failing on Apple MacBookPro10,1 and MacBookPro10,2 - I don't have hardware to verify but see https://bsd-hardware.info/?view=search&name=BCM57786 Bug 148037 (from 2010, before the 2013 widening of support) indicates a much longer hardware list can be undesirable. If preferred, maybe the list could be shortened to a variety of more widely used chips, without restricting to pre-2004 hardware. Indeed, much of the currently listed hardware (IBM x235 server, Dell PowerEdge 1750, etc) must be little used today, so would be candidates for pruning. Perhaps of interest to yongari@?
Thanks, > "Broadcom NetXtreme BCM57786 Gigabit Ethernet PCIe" probed as > failing on Apple MacBookPro10,1 and MacBookPro10,2 - I > don't have hardware to verify but see > <https://bsd-hardware.info/?view=search&name=BCM57786> PCI IDs for the above: 14e4:16a3:14e4:16b4 in MacBookPro10,1 14e4:16a3:14e4:16a3 in MacBookPro10,2 PCI ID 14e4:16b3:1025:0775 works with two non-Apple vendors: <https://bsd-hardware.info/?id=pci:14e4-16b3-1025-0775#status> ed crowe, do you still have a MacBookPro10,1?
(In reply to Graham Perrin from comment #1) Thanks for extracting the details. I know it really belongs in a separate PR, I hoped to find someone with appropriate hardware who might submit one! Hopefully a quick fix, but it did make me wonder how/if BCM57786 should be listed (e.g. just list it as supported but mention the MacBookPro10 issue in the "Bugs" section?), and more widely how different vendors affect things. My limited understanding is that the chip generally matters more than the vendor, but the driver code sometimes needs to account for differences between vendors. Compare the more recent bxe(4), which just lists chips: https://man.freebsd.org/cgi/man.cgi?query=bxe > - QLogic NetXtreme II BCM57710 10Gb > - QLogic NetXtreme II BCM57711 10Gb > - QLogic NetXtreme II BCM57711E 10Gb > - ... Whereas bge(4) has a vendor-specific list with integrated chips for old Dell PowerEdge, IBM x235 server, etc. If it's preferred to be vendor-agnostic, it might make sense to remove most of bge(4)'s current list (but not e.g. the Apple Thunderbolt entries) and replace by a list of chips like above.
(In reply to B.S. from comment #2) > it might make sense to remove most of bge(4)'s current list (but not e.g. the Apple Thunderbolt entries) and replace by a list of chips like above. This is usually what I do.
Hi, Yes, I do. Currently has linux on it. What are you looking for? I can install FreeBSD on it if you need to test/verify something.