====== Burning iPXE into Broadcom BCM57xx-based network adapters ====== The Broadcom Diagnostic Utility set allows you to update the expansion ROM images in Broadcom BCM57xx gigabit network cards (and rebranded Broadcom cards such as the HP NC7771). ===== Preparing the tools ===== {{ :clipart:cdrom.jpeg?200x200|A CD-ROM}} Copy the iPXE ROM image that you have [[:howto:romburning|built]] to a FAT-formatted USB key. Download the [[http://www.broadcom.com/support/license.php?file=570x/B57udiag-15.6.1.iso|Broadcom Diagnostic Utility .iso image]]. Burn this image to a blank CD-ROM (or DVD-ROM). ===== Burning the iPXE ROM ===== Boot from the CD (with the USB key already plugged in) and select the following sequence of options: * "Continue to boot FreeDOS from CD-ROM" * "Install to harddisk using FreeDOS setup" (which won't actually install anything to your hard disk) * The language of your choice * "Run FreeDOS from CD-ROM (return to command prompt)" You should now see a DOS ''X:\>'' prompt. Type: cd \b57udiag b57udiag -ver You should see a list of all Broadcom network adapters in your system, such as: X:\>cd \b57udiag X:\B57UDIAG>b57udiag -ver **************************************************** Copyright(c) 2000-2007 Broadcom Corporation Broadcom NetXtreme User Diagnostics 10.53 (07/27/07) **************************************************** C Brd:Rv Bus PCI Spd Base Irq EEP MAC Fmw Configuration - ------- ------- --- --- ---- -- ---- ------------ ---------- ------------- 0 5703:B0 05:04:0 32 33 FC50 11 128k 00110AE99C0B 5703-v.235 WMp,auto 1 AC1K:B5 05:00:0 32 33 FF7F 9 4k 00095B1C29D9 2.5 auto Identify the network adapter that you want to update, and note its card number (from the left-hand "C" column in the listing). For this example, we shall update adapter number 0 (which has MAC address 00110AE99C0B). Update the ROM on your selected network adapter: b57diag -c 0 -pxe c:\14e41647.rom where **-c 0** specifies your chosen network adapter, and **c:\14e41647.rom** is the path to the iPXE ROM image on your FAT-formatted USB drive. You should see something like: X:\B57UDIAG>b57udiag -c 0 -pxe c:\14e41647.rom **************************************************** Copyright(c) 2000-2007 Broadcom Corporation Broadcom NetXtreme User Diagnostics 10.53 (07/27/07) **************************************************** C Brd:Rv Bus PCI Spd Base Irq EEP MAC Fmw Configuration - ------- ------- --- --- ---- -- ---- ------------ ---------- ------------- 0 5703:B0 05:04:0 32 33 FC50 11 128k 00110AE99C0B 5703-v.235 WMp,auto 0 5703:B0 05:04:0 32 33 FC50 11 128k 00110AE99C0B 5703-v.235 WMp,auto Updating PXE-UNDI16 code (length = 59908 bytes ) ... Programing 59908 bytes to NVRAM offset 00001A60 Updating Directory... code len = 0000ea04 sram_start_address = 00010000 code_start_address = 00001a60 Reading current NVRAM ... OK Programing : 512 Totally 1 card(s) has been programmed. Reboot the machine and enter the BIOS setup. You should see iPXE show up as an option in your BIOS's boot selection menu. Congratulations on successfully burning iPXE into your network card! {{ :clipart:bootrom.jpeg?120x96 |A boot ROM}}