====== Differences ====== This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
romburning:tg3 [2008/03/05 05:29] welby created |
romburning:tg3 [2008/03/06 07:28] (current) mcb30 |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Burning gPXE into Broadcom BCM57xx based cards cards ====== | + | ====== Burning gPXE into Broadcom BCM57xx-based cards ====== |
<referback>This page is part of the [[:romburning|ROM-burning]] tutorial.</referback> | <referback>This page is part of the [[:romburning|ROM-burning]] tutorial.</referback> | ||
- | Various manufacturers supply their own flash utilites, unfortuantly these do not appear to work correctly with etherboot, and due to this, we require the Broadcom "diagnostic" utility set. | + | 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). |
- | ===== Obtaining the ROM image ===== | + | ===== Preparing the ROM image ===== |
- | In order to build the rom for my HP card the PCI id had to be added to src/drivers/net/tg3.c | + | Copy the gPXE ROM image (e.g. //bin/0e1100ca.rom//) to a FAT-formatted floppy disk or USB drive. |
- | PCI_ROM(0x0e11, 0x00ca, "tg3-hp", "tg3 HP"), | + | ===== Preparing the tools ===== |
- | The above was added to tg3.c and the rom made with the following command | + | Download the Broadcom Diagnostics Utility from [[http://www.broadcom.com/docs/driver_download/570x/B57udiag-10.53.iso]]. Burn this image to CD using your favourite CD burning method. |
- | make bin/tg3-hp.rom | + | ===== Burning the gPXE ROM ===== |
- | ===== Preparing the tools ===== | + | Boot from the CD and select the following sequence of options: |
- | Now that we have the image, I would suggest copying this to media that will be accessable from FreeDOS (such as a FAT formated USB Drive) | + | * "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)" | ||
- | Once we have the rom saved else where we need to obtain the Broadcom Diagnostic utility | + | You should now see an //X:\>// prompt. Type: |
- | * FreeDOS with BRCM570x diagnostitcs utility, [[http://www.broadcom.com/support/ethernet_nic/driver-sla.php?driver=570x-diag]] | + | |
- | Burn this image to CD using your favourite CD burning method | + | cd \b57udiag |
+ | b57udiag -ver | ||
- | ===== Burning the gPXE ROM ===== | + | You should see something like: |
- | Boot from the CD selecting option 1. | + | 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 | ||
- | At the next prompt choose the "Install to HD using FD setup" option, please note this won't actually install to your HDD without more confirmation | + | This shows the list of Broadcom cards in the machine. Select the card that you wish to burn gPXE into, and identify its card number (from the left-hand "C" column in the listing). |
- | At the next screen, choose your language, and then select "Run FreeDOS from CD ROM (return to command prompt)" | + | To burn gPXE into the card, type: |
- | You should now have an X:\ prompt | + | b57diag -c 0 -pxe c:\0e1100ca.rom |
- | From here change your current working directory to X:\B57UDIAG\ | + | where //-c 0// specifies the card number of the card that you wish to burn gPXE into, and //c:\0e1100ca.rom// is the path to the gPXE ROM image on your FAT-formatted floppy disk or USB drive. You should see something like: |
- | From here you will want to execute the following command | + | X:\B57UDIAG>b57udiag -c 0 -pxe c:\0e1100ca.rom |
- | B67UDIAG.exe -ver | + | **************************************************** |
- | + | Copyright(c) 2000-2007 Broadcom Corporation | |
- | You should see something like | + | Broadcom NetXtreme User Diagnostics 10.53 (07/27/07) |
- | + | **************************************************** | |
- | X:\B57UDIAG\>b57diag.exe -ver | + | C Brd:Rv Bus PCI Spd Base Irq EEP MAC Fmw Configuration |
- | **************** | + | - ------- ------- --- --- ---- -- ---- ------------ ---------- ------------- |
- | Copyright notice | + | 0 5703:B0 05:04:0 32 33 FC50 11 128k 00110AE99C0B 5703-v.235 WMp,auto |
- | *************** | + | |
- | C Brd:Rv Bus PCI Spd Base Irq EEP MAC Fmw Configuration | + | |
- | ---------------------------------------------------------------------------------------------- | + | |
- | 0 5703:B0 05:04:0 32 33 FC50 11 128K 012345567810 5703-v.235 WMp,auto | + | |
| | ||
- | This shows the list of broadcom cards in the machine. We in this case have only the one card. | + | 0 5703:B0 05:04:0 32 33 FC50 11 128k 00110AE99C0B 5703-v.235 WMp,auto |
- | We want to check the current payload in the card, so we need to run the following | + | 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 gPXE show up as an option in your BIOS's boot selection menu. | ||
- | X:\B57UDIAG\>b57diag.exe -c 0 -dir | + | Congratulations on successfully burning gPXE into your network card! |
- | **************** | + | |
- | Copyright notice | + | |
- | *************** | + | |
- | C Brd:Rv Bus PCI Spd Base Irq EEP MAC Fmw Configuration | + | |
- | ---------------------------------------------------------------------------------------------- | + | |
- | 0 5703:B0 05:04:0 32 33 FC50 11 128K 012345567810 5703-v.235 WMp,auto | + | |
- | + | ||
- | 0 5703:B0 05:04:0 32 33 FC50 11 128K 012345567810 5703-v.235 WMp,auto | + | |
- | Entry Type SRAM Addr EEP Offset Length Execute Version | + | |
- | Bootcode 08003000 00000200 00001860 CPUE(2) 5703-v2.35 | + | |
- | 0 PXE 00010000 00001A60 0000EA04 no v73.67.80 | + | |
- | + | ||
- | This lists the current NRAM filesystem on the card. Please note the PXE rom on this card is already a gPXE rom, however the same process holds true for replacing the rom | + | |