HP Broadcom-Based Network adapters firmware 7.8.21 fix – c04258318

“HP has released a very serious customer advisory saying that some Broadcom Nics which are used in G2-G6 servers and blades could be killed by a firmware update component in their HP Service Pack for Proliant 2014.02.

Using HPSUM, HP SPP or Smart Components for VMware to update the “Comprehensive Configuration Management” (CCM) firmware version to 7.8.21 can kill the nics which would require a hardware swap out to fix!”

You can find advisory here:
HP Broadcom-Based Network Adapters – Updating Comprehensive Configuration Management Firmware Version 7.8.21 on Certain HP Broadcom-Based Network Adapters May Result in the Network Adapter becoming Nonfunctional

If your server is out of warranty or you just don’t want to wait for hardware swap please read below. You need access to the server via remote management such as KVM or iLO. Of course, if you’re lucky you can perform this operation locally. In this post I will demonstrate how to recover BL460c G1 blade with bricked HP NC373i Multifunction Gigabit Server Adapter.

I will be recovering NIC remotely using iLO.

Here’s what we are going to need:
– Bootable DOS iso: I prefer Freedos (please see below for download link)
– xdiag utility from Broadcom
– NIC firmware, which you can extract from HP’s update package. Firmware file will have .bin extension, which you will find after extracting HP’s package.
– iso editing software. I chose Ultraiso (please see below for download link)

1. Download firmware upgrade package for NC373i and extract it. In our case file is cp021548.exe and firmware is located here: NIC_FW\bootcode\bc08s196.bin
2. Download xdiag utility and Freedos iso
3. Open Freedos iso and inject xdiag and firmware file. I put them in BIN folder.
4. Boot from our updated image via iLO and select Use Freedos in Live environment from the menu:
5. When freedos is loaded you will se command prompt. Go to root directory cd ... Next change to folder with our utility and firmware. In our case it’s cd bin.
6. Run xdiag in engineering mode xdiag -b06eng
7. type device 1
6. nvm fill 0 0x600 0
7. nvm upgrade -bc bc08c740.bin
8. nvm cfg and typed “default” then typed 16=10 wich sets the BAR size to 32 for this NIC. At this point our NIC is functioning and it’s set with default Broadcom settings. If you save at this poing NIC will be detected as Broadcom instead of HP branded one. It will not allow you to be teamed. You have an option to type SAVE or set all HP options. Please see attached file nc373i_nvm.txt for HP’s options. You can enter them by typing settingnumber=value. After making changes don’t forget to type SAVE.
9. device 2 and repeat steps 6-8 and don’t forget to change MAC address. Here’s the formula used by HP for MAC address assignment:
-> NIC1 MAC=00:1e:0b:xx:e8:52
-> NIC1 iSCSI MAC=00:1e:0b:xx:e8:53 (+1)
-> NIC2 MAC=00:1e:0b:xx:e8:50 (-2 of NIC1)
-> NIC2 iSCSI MAC=00:1e:0b:xx:e8:51 (+1 of NIC2)
10. SAVE
11. EXIT
12. At this point you should see DOS prompt. Perform coldboot by issuing the following command fdapm coldboot

That’s it. After reboot you should have NICs in working condition.

Here’s the list of NICs and their firmwares. I’ve included them in attached iso.
HP NC373T PCIe Multifunction Gig Server Adapter – bc08c196.bin
HP NC373F PCIe Multifunction Gig Server Adapter – bc08s196.bin
HP NC373i Multifunction Gigabit Server Adapter – bc08c196.bin
HP NC374m PCIe Multifunction Adapter – bc08c196.bin
HP NC373m Multifunction Gigabit Server Adapter – ???
HP NC324i PCIe Dual Port Gigabit Server Adapter – NC324I_v3.25.bin
HP NC326i PCIe Dual Port Gigabit Server Adapter – NC326I_v3.28S.bin or NC326I_v3.29C.bin
HP NC326m PCI Express Dual Port Gigabit Server Adapter – NC326I_v3.28S.bin or NC326I_v3.29C.bin
HP NC325m PCIe Quad Port Gigabit Server Adapter NC325M_v3.28S.bin
HP NC320i PCIe Gigabit Server Adapter – NC320M_v3.58.bin
HP NC320m PCI Express Gigabit Server Adapter – NC320M_v3.58.bin
HP NC382i DP Multifunction Gigabit Server Adapter – bc09x523.bin
HP NC382T PCIe DP Multifunction Gigabit Server Adapter – bc09x523.bin
HP NC382m DP 1GbE Multifunction BL-c Adapter – bc09x523.bin
HP NC105i PCIe Gigabit Server Adapter – NC105I_v3.09.bin

Download ISO here

P.S If nic is working on another server you can create a NVRAM-dump:
1. xdiag –b06eng
2. Select working device with device x (nr. of device)
3. device 1
4. nvm dump filename.nvr
5. exit

Restoe a dump, e.g. on NIC2 of the same server:
1. xdiag –b06eng
2. Select reanimated device with device x (nr. of device)
3. nvm prg 0 filename.nvr
4. nvm cfg (check if all MAC-Addressen fit)
5. Press [ANYKEY] to check all parameters
6. enter save [ENTER]
7. exit
8. reboot server


This entry was posted in Random stuff and tagged , , , , , , . Bookmark the permalink.

5 Responses to HP Broadcom-Based Network adapters firmware 7.8.21 fix – c04258318

  1. Sachin says:

    Thank you!

  2. Pingback: Fixing Corrupt Post HP-Update NICs on a Proliant DL380 G5 | Mr Thwibbles Blog of Wonder and Amazement

  3. Leighton says:

    Hi there,
    Thank you for this post. I’m now back up and running!

  4. I see you don’t monetize your blog, don’t waste your traffic, you
    can earn extra cash every month because you’ve got hi quality
    content. If you want to know how to make extra $$$, search for: Boorfe’s tips best
    adsense alternative

  5. Johan says:

    coldboot is not enough !!! DISCONNECT POWER CORDS from server!

    HP Proliant Dl360 G7, “Broadcom BCM5709C NetXtreme II” aka “HP NC382i DP Multifunction Gigabit Server Adapter” ran SPP 2014.02 .. it knocked 2 of the 4 internal nics “out of config” ( well actually there was only something identyfying as Firmware 123.46.50 on the 2 faulty cards, unfortunately the datacenter is way off REMOTE, took me a while sorting things out… even realising what just happened

    I actually had to disconnect the power cords from the server ( well i had to get support staff doing the adidas work for me ) so that it did a proper cold boot

    other then that SUPER INFO ON THIS PAGE

    thank you

Leave a Reply

Your email address will not be published. Required fields are marked *