========================== R E L E A S E N O T E S ========================== Broadcom NetXtreme Firmware Upgrade Tool for Linux Copyright (c) 2005-2010 Broadcom Corporation All rights reserved. Feb 12, 2010 Version 2.0.15 (Feb 12, 2010) ----------------------------- Fixes: ===== 1. Problem: CQ45877 The FwUpg tool can't upgrade ASF firmware for BCM57765 NIC. Cause: The FwUpg tool did not check the device type correctly for the BCM57765 NIC when upgrading the ASF firmware. Change: The FwUpg tool checks the device type correctly for the BCM57765 NIC when upgrading the ASF firmware. Impact: 'upgrade -asf' command for BCM57765 NIC. Version 2.0.14 (Feb 02, 2010) ----------------------------- Enhancements: ============= 1. Request: Added support to BCM57761/65/81/85/91/95 NICs. Change: Added support to BCM57761/65/81/85/91/95 NICs. Impact: All commands for BCM57761/65/81/85/91/95 NICs. Note: BMAPILNX v6.6.3 is required for BCM57761/65/81/85/91/95 NICs support. Version 2.0.13 (Jan 05, 2010) ----------------------------- Fixes: ===== 1. Problem: CQ44783 The FwUpg tool should return an error code if the driver failed to suspend the adapter after upgrade firmware in the command line mode. Cause: The FwUpg tool did not return the error code when running in the command line mode. Change: The FwUpg tool returns an error code if the driver failed to suspend the adapter when running in the command line mode. Impact: The 'upgrade' command for all NX1 NICs. Enhancements: ============= 1. Request: CQ45137 Added support to Combo MBA image file. Change: Added support to Combo MBA image file. Impact: 'upgrade -mba' command. Version 2.0.12 (Jul 10, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ41825 The FwUpg tool will corrupt the extended directory after upgrading to the bootcode that is larger than the current one. Cause: The function that used for upgrade bootcode didn't support the extended directory entries. Change: Added the extended directory support in the function. Impact: The 'upgrade -bc' command for BCM5761 NIC with extended directory entry. Version 2.0.11 (Jul 02, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ42366 The FwUpg tool can't upgrade iSCSI bootcode for BCM5761 if there is an extended directory. Cause: The FwUpg tool did not process the extended directory correctly when calculating the free space for iSCSI bootcode. Change: The FwUpg tool does process the extended directory correctly and can calculate the free space for iSCSI bootcode. Impact: The BCM5761 NIC. 2. Problem: CQ42419 The FwUpg tool can't prg/upg selfboot firmware for BCM5785 with AC131 PHY. Cause: The FwUpg tool did not validate the BCM5785 with AC131 PHY and the provided selfboot image file correctly. Change: The FwUpg tool can validate the BCM5785 with AC131 PHY and the selfboot image file correctly now. Impact: The BCM5785 NIC with AC131 PHY. Version 2.0.10 (Jun 26, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ42147 The FwUpg tool can't detect the BCM5785 NIC. Cause: The FwUpg tool did not support BCM5785 NIC. Change: The FwUpg tool does support BCM5785 NIC now. Impact: The BCM5785 NIC. Version 2.0.9 (Jun 18, 2009) --------------------------------- Enhancements: ============= 1. Request: Added support to upgrade iSCSI bootcode with Ipv4, IPv6, or both. Change: Added support to upgrade iSCSI bootcode with Ipv4, IPv6, or both. Impact: 'upgrade -ib|-ib_ipv6|-ib_ipv4n6' command. Version 2.0.8 (May 29, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ41448 The FwUpg tool can't display version of iSCSI CONFIG. Cause: The FwUpg tool was not implemented to display the version of iSCSI CONFIG. Change: The FwUpg tool is implemented to display the version of iSCSI CONFIG. Impact: The "dir" command for all NX1 NICs. Version 2.0.7 (May 22, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ40222 The FwUpg tool can't use '-all' to upgrade DASH firmware for BCM5761S. Cause: The '-all' option was not processed correctly for the DASH firmware upgrade. Change: The '-all' option is now processed correctly for the DASH firmware upgrade. Impact: The "-all upgrade" command for BCM5761S NIC. 2. Problem: CQ39902 The FwUpg tool can't prg bootcode for BCM5761S. The error message is "feature not supported". Cause: The BCM5761/5761E/5761S was not allowed for the 'prg -bc' command previously. Change: The 'prg -bc' command is now allowed for the BCM5761/5761E/5761S NICs. Impact: The "prg -bc" command for BCM5761/5761E/5761S NICs. Version 2.0.6 (May 21, 2009) --------------------------------- Enhancements: ============= 1. Request: CQ40916 Added support to BCM57788. Change: Added support to BCM57788. Impact: BCM57788 NIC. Fixes: ====== 1. Problem: CQ39981 The FwUpg tool can't restorenvram for BCM5761S. Cause: The BCM5761S was not supported previously. Change: The BCM5761S is now supported. Impact: The "restorenvram" command for BCM5761S NIC. 2. Problem: CQ39976 The FwUpg tool can't upgrade bootcode for BCM5761S. Cause: The BCM5761S was not supported previously. Change: The BCM5761S is now supported. Impact: The "restorenvram" command for BCM5761S NIC. 3. Problem: CQ40222 The FwUpg tool can't use '-all' to upgrade DASH firmware for BCM5761S. Cause: The BCM5761S was not supported previously. Change: The BCM5761S is now supported. Impact: The "-all upgrade" command for BCM5761S NIC. 4. Problem: CQ39902 The FwUpg tool can't prg bootcode for BCM5761S. The error message is "feature not supported". Cause: The BCM5761S was not supported previously. Change: The BCM5761S is now supported. Impact: The "prg" command for BCM5761S NIC. Version 2.0.5 (Apr 10, 2009) --------------------------------- Enhancements: ============= 1. Request: Sync up the code with WinFwUpg, v7.0.8. Change: Sync up the code with WinFwUpg, v7.0.8. Impact: OTP operations for BCM57760/80/90 NICs. Version 2.0.4 (Mar 30, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ39861 The "prg -bc" command displayed the "directory checksum error" before programming the bootcode file if the NVRAM contains invalid data. Cause: The directory checksum was not validated correctly if the NVRAM contains invalid data in the directory region. Change: The directory checksum of the bootcode file will be validated instead of the one in NVRAM. Impact: The "prg" command for any adapter with NVRAM that contains invalid data in the directory region. 2. Problem: CQ39881 The "upgrade -ib" command does not work for the BCM57760 adapter. Cause: The FwUpg tool did not include the BCM57760 adapter into the iSCSI-capable NIC list. Change: Add the BCM57760 into the iSCSI-capable NIC list. Impact: The "upgrade -ib" command for BCM57760 NIC. 3. Problem: CQ39925 The "sechk" command failed in b57diag after using "prg/upgrade" command to prg/upgrade the firmware on BCM57760 with AT flash. Cause: The FwUpg tool did not detect the AT flash correctly and would write the wrong bootcode information into the NVRAM. Change: The FwUpg tool can detect the AT flash used by BCM57760 correctly and the firmware is programmed/upgraded without error. Impact: The "upgrade -ib" command for BCM57760 NIC. 4. Problem: CQ40130 The "upgrade -asf" command does not work for BCM57760 with bootcode, ASF firmware, iSCSI boot, and PXE. The FwUpg failed to find space for the ASF Init firmware. Cause: The FwUpg tool could not find the space due to a bug in the algorithm to find the free space in the NVRAM. Change: The bug is corrected and the algorithm can find and allocated the free space to upgrade the ASF Init firmware. Impact: The "upgrade -asf" command for BCM57760 NIC. Version 2.0.3 (Mar 19, 2009) --------------------------------- Enhancements: ============= 1. Request: Support Extended Directory for BCM5761 adapters. Change: Support Extended Directory for BCM5761 adapters. Impact: All NetXtreme adapters. Fixes: ===== 1. Problem: CQ35888 The "dir" command did not display the "APE Web Data" entry in the directory. Cause: The "APE Web Data" type was not recognized by FwUpg tool. Change: The "APE Web Data" entry in the directory will be displayed by FwUpg tool. Impact: The "dir" command for BCM5761 adapter. Version 2.0.2 (Mar 11, 2009) --------------------------------- Fixes: ===== 1. Problem: CQ39826 The "dir" command can't display the ASF Init version string correctly for BCM57760. Cause: The FwUpg utility did not get the ASF Init vesion string from the correct location in NVRAM. Change: The FwUpg utility gets the ASF Init vesion string from the correct location in NVRAM. Impact: The "dir" command for BCM57760 with ASF Init. 2. Problem: CQ39859 The "restorenvram" command caused segmentation fault for BCM57760. Both BCM57780 and BCM57790 work correctly. Cause: The FwUpg utility did not process the ASF version string correctly that was programmed in BCM57760. Both BCM57780 and BCM57790 do not support ASF and do not have the problem. Change: The FwUpg utility will process the ASF version string correctly for BCM57760. Impact: The "restorenvram" command for BCM57760. Version 2.0.1 (Feb 26, 2009) --------------------------------- Enhancements: ============= 1. Request: Support BCM57760/57780/57790 adapters. Change: Support BCM57760/57780/57790 adapters. Impact: BCM57760/57780/57790 adapters. Note: OTP access of BCM57760/57780/57790 is not supported. Version 1.0.44 (Sep 11, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ35736 The "upgrade -ipmi" command does not work for the BCM5723 NIC. Cause: The version string in the new IPMI image file for BCM5723 was "IPMILITE" instead of "ASFIPMI" and that caused the image file can't be recognized by the FWUPG utility. Change: Both "ASFIPMI" and "IPMILITE" are used by FWUPG utility to validate the IPMI image file. Impact: The "upgrade -ipmi" command with new IPMI image file. Version 1.0.43 (Aug 01, 2008) --------------------------------- Fixes: ===== 1. Problem: The "upgrade -ib -p" command does not work in the command line mode with "-all" option. Cause: The "upgrade -ib -p" command with the "-all" option in the command line mode was not correctly processed. Change: The "upgrade -ib -p" command with the "-all" option in the command line mode is now processed correctly. Impact: The "-all upgrade -ib" command in command line mode for all NetXtreme NICs. 2. Problem: Same version upgrade for iSCSI boot code did not return error. Cause: The current iSCSI boot code version was not retrieved correctly when the iSCSI Config Program was present in the NVRAM. Change: The current iSCSI boot code version is retrieved correctly even when the iSCSI Config Program was present in the NVRAM. Impact: The "upgrade -ib" command for all NetXtreme NICs. Version 1.0.42 (Jul 30, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ36543 The "upgrade -ib" command does not upgrade the iSCSI Configration Program from the iSCSI image file. Cause: The "upgrade -ib" command was originally designed to upgrade the iSCSI boot code only. Change: The "upgrade -ib" command will have additional options "-c" and "-p" to upgrade the iSCSI Configuration and the iSCSI Configuration Program if they exist. Impact: The "upgrade -ib" command for all NetXtreme NICs. Version 1.0.41 (Jun 03, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ35384 The "idmatch" option for "restorenvram" does not check the subsystem device ID correctly. Cause: The FWUPG did not check the subsystem device ID correctly when the "idmatch" option is specified. Change: The FWUPG now checks the subsystem device ID correctly when the "idmatch" option is specified. Impact: All NetXtreme adapters. 2. Problem: CQ35396 Attempting to upgrade the selfboot code for several 5764m adapters with the "-all" results in "No supported NIC found" error. It only occurred to selfboot NICs. Cause: The FWUPG did not handle the revision of the seltboot code correctly and it caused that all the NICs were excluded. Change: The FWUPG now handle the revision of the selfboot code correctly and all the qualified NICs will be selected and upgraded. Impact: All NetXtreme adapters with software selfboot code. Version 1.0.40 (May 22, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ32256 Unable to save a dump file if the file name is the same as an existing file folder. Cause: The FWUPG tool did not check the file name against the existing file folder. Change: The FWUPG tool checks the file name against the existing file folder and displays an error message. Impact: All NetXtreme adapters. Version 1.0.39 (Apr 22, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ34622 The "cfg -wol 1" command set the WOL setting in NVRAM, but the system did not wake up on Magic packet after being shutdown. Cause: The "cfg -wol 1" command set the WOL setting in NVRAM, but the current WOL setting kept in driver was not changed. The current WOL setting is initialized according to the WOL setting in NVRAM during driver load time and updated later by the "ethtool -s" command. Change: After updating the WOL setting in NVRAM, the FWUPG will synchronize the WOL setting in NVRAM and the current WOL setting kept in driver. Impact: All adapters. Enhancements: ============= 1. Request: CQ34446 Added capability to program MBA firmware for some adapters. Change: Added capability to program MBA firmware for some adapters. Impact: "prg" command for some specific adapters. Version 1.0.38 (Mar 31, 2008) --------------------------------- Enhancements: ============= 1. Request: CQ33942 Support BCM5723 adapter. Change: Added code to support BCM5723 adapter. Impact: BCM5723 adapter. Note: The bmapilnx, version 6.3.48, is required. Version 1.0.37 (Mar 06, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ33992 The "Failed to read NVRAM" error was displayed by FWUPG when "dir" command was issued at the first time. The subsequent "dir" command did not display the error. Cause: The error message was displayed when FWUPG tried to determine the NVRAM size. This was done when the first "dir" commmand was issued. Change: There is no error encountered and the error message is removed. Impact: BCM5764/BCM5784 adapters. Enhancements: ============= 1. Request: Support BCM5761 adapter. Change: Added code to support BCM5761 adapter. Impact: BCM5761 adapter. Note: The tg3 driver, version 3.85l, is required. Version 1.0.36 (Feb 14, 2008) --------------------------------- Fixes: ===== 1. Problem: CQ33619 The "upgrade -mba" command can not upgrade the PXE from 3.2.1 to 3.2.2 for BCM5701. Cause: The PXE image file for 3.2.1 does not have a configuration bit set that was introduced in version 8.2.0. The FWUPG returns error if the configuration bit is not set in the PXE image file. Change: The FWUPG will return error only if the configuration bit is not set in the PXE image file and the PXE image file is v8.2.0 or later. Impact: The "upgrade -mba" command with PXE image file that was released before v8.2.0. Version 1.0.35 (Jan 22, 2008) --------------------------------- Enhancements: ============= 1. Request: CQ33594 Update the Release.txt to comply requirements. Change: The Release.txt is updated to comply requirements. Impact: None. Fixes: ===== 1. Problem: The version string for ASF Init firmware is not displayed correctly for BCM5764M NIC in "dir" command. Cause: The BCM5764M version string was not processed correctly to display on the adapter list. Change: The BCM5764M version string is now processed correctly to display on the adapter list. Impact: The "dir" command for BCM5764-based adapter. Version 1.0.34 (Jan 18, 2008) --------------------------------- Enhancements: ============= 1. Request: Added support for BCM5764M/BCM5784M NIC. Change: Added support for BCM5764M/BCM5784M NIC. Impact: BCM5764M-based and BCM5784M-based adapters. Version 1.0.33 (Nov 30, 2007) --------------------------------- Fixes: ===== 1. Problem: CQ32600 FWUPG tool overwrites the iSCSI configuration data when restoring NVRAM data from an image file without the user specifying to do so. Cause: The FWUPG tool overwrites the iSCSI configuration data without checking the "config" option in the "restorenvram" command. Change: The FWUPG tool will preserve the iSCSI configuration data if the "config" option in the "restorenvram" command is not specified. Impact: The "restorenvram" command. Version 1.0.32 (Nov 09, 2007) --------------------------------- Fixes: ===== 1. Problem: CQ25942 Make the commands and options for FWUPG utility to be case sensitive. However, the MAC address to identify the adapter in the "Command line mode" command should be case insensitive. Cause: The case sensitive restriction of MAC address was inposed in Release v1.0.30. Change: The commands and options for FWUPG utility is case sensitive. The MAC address to identify the adapter in the "Command line mode" command is case insensitive. Impact: All commands in "Command line mode" with MAC address for NetXtreme adapters. Version 1.0.31 (Oct 30, 2007) --------------------------------- Enhancements: ============= 1. Request: CQ27858 Added an option in "cfg" command to display the settings of current configuration. Change: The "-show" option is added to the "cfg" command. Impact: The "cfg" command for NetXtreme adapters. Version 1.0.30 (Oct 29, 2007) --------------------------------- Enhancements: ============= 1. Request: CQ25942 Make the commands and options for FWUPG utility to be case sensitive. Change: The commands and options for FWUPG utility is case sensitive. Impact: All commands and options for NetXtreme adapters. Fixes: ===== 1. Problem: CQ26241 When "double quote" was used to specify the file path in the Interactive mode, the FWUPG utility could not process it correctly. This feature does work in the Command line mode. Cause: The "double quote" was handled by the Linux Shell in the Command line mode before the file path was passed to the FWUPG utility. In the Interactive mode, the FWUPG utility did not handle the "double quote" correctly. Change: The FWUPG utility will handle the "double quote" character used in the file path in the Interactive mode. Impact: All commands with "double quote" in the file path. Version 1.0.29 (June 29, 2007) --------------------------------- Enhancements: ============= 1. Request: CQ27417 Use the libstdc++ as a static library in lnxfwupg. Change: Link the libstd++ as a static library in lnxfwupg, instead of as a shared library. Impact: All NetXtreme adapters. Version 1.0.28 (June 27, 2007) --------------------------------- Enhancements: ============= 1. Request: CQ29609 Add the ability to configure the 'L1 ASPM debounce' feature. Change: The feature is added in 'cfg' command. Impact: All NetXtreme adapters that support 'L1 ASPM debounce' feature. Fixes: ===== 1. Problem: CQ26904 'lnxfwupg -all upgrade -F ump ' returned an error if a non-UMP device was present as device 0 in FWUPG utility. Cause: When detecting the UMP devices, the FWUPG utility is always checking device 0 due to a bug. Change: When detecting the UMP devices, the FWUPG utility will scan all the devices in the system. Impact: UMP firmware upgrade operation. Version 1.0.27 (May 29, 2007) --------------------------------- 1. Request: CQ29694 Added the ability to do "First time install" of iSCSI boot in the field through 'prg' and 'restorenvram' for selective NetXtreme adapters. Change: The 'prg' command can program iSCSI boot firmware into the NVRAM. The 'restorenvram' command is able to pick up an image file that contains the iSCSI boot firmware and restore them into the NVRAM of an identical device that did not have the iSCSI boot firmware previously. Impact: Selective NetXtreme adapters. Version 1.0.26 (May 15, 2007) --------------------------------- Fixes: ===== 1. Problem: CQ29502 The 'idmatch' option for 'restorenvram' command does not work with '-all' option. Cause: The 'idmatch' option in 'restorenvram' command was not parsed when the '-all' option was specified. Change: The 'idmatch' option in 'restorenvram' command is parsed when the '-all' option is specified. Impact: All NetXtreme adapters. Version 1.0.25 (May 8, 2007) --------------------------------- Fixes: ===== 1. Problem: CQ29289 The 'restorenvram' command displayed an error message "error: no valid VPD header found and invalid firmware type" for 5906/5906M. Cause: The VPD data was not copied to the buffer that was used for validation. Change: The VPD data is copied to the buffer that is used for validation. Impact: BCM5906/5906M-based adapters. Version 1.0.24 (April 30, 2007) --------------------------------- Enhancements: ============= 1. Request: CQ27416 Added a '-noreset' option in 'upgrade' command and a new 'reset' command in Command Line Mode. Change: Implemented code for the new features. The '-noreset' option in 'upgrade' command wil request the FWUPG not to reset the NIC after upgrade is complete. The 'reset' command will request the FWUPG to reset the selected NIC. Both features are valid only in Command Line Mode. Impact: All NetXtreme adapters. Fixes: ===== 1. Problem: CQ29251 The 'restorenvram' command restored the NVRAM content even the 'idmatch' option was not spelled correctly. Cause: The 'restorenvram' command restored the NVRAM content by using the default setting if the 'idmatch' option was spelled wrong or absent. Actually, the FWUPG will restore the NVRAM content with the default setting if any option keyword is not spelled correctly. Change: The 'restorenvram' command will not restore the NVRAM content if any option keyword is spelled wrong. An error message is displayed to user. Impact: All NetXtreme adapters. Version 1.0.23 (April 19, 2007) ---------------------------------- Fixes: ===== 1. Problem: CQ29195 The 'upgrade ?' command does not display iSCSI boot usage syntax. Causes: The information is not included in the display context. Change: The iSCSI boot usage syntax is added to the context. Impact: All NetXtreme adapters. 2. Problem: CQ29203 FWUPG shows 'unknown' for iSCSI CFG1. Causes: The 'iSCSI CFG1' type was not recognized by FWUPG. Change: The 'iSCSI CFG1' type is now recognized by FWUPG. Impact: All dual-port NetXtreme adapters. 3. Problem: CQ28960 FWUPG crashed when upgraded bootcode on BCM5700/5701. Causes: FWUPG tried to read NVRAM_CONFIG1_REG that is not available in BCM5700/5701. Change: FWUPG will not try to read from NVRAM_CONFIG1_REG if BCM5700/5701 is identified. Impact: BCM5700/5701-based NetXtreme adapters. Version 1.0.22 (April 18, 2007) ---------------------------------- Enhancements: ============= 1. Request: CQ27206 Support CLP image file in 'upgrade' command. Change: Implemented code to upgrade CLP image file as PXE. Impact: All NetXtreme adapters. Fixes: ===== 1. Problem: CQ27739 The VPD information block was overwritten during the boot code upgrade. Causes: The VPD information from boot code image file was written to the NVRAM. Change: The VPD information in NVRAM is preserved now. Impact: All NetXtreme adapters. Version 1.0.21 (March 28, 2007) ---------------------------------- Enhancements: ============= 1. Request: CQ28258 Added checksum support for Code Directory (0x14-0x73) in NVRAM at offset 0x75. Change: Implemented code to add the checksum for Code Directory. Impact: All NetXtreme adapters. Version 1.0.20 (March 07, 2007) ---------------------------------- Enhancements: ============= 1. Request: CQ27344 Added capability to upgrade iSCSI boot firmware. Change: Implemented code to support the capability to upgrade iSCSI boot firmware. Impact: All NetXtreme adapters. Note: Power PC platform was not tested. 2. Request: CQ27910 Added 'idmatch' option in 'restorenvram' command to check vendor_id, device_id, subsystem_vendor_id, and subsystem_device_id between the dump image file and the device before restoring the NVRAM from the file. Change: Implemented code to support the 'idmatch' option in 'restorenvram' command. Impact: All NetXtreme adapters. Fixes: ====== 1. Problem: CQ28723 Boot code revision was not displayed correctly during upgrading process. Cause: The leading 0 of minor revision was not displayed. Change: Make sure the leading 0 of minor revision is displayed as 0. Impact: All NetXtreme adapters. Version 1.0.19 (February 23, 2007) ---------------------------------- Enhancements: ============= 1. Request: To support the BCM5722-based adapter. To support the BCM5756ME-based adapter. Change: Implemented code to support BCM5722/BCM5756ME adapter. Impact: The BCM5722 and BCM5756ME adapters are supported by Firmware Upgrade tool for Linux. Note: Power PC platform is not tested. Version 1.0.18 (February 12, 2007) ---------------------------------- Enhancements: ============= 1. Request: To support the BCM5906-based adapter. Change: Implemented code to support BCM5906 adapter. Impact: The BCM5906-based adapter is supported by Firmware Upgrade tool for Linux. Note: Power PC platform is not tested. Fixes: ====== 1. Problem: CQ28285 Lnxfwupg utility does not process the version of PXE image file correctly in PPC platform. Cause: In previous lnxfwupg for PPC, the function to check PXE file version did not work correctly in PPC platform. Change: The function to check the PXE file version was modified to make sure it worked on both x86 and PPC platforms. Impact: The tool should be able to process PXE file version correctly on both x86 and PPC platforms via the "upgrade -mba" command. Version 1.0.17 (January 5, 2007) --------------------------------- Fixes: ====== 1. Problem: CQ27724 Lnxfwupg utility does not update PXE code in PPC. Reported the "PXE binary is for PCIe" error message when the PXE binary file was for PCI/PCIX adapter. Cause: In previous lnxfwupg for PPC, the routine to program PXE code did not handle the byte order properly when checking the Flags word in Vendor Data region. Change: Fixed the related routine to handle byte order correctly when examining the Flags word in Vendor Data region on PPC. Impact: The tool should be able to upgrade PXE code on PPC via the "upgrade -mba" command. Version 1.0.16 (December 5, 2006) --------------------------------- Fixes: ====== 1. Problem: CQ27724 Lnxfwupg utility does not update PXE code in PPC. Cause: In previous lnxfwupg for PPC, the routine to program PXE code did not handle the byte order properly when checking the device id. Change: Fixed the related routine to handle byte order correctly when examining the device id on PPC. Impact: The tool should be able to upgrade PXE code on PPC via the "upgrade -mba" command. Version 1.0.15 (November 30, 2006) --------------------------------- Enhancements: ============= 1. Request: To add a "Disclaimer" section in Readme.txt. Change: Added the "Disclaimer" section in Readme.txt with statements provided by Marketing. Impact: "Disclaimer" section in Readme.txt. Fixes: ====== 1. Problem: To remove bcm5700 driver support. Cause: Previous releases mistakenly allowed adapters loaded with bcm5700 driver. Change: Removed the bcm5700 driver support as requested. Impact: The tool should not work on any adapters loaded with bcm5700 driver. 2. Problem: CQ27122 Lib64 search path for lnxfwupg-ppc needs to be fixed. Cause: The linker specified in previous releases caused the wrong loader path to be hard coded in the ELF file. Change: Rework Makefile to use the system default compilers and linker with proper CFLAGS and LFLAGS options. Impact: The reported message "bad ELF interpreter" should not be seen when running lnxfwupg on any PPC platform. Readme.txt has been updated to remove this from "Known Limitations" section. Version 1.0.14 (November 1, 2006) --------------------------------- Fixes: ====== 1. Problem: CQ27217 Previous release showed error 20 when executed. Cause: The message was newly added in last release to indicate any error returned from BmapiInitDiag() when this tool trying to gain the initial access to an adapter. Error 20 here indicated that the device driver was not loaded. Change: To print the above message only for debug mode. Impact: The reported message should only be seen for debug mode. 2. Problem: CQ27318 PPC Firmware Update tool under Linux doesn't show same info. 'dir' command in previous lnxfwupg for PPC only showed version information, i.e. v3.41, while others all append version id to the device information string, i.e. 5704s-v3.41. Cause: In previous lnxfwupg for PPC, the 'dir' command was not handling the byte order properly when retrieving the device version string on PPC. Change: Fixed the related routines to handle byte order correctly when examining the device version string on PPC. Impact: 'dir' command in lnxfwupg for PPC. Version 1.0.13 (October 20, 2006) --------------------------------- Fixes: ====== 1. Problem: CQ26975 Firmware Upgrade utility display incorrrect PXE version info. Cause: The 'dir' command used a 16bits mask to get the PXE version offset. When its offset exceeded 0x10000, the retrieved version information was then incorrect. Change: Fixed the related routine to use 32-bit mask. Impact: PXE version should be reported correctly by the 'dir' command. 2. Problem: CQ27005 Able to program ASF and overwrite IPMI on a 5721 and 5704s/c. Cause: The error case was not handled in previous release. Change: Added error case handling for the reported problem. ASF/IPMI firmware can only be loaded on a NIC with previous existent ASF/IPMI firmware respectively. Impact: 'upgrade' and 'seprg' (deprecated) commands. 3. Problem: CQ27006 Misleading "Wrong Firmware Image version" message is displayed when downgrading bootcode. Cause: Previous release sent out the above message when 1) In the command mode, downgrading the firmware using the 'upgrade' command without '-F' option. 2) In the interactive mode, answering 'n' at the "Continue downgrading ...(y/n)" prompt. Change: Enhanced the error handling for the reported scenarios. 1) "Supplied firmware has the same or older version. '-F' option is recommended." will be reported. 2) "No downgrade!" will be reported. Impact: Output messages for the reported scenarios. Version 1.0.12 (October 3, 2006) --------------------------------- - Need bmapilnx version 6.3.28 or above. - Need tg3 version 1.3.58 or above. Enhancements: ============= 1. Request: To add 'cfg' command to configure MAC address for all supported NetXtreme devices. Change: Implemented 'cfg' command to configure MAC address as requested. Impact: New command 'cfg' is added. 'cfg -mac ' can be used to configure MAC address for the selected NetXtreme adapter. 2. Request: CQ24703, CQ24810 To allow user to enable/disable management firmware. Change: Added the requested capability to the 'cfg' command. Impact: 'cfg -asf 1' command to enable asf firmware and 'cfg -asf 0' command to disable asf firmware. 'cfg -ipmi 1' command to enable ipmi firmware and 'cfg -ipmi 0' command to disable ipmi firmware. 'cfg -ump 1' command to enable ump firmware and 'cfg -ump 0' command to disable ump firmware. 3. Request: CQ24810 To allow user to enable/disable PXE. Change: Added the requested capability to the 'cfg' command. Impact: 'cfg -mba 1' command to enable pxe firmware and 'cfg -mba 0' command to disable pxe firmware. Fixes: ====== 1. Problem: CQ25968 Upgrade -F not enforced for same version. Cause: Previous release only sent out warning message when downgrading FW to an earlier version. Change: A warning message will be prompted if upgrading to the same version or an earlier version. Impact: A warning message should be seen when upgrading FW to the same version. 2. Problem: CQ26094 Wrong program name string was used in an error message. Cause: 'winfwupg' was mistakely reported when the program name string of 'lnxfwupg' was expected. Change: Corrected the program name string. Impact: Program name string should be refereced correctly. 3. Problem: CQ26419 Sequence during upgrade of FW should validate bootcode file first when using FW Upgrade Utility. Cause: The internal validation sequence implemented in previous release did not validate file first. Change: Modified the internal program flow so as to validate file first before taking further actions. Impact: The program should terminate immediately when a non existing file is specified. 4. Problem: CQ26414 Attempting to program firmware with invalid bootcode name results in segmentation fault. Cause: The related routine did not exit correctly causing an invalid data to be accessed. Change: Fixed the related routine to handle the error case correctly. Impact: An error should be reported when specifying a non existent file. 5. Problem: CQ26457 Program crash and exit when running 'cfg -mac '. Cause: The crash occurred when the program tried to close a file with an invalid file handle. Change: Modified the program to ensure only valid file handle will be passed to close() a file. Impact: The program should never crash when running the above command. 6. Problem: CQ26459 Extra non-necessary error message is shown when downgrading. Cause: The described messages should only be used for debug mode. Change: Modified the program to sent the debugging messages only for debug mode. Impact: The described messages should not be seen when downgrading. 7. Problem: CQ26128 FwUpg utility's help description is not user friendly. Cause: No usage scenarios or examples were shown in Readme.txt. Change: Modified Readme.txt to update "Command Usage" section. In addition, "Examples" section and "Scope" section were added. Impact: "Command Usage", "Examples", "and "Scope" sections in Readme.txt. 8. Problem: CQ26674 5756ME shows up when should not be supported. Cause: We do not support this device with this tool yet. But the tool claimed otherwise. Change: Just do not list the device in the list of supported device as part of the 'dev' command. Impact: 5755 family of products. 9. Problem: CQ26558 Red text should be used for error messages only. Cause: Some messages were not sent with designated cursor colors. Change: Ensured all output messages are sent with appropriate cursor colors. Impact: Output messages. 10. Problem: CQ26568 Upgrade -F not enforced when upgrading management firmware (ASF/IPMI/UMP) to the same version. Cause: Previous release only sent out warning message when downgrading management firmware to an earlier version. Change: A warning message will be prompted if upgrading management firmware to the same version or an earlier version. Impact: A warning message should be seen when upgrading management firmware (ASF/IPMI/UMP) to the same version or an earlier version. 11. Problem: CQ26614 Remove driver version displayed from 'dir' command. Cause: The driver version information was shown in previous releases. Change: Removed the driver version information as requested. Impact: Driver version information should not be seen from 'dir' command. 12. Problem: CQ25577 Possible misleading errors for user mistakes. Cause: Error handlings implemented in previous releases. Change: Enhanced some error handlings to address the reported scenarios. Impact: Use case scenario around the reported cases. 13. Problem: CQ26864 Improperly displays help information on "dir ?" and "upgrade ?". Cause: Handling of help information in previous releases. Change: Enhanced handling of help information in related routines. Impact: Proper help information should be displayed at all times. 14. Problem: CQ26921 Unable to restore NVRAM when using two self boot devices of different size. Cause: The image checksum verification routine expects the selfboot image to be in little endian format while the supplied selfboot image previously generated by 'dumpnvram' is in big endian format. This caused the 'restorenvram' command to fail because of incorrect checksum. Change: Ensured the supplied selfboot file image to be in little endian format before invoking the checksum verification routine. Impact: Use case scenario around the bug. 15. Problem: CQ26893 PXE can be enabled when not present in NVRAM w/o warning. Cause: An incorrect parameter passing caused the code to slip through the error checking and always got PXE to be enabled/disabled. Change: Fixed the related routine to pass correct parameter. Impact: PXE can be enabled/disabled only when the PXE firmware is present in the selected adapter. 16. Problem: CQ26894 Enable/Disable Management firmware lacks error messages on Self-boot devices. Cause: No errors were sent for this case in previous release. Change: Added error messages to handle the reported scenario. Impact: The error message FWUPG_UNSUPPORTED_FEATURE indicating "Feature not supported" should be seen in this case. 17. Problem: CQ26898 Downgrading UMP w/o -F shows up as red text and should be on a new line. Cause: A couple of output messages were not ended with "\r\n". Another one was not using the correct cursor color to output. Change: Appended "\r\n" to the related output messages, and also ensured that messages are in correct cursor colors. Impact: Output messages. 18. Problem: CQ26967 'cfg -mac' got into infinite loop. This was only observed on Windows with the released version. Cause: Using incorrect data type casting to store values returned from sscanf() caused stack corruption. Change: Ensured correct data types are used to store values returned from sscanf(). Impact: 'cfg -mac' should not cause infinite loop. Version 1.0.11 (July 14, 2006) --------------------------------- Fixes: ====== 1. Problem: CQ25835 5715s can be flashed with 5715c bootcode. Cause: The boot code start address was handled incorrectly when reading the device string information in the nvram. Change: Fixed the related function to get correct boot code start address when reading the device string information. Impact: "upgrade -bc" should not proceed when the device id or the media type from the image file does not match that of actual NIC. 2. Problem: CQ25449 WinFWUpg report incorrecty reports version of pxe on 2nd port(5780B1) of an OEM machine. Cause: There is partially a driver issue which seem to have vanished with driver v9.71. For performance reasons we cache the EEPROM info internally until a subsequent write operation. In the dual port case, if we upgraded the NVRAM using the secondary port the primary port cached EEPROM info was not set dirty. So, a subsequent "dir" or "crc" command will be operating with both old cached information and any other newly read information. This results in corrupted display with the "dir" command (and so forth). Change: When any write/upgrade happens using one of the port, we now set the dirty bit on the cached information on the second port. This way, when the user switches to the second port after an upgrade operation on the first port, the EEPROM information will be re-queried and the cache information will be updated. Impact: All operations on dual port NIC/LOM. 3. Problem: CQ25852 Winfwupg: Unable to upgrade PXE versions lower \ than 8.2.0 on PCI-Ex Cards Cause: Older PXE image files did not have the bus type field. The code was assuming the presence of this information all the time. Hence the bug. Change: We now check the image file to see if it has a valid bus type information. If not, we just validate the default device id information in the PXE image file and go through the rest of the operation. Impact: Use case scenario around the bug. Version 1.0.10 (July 11, 2006) --------------------------------- - Need bmapilnx version 6.3.27 or above. - Need tg3 version 1.3.58 or above. Fixes: ====== 1. Problem: CQ25483 Corruption occurred when updating bootcode on a 5714/5715 using a ST MP45PE10 flash. Cause: As reported in CQ25116 where boot code prior to v3.27 was not done correctly for a Hamilton device with ST MP45PE10 flash and caused the tg3 driver unable to program nvram. Change: If a 5714/5715/5780 with ST MP45PE10 flash and bootcode version < 3.27 attempts to program its nvram image, the changes will stop its attempt with error code FWUPG_SPECIAL_UPGRADE_REQUIRED and the following message: "Due to an incompatible boot code in NVRAM, the DOS User Diagnostics must be used to upgrade the boot code to v3.27 or later." Impact: lnxfwupg will not program nvram for a 5714/5715/5780 with ST MP45PE10 flash and bootcode version earlier than 3.27. Such 5714/5715/5780 can only be handled by the DOS User Diagnostics. 2. Problem: CQ25797 "Winfwupg [MAC|GUID] seprg -a [ASF File] [save_image]" results in bad nvram backup image Cause: The code that initializes NVRAM size was never hit in the use case scenario as in this bug. Hence the size of the dump file comes out to be zero. Change: The fix is to make sure that the correct NVRAM size is initialized before we do the dump of the NVRAM to a backup file. Impact: Use case scenario around the bug. 3. Problem: CQ25699 Winfwupg: GUID of a non-broadcom NIC gives parameter after GUID as wrong device Cause: Wrong command parameter index was used to output the error message. Change: Decremented the parameter index by one to pick up the right parameter and give meaningful error information. Impact: Use case scenario around the bug. Version 1.0.9 (July 7, 2006) --------------------------------- Fixes: ====== 1. Problem: CQ25706 Winfwupg: 5781 gets Device ID Mismatch Error when upgrading boot code Cause: Because of the order of device id check, 5781 was identified as 5753. Change: Checking for 5781 before 5753 addresses the problem. Impact: Upgrade operation with 5753, 5751, 5781 NICs Version 1.0.8 (June 30, 2006) -------------------------------- Fixes: ====== 1. Problem: CQ25623 Unable to upgrade 5751F with lnxfwupg. Cause: The functions to detect 5751F devices were not done correctly in previous version. Change: Fixed the related functions to detect 5751F devices. Impact: This tool should be able to handle 5751F. 2. Problem: CQ25513 Able to install ASF on a 5702-5 which did not have ASF before. Cause: Previous version mistakenly allowed to install ASF to a NIC without ASF images in its nvram. Change: Fixed the related functions to stop the operation with an error when trying to install ASF images to a NIC without ASF images in its nvram. Impact: Any fresh installation is not allowed. 3. Problem: CQ25138 'upgrade' Option Incorrectly Saves or Restores NVRAM - Results in Corrupted BootCod Cause: The boot code start address and boot code length were handled incorrectly if the input file is a dump file. Change: Fixed the related function to get correct boot code start address and boot code length before programming the image to nvram. Impact: "upgrade" with -bc option should be able to program nvram with a correct boot code binary image or a generated nvram dump file. Version 1.0.7 (June 23, 2006) -------------------------------- Fixes: ====== 1. Problem: CQ25129 Slow read/write access for 5751 LOM on AT24C512N flash. Cause: Original code mistakenly sent the NIC to sleep for 100 seconds. Change: Modified the code to use correct function and time value to pause. Impact: NICs with serial eeprom should not show slow read/write time. 2. Problem: -w option to set Wol does not take effect after setting. Cause: Original code did not reset the NIC after -w was set. Change: Fixed the code to reset the driver upon exit if wol was set. Impact: -w option to set wol. Version 1.0.6 (June 21, 2006) -------------------------------- Enhancements: ============= 1. Request: Check for image mis-match with 'restorenvram' command. Change: Rolled over applicable changes from Windows WinFWUpg v6.0.20 to filter out the devices if there is an image mis-match with the 'restorenvram' command. Impact: 'dumpnvram'/'restorenvram' with/without -all option. 2. Request: We do not do strict device-id matching when filtering out devices with the -all option for 'restorenvram' command. Change: Rolled over applicable changes from Windows WinFWUpg v6.0.20 to do family based device-id matching. Impact: 'dumpnvram'/'restorenvram' with/without -all option. Fixes: ====== 1. Problem: To roll over applicable fixes for CQ25359 submitted to Windows WinFWUpg v6.0.20. CQ25359: WinFWUpg: While doing a nvram restore on a 5786/ 5787 selfboot, the MAC does not get restored. Cause: The condition was reserved and handled incorrectly in previous version. Change: Rolled over the applicable fixes from Windows WinFWUpg v6.0.20 to reverse the checks. Impact: 'upgrade' command on self-boot. Version 1.0.5 (June 15, 2006) -------------------------------- 1. Problem: CQ25197 IPMI Version not reported for 5704c on RH4.0 PPC. Cause: Previous verison did not handle byte order properly when reading the IPMI directory information on PPC64. Change: Corrected byte order handling when reading directory information on PPC64. Impact: The 'dir' command. 2. Problem: CQ25338 Update "Installation" in Readme.txt for lnxfwupg package. Cause: Revised marketing requirement. Change: Updated "Installation" in Readme.txt for the requested packaging. Impact: Readme.txt. Version 1.0.4 (June 14, 2006) -------------------------------- Fixes: ============= 1. Problem: To roll over applicable fixes for CQ24995 submitted to Windows WinFWUpg v6.0.19. CQ24995: WinFWUpg: Disable/Enable wol corrupts selfboot firmware and resets MAC address Cause: Prior to the change, the code was not setup to do disable/enable wol for selfboot firware types. Change: Rolled over the applicable fixes from Windows WinFWUpg v6.0.19 to do disable/enable wol correctly now. Impact: -w command option. 2. Problem: CQ25361 5786 Self Boot -- Unable To Restore Dumped NVRAM Image with error showing "Device ID in NVRAM image error" Cause: The code did not have the support for the mentioned device. Change: Rolled over the applicable fixes for CQ25243 from Windows WinFWUpg v6.0.19 to get the needed device information. Impact: All commands/devices. 3. Problem: To roll over applicable fixes for CQ25325 submitted to Windows WinFWUpg v6.0.19. CQ25325: WinFWUpg: Unable to upgrade bootcode on a 5754M A2 nic Cause: During device/image matching, we first check to see if the NIC is of a 5754 type (which includes 5754M). If so, we fail to identify the "M" part. Following this check is the check to identify if it is a 5754M type. Because of the checking order, we identify 5754M type as 5754. Hence the bug. Change: Rolled over the applicable fixes from Windows WinFWUpg v6.0.19 to reverse the check to identify 5754M before 5754. Impact: Use cases around the bug. 4. Problem: CQ25217 Unable to Program ASF Firmware on the (5754-A2) LOM. Cause: The code wrongly assumed that ASF is not supported on all of the NICs whose ASIC version is 5787. Change: Rolled over the applicable fixes for CQ25194 from Windows WinFWUpg v6.0.19. The code now reports that ASF not supported only if the NIC type is 5786 or it is a selfboot when dealing with 5787 family of NICs. Impact: 'upgrade' command with -asf option. 5. Problem: To roll over applicable fixes for CQ25289 submitted to Windows WinFWUpg v6.0.19. CQ25289: WinFWUpg: System locks up during bootcode upgrade using lnxfwupg on 5700. Cause: The code was incorrectly trying to read the flash config register on 5700 & 5701 devices. Change: Rolled over the applicable fixes from Windows WinFWUpg v6.0.19. It checks to see if flash is supported before trying to read the flash config register. Impact: All. 6. Problem: CQ25337 lnxfwupg asking for "BMAPI 6.180388626435.24 or later". Cause: This output message was clobbered on 64-bit platform. Change: Corrected the output format for the message. Impact: Message text. 7. Problem: CQ25363 lnxfwupg does not check for current tg3 driver as minimum version. Cause: The checking was missing in some paths. Change: Checked the required driver version in all paths. Impact: The tool should require tg3 driver version >= 3.58. Version 1.0.3 (June 12, 2006) -------------------------------- Enhancements: ============= 1. Request: CQ13580, CQ25205 Request field FW upgrade utility with -all option. Change: Rolled over applicable changes for CQ22863 from WinFWUpg v6.0.17. Impact: upgrade/restorenvram commands. 2. Request: Request to have Firmware Upgrade Utility to only work on devices that it supports. Change: Rolled over applicable changes for 24073 from WinFWUpg v6.0.17. Impact: All Fixes: ============= 1. Problem: To roll over applicable fixes for the following CQs submitted to Windows WinFWUpg. CQ25026: WinFWUpg: able to upload Teton MBA/PXE to Legacy cards. CQ25092: WinFWUpg: incorrect checksum/nvram image when saving image for 5786. Cause: CQ25026: The code didn't validate against the default device id contained in the firmware image file. CQ25092: The flash type detection logic was not fully propagated properly in all the relevant places. This logic was missing when we do in-memory crc check on the dump that we are about to restore. Change: Rolled over the applicable fixes from Windows WinFWUpg v6.0.17 and v6.0.18. Impact: All 2. Problem: CQ25183 User is able to downgrade boot code without being warned. Cause: The code did not have the support for the requested logic. Change: Rolled over applicable fixes for CQ25028 from WinFWUpg Impact: All 3. Problem: CQ24859 Version command from the command line causes "initialization failure". Cause: Internal error handling. Change: Re-worked the error handling to return "Can not identify adapter from specified parameter <%s>". Impact: Command line interface. 4. Problem: CQ25222 Failed to upgrade boot code on 5703 copper with error showing "Device ID from image file does not match NIC". Cause: In previous version, the code was setup to do a strict device id matching against the firmware file we are about to upgrade to. Change: Rolled over applicable fixes for CQ24976 from WinFWUpg. Impact: All 5. Problem: CQ24718 Message incorrectly indicates "driver is not loaded". Cause: This message only applies to Windows but not Linux. Change: Report "Interface is not up!" instead. Impact: Message text. 6. Problem: CQ25128 Logging option does not capture console out on 64-bit systems. Cause: This is caused by a known problem in the glic library function vsprintf() on 64-bit systems. Change: Document it in "Known Limitations" in Readme.txt with instructions to capture a screen log. Impact: Readme.txt. 7. Problem: CQ25139 tg3 driver sub-revision not reported. Cause: Previous release did not report sub-revision. Change: Report sub-revision as requested. Impact: Sub-revision for tg3 should be reported. 8. Problem: CQ25181 Link to /opt/powerpc64/lib64/ld64.so.1 is missing on a Redhat 4.0 ppc64 system. Cause: The system does not have /opt/powerpc64 installed. Change: Document it in "Known Limitations" in Readme.txt with instructions to resolve this. Impact: Readme.txt. 9. Problem: CQ25219 Help command shows support for iSCSI boot. Cause: Help text was not updated. Change: Remove iSCSI boot support from the help text. Impact: Help text and Readme.txt. Version 1.0.2 (May 31, 2006) -------------------------------- - Initial release of lnxfwupg for ppc64. This tool is to provide firmware upgrade capability for all supported NetXtreme NICs for ppc64. - Need bmapilnx version 6.3.24 or above. - Need tg3 version 1.3.58 or above. - Document Readme.txt to include sections for 1. Introduction 2. Requirements 3. Installation 4. Command Usage 5. Exit Codes 6. Known Limitations Notes: 1. On ppc64 platform, the 'upgrade' command only supports '-bc' option for bootcode and '-ipmi' option for ipmi image. 2. '-all' option is not available in this release. Version 1.0.1 (May 19, 2006) -------------------------------- - Initial release of lnxfwupg for x86 and x86_64. This tool is to provide firmware upgrade capability for all supported NetXtreme NICs including 5754, 5755, and 5787. - Need bmapilnx version 6.3.23 or above. - Need tg3 version 1.3.57 or above. - Document Readme.txt to include sections for 1. Introduction 2. Requirements 3. Installation 4. Command Usage 5. Exit Codes 6. Known Limitations