Broadcom Corporation
16215 Alton Parkway,
Irvine, CA 92619-7013
Release Note
Broadcom BCM570x Mutiple Boot Agent (MBA)
[ PXE (Preboot Execution Environment) and RPL (Remote Program Load) ]
04/26/2002
******************************** IMPORTANT NOTE *******************************
* *
* All of the released binary images (except b57base.bin and b57mba.lom) have *
* standard ROM header which has embeded Vendor ID/Device ID. BIOS only loads *
* 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. *
* *
*******************************************************************************
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 and RPL. Multiple Agent driver is released
in the following binaries:
b57pxe.bin: This is a monolithic image that consists of both
base-code (BC) and UNDI code. This image should be used
on the adapter where motherboard doesn't have built-in BC.
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 not 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.
This base-code only supports PXE.
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.
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.
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.
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
Application
===========
Some example applications are used to clarify the usage of these
binary images.
1. BCM570X LOM with PXE and RPL support: b57mba.lom and b57undi.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: b57mba.nic should be programmed
to NIC's NVRAM (serial EEPROM/FLASH).
4. BCM570X NIC with PXE ONLY support: b57pxe.nic should be programmed
to NIC's NVRAM (serial EEPROM/FLASH).
Revision History
================
Version 2.2.8:
1. Enhanced so that it can run concurrently with ASF.
Version 2.2.7:
1. Fixed a problem where it fails to boot if on some PCI-X systems.
Version 2.2.6:
1. Fixed a problem where it fails to operate with a certain model
of Cisco switches. Whenever there is a link change, Cisco
switch doesn't forward packets after 5 to 10 seconds even spanning
tree protocol is disabled. It drops all packets during this
period of time. Base-code is changed to retry more times.
However, Cisco switch can be configure to work with previous
versions of PXE. The workaround is to configure Cisco port, where
PXE client is connected to, to portfast mode. For instance,
set spantree portfast 4/12 enable
2. Enhanced so that wait time for physical link stability is shortened.
Version 2.2.5:
1. Optimized phase2 loader and minimized serial EEPROM corruption
(This applies to NIC application ONLY).
Version 2.2.4:
1. Added support for different LED configurations.
Version 2.2.3:
1. Fixed a problem Dell PowerEdge7150 (Dual Processor IA-64) hangs up
during EFI initialization if PXE-enabled NIC is installed. This
problem is caused by a bug in EFI IA-64 core firmware where it
passes invalid PCI bus/device/function parameter to UNDI.
Workaround around is implemented by using initial parameter
passed during UNDI init. (CQ3534)
2. Fixed a problem where HPi2000 (IA-64 system) intermittently doesn't
boot if PXE-enabled NIC is installed.
Version 2.2.2:
1. Fixed a problem where AutoNeg of Fiber NIC might not work on a
certain systems. (CQ3462)
2. Rebooted system if RPL downloading fails. (CQ3606)
Version 2.2.1:
1. Added software workaround for high bit error rate with 5703S fiber.
Version 2.2.0:
1. Added Remote Program Load (RPL) support. Since it's implemented
based on IBM standard, it should interoperate with RPL service
running on popular O/S such as Windows NT and IBM OS/2. However,
It will not work with Novell Netware yet since bootstrap (downloaded
via RPL) requires ODI driver interface to download the rest of
image with Netware protocol (Netware Core Protocol - NCP).
This features should allow users to remote/boot/install DOS/Win95/
Win98/OS2.
2. Fixed PXE version banner. (CQ3435).
Version 2.1.8:
1. Added support for Ethernet WireSpeed feature for BCM5702/
BCM5703 NICs/LOMs.
2. Added support for NICs with device ID 0x16a6 and 0x16a7.
3. Fixed a problem where EFI UNDI core firmware detects
UNDI16 with zero MAC address (CQ3337).
Version 2.1.7:
1. Added support for BCM5702/BCM5703 (Rev. A0 silicon).
Version 2.1.6:
1. Changed so that PXE cannot be loaded if ASF is enabled.
2. Added scheme to prevent serial EEPROM corruption in BCM5702/BCM5703.
Version 2.1.5:
1. Fixed a problem where DOSUNDI hangs up with BCM5703 NICs (CQ3113)
2. Fixed a problem where PXE performance is slow on BCM5702/BCM5703
NICs (CQ3125).
3. Fixed a problem where PXE is slow then BCM5701 NICs is on the
Dual AMD Tyan (CQ3165).
4. Fixed a problem where UNDI performance is slow when it's in
some of OEM PCI-X systems. (CQ2800).
Version 2.1.4:
1. Removed personized banner per OEM's request.
2. Added features to allow user to configure delay time for banner,
and boot strap type (BBS,INT18h, INT19h).
Version 2.1.3:
1. Fixed a problem where PXE might lock up in some systems which implement
"Fast Boot Initiative". This only happens on NICs but not LOMs.
It's neccessary to have to use latest tools to upgrade PXE and latest
boot code firmware.
Version 2.1.2:
1. Fixed a problem where UNDI speed is very slow when BCM5701 Fiber
NICs/LOMs on a certain platform.
Version 2.1.0:
1. Fixed a problem where PXE doesn't work with BCM5702/BCM5703 NICs.
Version 2.0.11:
1. Fixed a problem where download with MTFTP fails. (CQ1793 & CQ2679)
Version 2.0.10:
1. Added support for future BCM5702 and BCM5703 NICs/LOMs.
Version 2.0.9:
1. Fixed a problem where PXE is not operatable if preboot WOL is
enabled.
Version 2.0.8:
1. Improve performance.
Version 2.0.7:
1. Fixed a problem where Tx or Rx can be hung when it's in PCI-X.
Version 2.0.6:
1. Fixed a problem where PXE is not detected by BIOS when it's in
PCI-X slot.
Version 2.0.5:
1. Fixed a problem where PXE might not boot in some systems which
have SMBIOS database built at preboot but don't support BBS.
Version 2.0.4:
1. Enhanced so that BIOS's BBS capability can be detected though SMBIOS.
Version 2.0.3:
1. Added support for BCM95701A12 NIC.
2. Enhanced to utilize shared memory interface for future compatibility.
Version 2.0.2:
1. Added support for BCM95701A10 NIC.
Version 2.0.1:
1. Added BCM5700 Fiber NIC support.
2. Added BCM5701 Fiber NIC support.
3. Added support for some OEM NICs.
Version 2.0.0:
1. Added BCM5701 support.
Version 1.06:
1. Added PCI-X workaround for B2 silicon.
Version 1.05:
1. Changed to provide a scheme for users to boot via Int 18h, Int 19h, or BBS.
After the Broadcom banner is displayed, users have 4 seconds to select:
* Ctrl F8 : Int 18h
* Ctrl F9 : Int 19h
* Ctrl F10 : BBS
2. Changed to allow users to force PXE run at a certain speed.
Version 1.04:
1. Changed due to changes in ASIC version format in B1 silicon.
Version 1.03:
1. Eliminated unused code to save more memory so that it works fine with IBM 300GL.
2. Changed to accomodate different LED configurations based on System Vendor ID.
Version 1.02:
1. Fixed a problem where client hangs up during setup phase of windows 2000
installation with RIS.
2. Fixed copyright banner string.
Version 1.01:
1. Changed to accomodate different LED configurations.
Version 1.0:
1. Fixed a problem where base-code cannot be unloaded.
2. Fixed a problem where Linux Universal Driver crashes when it binds to
UNDI. UNDI now can run in protected mode.
Version 0.10:
1. Fixed a problem where some system might lock up if BIOS calls
UNDI API SHUTDOWN before call UNDI API INITIALIZE. IBM 300PL
PC is one of them.
2. Changed so that Broadcom copyright banner is displayed during
ROM initialization.
This version should fix SAR Prod0000344,and SAR Prod0000283
Version 0.9:
1. Fixed a problem where PXE is not recognized is some systems where
BIOS don't support BBS (BIOS Boot Specification). Logic is
added to PXE initialization code to detect if BIOS support BBS or
not. If not, then use Interrupt 18h for boot. This should
fix SAR Prod0000225,SAR Prod0000604, SAR Prod0000606.
Version 0.8:
1. Fixed a problem where APITEST failed. (SAR Prod0000426)
Version 0.7:
1. Fixed a problem where mapping a network drive can intermittently lock up
the client system. (SAR Prod0000236)
Version 0.6:
1. Fixed a problem where PHY speed for Gigabit links are not displayed
correctly.
Version 0.5:
1. Added support for B0 Silicon.
2. Fixed a problem where 10Mbps doesn't work.
Version 0.4:
1. Initial release.
Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.