Hi,<br><br>I am attempting to add support to gpxe the Broadcom BCM5755M (14e4:1673)<br>ethernet adapter.<br>I have confirmed that the adapter works under linux with kernel 2.6.32.<br>Here is some of my attempts:<br><br>I first identified the pci vendor and device id via linux's "lspci -n"<br>
command which gave me 14e4:1673<br>I then added it to tg3.c file:<br>-------------------------<br>@@ -3400,6 +3402,7 @@<br> PCI_ROM(0x14e4, 0x165e, "tg3-5705M_2",    "Broadcom Tigon 3 5705M_2", 0),<br>
 PCI_ROM(0x14e4, 0x1677, "tg3-5751",       "Broadcom Tigon 3 5751", 0),<br> PCI_ROM(0x14e4, 0x167a, "tg3-5754",       "Broadcom Tigon 3 5754", 0),<br>+PCI_ROM(0x14e4, 0x1673, "tg3-5755",       "Broadcom Tigon 3 5755", 0),<br>
 PCI_ROM(0x14e4, 0x1693, "tg3-5787",      "Broadcom Tigon 3 5787", 0),<br> PCI_ROM(0x14e4, 0x1696, "tg3-5782",       "Broadcom Tigon 3 5782", 0),<br> PCI_ROM(0x14e4, 0x169a, "tg3-5786",       "Broadcom Tigon 3 5786", 0),<br>
--------------------<br><br>This enabled gpxe to attempt to initialize the adapter instead of ignoring<br>it. But it gives this error so far:<br><br>-----------------<br>phy probe failed, err -741097531<br>Problem fetching invariants of chip, aborting.<br>
-----------------<br><br>Ok, then I though, the phy id must not match, so what about forcing it? I<br>added the following to tg3.c to identify the phy id:<br><br>------------------------<br>@@ -2543,6 +2543,8 @@<br><br>    hw_phy_id_masked = hw_phy_id & PHY_ID_MASK;<br>
<br>+Â Â printf("phy id: %X\n", hw_phy_id);<br>+<br>Â Â Â Â if (!err && KNOWN_PHY_ID(hw_phy_id_masked)) {<br>Â Â Â Â Â Â Â Â tp->phy_id = hw_phy_id;<br>Â Â Â Â } else {<br>--------------------------<br><br>This gave me 0xbc050cc0, so I added it to tg3.h:<br>
<br>--------------------------<br>@@ -2038,6 +2038,7 @@<br>Â #define PHY_ID_BCM5704Â Â Â Â Â Â Â Â Â Â Â 0x60008190<br>Â #define PHY_ID_BCM5705Â Â Â Â Â Â Â Â Â Â Â 0x600081a0<br>Â #define PHY_ID_BCM5750Â Â Â Â Â Â Â Â Â Â Â 0x60008180<br>+#define PHY_ID_BCM5755Â Â Â Â Â Â Â Â Â Â Â 0xbc050cc0<br>
 #define PHY_ID_BCM5787           0xbc050ce0<br> #define PHY_ID_BCM8002           0x60010140<br> #define PHY_ID_BCM5751           0x00206180<br>--------------------------<br><br>Unfortunately, this is as far as a i got. The error messages is still the<br>
same. I haven't been able to figure out what to do next. I have tried to<br>enable debugging by "make DEBUG=tg3" and also enabling the serial console in<br><br>console.h but the I just get a bunch of "?" instead of proper strings on the<br>
serial port and I did configure my terminal emulator to 9600n81. Any clues<br>there? The terminal works fine with picocom under linux with the same<br>serial settings.<br><br>I feel I am so close in getting this card to work because the tg3 code is<br>
there but it just needs to identify and use the hardware. Just so you know<br>I have also downloaded the latest git release, but unfortunately, there is<br>no support for BCM5755M yet.<br>I found this page<br><a href="http://www.broadcom.com/support/ethernet_nic/determine_driver.php">http://www.broadcom.com/support/ethernet_nic/determine_driver.php</a> which<br>
helped me identify the adapter as a model type NetXtreme Desktop/Mobile<br>adapter. There is already support in gpxe for that type adapter such as the<br>BCM5751M.<br><br>Any suggestions?<br><br>Quinn<br><br clear="all">
<br>