Broadcom Corporation 16215 Alton Parkway, Irvine, CA 92619-7013 Broadcom BCM570x Mutiple Boot Agent (MBA) [ PXE,RPL,BOOTP, and iSCSI Boot ] 10/18/2005 ******************************** IMPORTANT NOTE ******************************* * * * 1. All of the released binary images (except b57base.bin) have standard ROM * * header which has embeded Vendor ID/Device ID. Some BIOS only load MBA image* * if Vendor ID/Device ID matches the Vendor ID/Device ID of the controller. * * The default Vendor ID/Device ID in the released images are for BCM5701 * * controller (0x14e4/0x1645). If this image is programmed to NIC without using* * Broadcom's flashing utilities such as b57util.exe or upgfrm command in * * b57diag.exe, then the provided romhdr.exe must be used to update ROM header * * with the Vendor ID/Device to match with intended controller. * * Similarily, in LOM application where MBA image is integrated to BIOS, it's * * mandatory to use romhdr.exe to update image's ROM header to match with * * intended target controller's Vendor ID/Device ID. * * * * 2. MBA v3.1.22 and newer requires b57diag v5.0.5 and newer for NIC upgrade. * * * * 3. UNDI driver is not fully supported in EFI IA-64 environment. It might * * not work correctly some platforms/environments. * * * * 4. The first bootstrap for BOOTP download has to be within the range of * * 640K - 32K - sizeof(UNDI)+sizeof(base code). This is normally about * * 520K. The first phase of BOOTP bootstrap can download the rest of * * image by interfacing with PXE API which is still in conventional * * memory. * * memory. * * * * Note: Base code image, b57base.bin, does not contain Vendor ID/Device ID * * information. Therefore the "romhdr.exe" utility does not apply to this * * type of image. * ******************************************************************************* Introduction ============ This file describes the Broadcom Multiple Agent for Broadcom's BCM570X 10/100/1000 Mbps Ethernet Network Interface Controller. Broadcom Multiple Boot Agent (MBA) supports PXE,RPL,BOOTP, and iSCSI. Multiple Agent driver is released in two set of binaries. One for PCI/PCI-X devices and one for PCI Express devices. The filename of PCI Express image is appended with an (e). Use PCI Express images for the following devices: BCM5751, BCM5721, BCM5751M, BCM5751F, BCM5789, BCM5753, BCM5753M, BCM5753F, BCM5781, BCM5752, BCM5752M, BCM5714, BCM5714S, BCM5715, BCM5715S, BCM5780, BCM5780S, BCM5754, BCM5754M,BCM5755, BCM5755M, BCM5787, BCM5787M. Use PCI/PCI-X images for the following devices: BCM5700, BCM5701, BCM5702, BCM5703, BCM5704, BCM5705, BCM5705M, BCM5705MFE, BCM5901, BCM5782, BCM5788, BCM5705F Descriptions of binary images are as follows: b57pxe.bin: This is a monolithic image that consists of both base-code (BC) and UNDI code. This image should be used on the NIC application. However, an adapter programmed with this image is still operational in the motherboard's BIOS with built-in BC; the BC on the adapter will be used. This image only supports PXE. b57undi.bin: This is an UNDI image that consists of UNDI code only (split implementation) which is intended for NIC application. b57base.bin: This is a BC image that consists of BC code only (split implementation) which is intended for LOM application. This module should be programmed on the motherboard's BIOS. b57undi.lom: This is an UNDI image that consists of UNDI code only (split implementation) which is intended for LOM application. This module should be programmed on on the motherboard's BIOS. b57pxe.lom : This is a monolithic image that consists of both base-code (BC) and UNDI code. This image is intended for LOM application. This image only supports PXE. b57umba.lom : This is an UNDI image that consists of UNDI code only (split implementation) which is intended for LOM application. This UNDI driver supports PXE and RPL. This module should be programmed on on the motherboard's BIOS. b57mmba.nic : This is a monolithic image that consists of both base-code (BC) and UNDI code. This image should be used on the NIC application. An adapter programmed with this image is still operational in the motherboard's BIOS with built-in BC; the BC on the adapter will be used. This image supports both PXE and RPL. b57mmba.lom : This is a monolithic image that consists of both base-code (BC) and UNDI code. This image should be used on the LOM application. This image supports both PXE and RPL. b57rpl.lom : This is an image with RPL support only. This image is intended for LOM application. b57rpl.nic : This is an image with RPL support only. This image is intended for NIC application. romhdr.exe : This tool can be used to customize PXE image for different ASIC-based LOM applications. It basically modifies the Vendor ID/Device ID in the ROM header of the image and then recalculates the checksum. For instance, use b57undi.lom for BCM5700-based LOM. romhdr -v 0x14e4 -d 0x1644 -i b57undi.lom The following images are no longer released for PXE v3.1.17 or newer: b57mba.lom: This is a BC image that consists of BC code only (split implementation) which is intended for LOM application. This module should be programmed on the motherboard's BIOS. This base-code supports PXE and RPL. b57mba.nic : This is a monolithic image that consists of both base-code (BC) and UNDI code. This image is intended for NIC application. This image only supports PXE and RPL. iSCSI support ============= Broadcom Multiple Boot Agent also supports iSCSI Boot. iSCSI Boot driver is released seperately and is not a part of Multiple Boot Agent. To add iSCSI Boot support, iSCSI Boot ROM has to be programmed on the device's NVRAM. For instance, User can update/program iSCSI Boot ROM in the b57diag engineering shell upgfrm -fa:\iscsi.rom -i Application =========== Some example applications are used to clarify the usage of these binary images. 1. BCM570X LOM with PXE and RPL support: b57base.bin and b57umba.lom should be integrated with system BIOS. 2. BCM570X LOM with PXE support ONLY: b57base.bin and b57undi.lom should be integrated with system BIOS. 3. BCM570X NIC with PXE and RPL support: b57mmba.nic should be programmed to NIC's NVRAM (serial EEPROM/FLASH). 4. BCM570X NIC with PXE ONLY support: b57pxe.bin should be programmed to NIC's NVRAM (serial EEPROM/FLASH).