Release Notes
=============

         Broadcom NetXtreme II Gigabit Ethernet End User Diagnostic Tool
                           For DOS/UEFI

              Copyright (c) 2001-2014 Broadcom Corporation
                          All rights reserved.

History
=======
version 7.10.2 (February 26, 2014)
    1. Updated copyright year in the banner (CQ73121).

version 7.10.0 (February 17, 2014)
    1. Released to match xdiag version.

version 7.8.1 (January 22, 2013)
    1. Updated copyright year on the banner.

version 7.8.0 (November 14, 2012)
    1. Support deletion of standalone CCM binary if MBA with built-in
       CCM is programmed (CQ#66068).

version 7.2.50 (April 05, 2012)
    1. Device is not recognized when it's inserted in slot2 of the 
       OEM system (CQ#61855) [uefi_uxdiag]
    2. Added nictest test case C21 for boot code state test (CQ#60970)
       [uxdiag].

version 7.2.0 (January 30, 2012)
    1. MBA upgrade fails on some old MBA/CLP image from v1.1.3 to v1.3.5
       due to these images don't have the "indicator" field set correctly.
       Work around it by checking the over all length of the image
       (CQ#60061) [uxdiag, uefi_uxdiag].
    2. Remove iSCSI boot config program image when upgrading iSCSI boot
       image to 7.0 or above (CQ#60116) [uxdiag, uefi_uxdiag].
    3. Some UEFI systems may hit an assertion on "'tmp != NULL' failed:
       file sys\open.c". The EFI BIOS require EFI diag to be compiled 
       with the tool kit that has MAX_ENVRIONMENT_DATA size extended to 
       64k. Just need to recompile libc.lib and link with the diag
       (CQ#59786) [uefi_uxdiag].

version 6.4.0 (April 8, 2011)
    1. Fixed FW Family Version display for specific OEMs (CQ#54467) 
       [uxdiag, uefi_uxdiag].

version 6.2.0 (November 24, 2010)
    1. Fixed license checking when certain preboot feature is enabled
       in some OEM blade server designs (CQ#50415) [uxdiag, uefi_uxdiag].

version 6.0.2 (July 26, 2010)
    1. Added support to display Family Version of FW for specific 
       OEMs (CQ#46453) [[uxdiag, uefi_uxdiag]

version 6.0.0 (May 06, 2010)
    1. Added -mbabr to config MBA boot retry count (CQ#45304) [uxdiag,
       uefi_uxdiag].
    2. Added one command line option for 5708, 5709/5716 per OEM request
       (CQ#47220) [uxdiag, uefi_uxdiag].
    3. Added support for UEFI 64-bit addressing (CQ#44959) [uefi_uxdiag].

version 5.2.2 (October 15, 2009)
    1. Added @filename.txt option to parse command line options from the 
       file (CQ#43887) [uxdiag, uefi_uxdiag].

version 5.2.0 (August 17, 2009)
    1. Fixed a potential problem of mis-identifying devices when running
       nictest across multiple devices (CQ#37760) [uxdiag, uefi_uxdiag].
    2. Preserve the original value of an internal state variable 
       (::sys(BATCH)) at the end of each of the nictest. Should have no
       functional impact [uxdiag, uefi_uxdiag].
    3. Update the device ID of the UEFI driver as the overall MBA image
       is programmed (CQ#42602) [uxdiag, uefi_uxdiag].
    4. Changed c05 test to flip none sc bits only (CQ#33933) [xdiag, 
       lx_diag, lx_diag_ppc64, uefi_xdiag].

version 5.0.5 (June 29, 2009)
    1. Fixed system lock up problem after pressing Ctrl-C (CQ#42194)
       [uxdiag].

version 5.0.4 (June 10, 2009)
    1. Fixed system lock up problem after pressing Ctrl-break (CQ#41597)
       [uxdiag].
    2. Fixed ipv6 flag being set wrongly in v.2 cfg blk during nvm 
       upgrade of iscsi driver if there is no pre-existing cfg blk in 
       nvram [uxdiag, uefi_uxdiag].

version 5.0.3 (May 21, 2009)
    1. When upgrading iSCSI configuration block from version 1
       to version 2, if iSCSI combo IPV4/V6 driver is installed,
       skip converting configuration block from IPV4 format to
       IPV6 format [uxdiag, uefi_uxdiag].
    2. When user hits CTRL-C to abort, xdiag exits with
       ERR_USER_ABORT(71) error code (CQ#40947) [uxdiag, uefi_uxdiag].
    3. Only upgrade iSCSI configuration block 2 to dual-port devices
       [uxdiag, uefi_uxdiag].
    4. Preserve backup MAC address fields when programming NVRAM image
       (CQ#41293) [uxdiag, uefi_uxdiag].


version 5.0.2 (April 24, 2009)
    1. Added logic to convert iSCSI configuration block
       between version 1, version 2, IPV4, and IPV6 format
       during upgrade [uxdiag, uefi_uxdiag].
    2. Added a command line option "fib_ipv6" to install ipv6
       iSCSI driver [uxdiag, uefi_uxdiag].
    3. Added a command line option "fib_ipv4n6" to install iSCSI 
       combo ipv4 and ipv6 driver [uxdiag, uefi_uxdiag].
    4. Fixed external loopback test intermittent failure and 1G
       external loopback test sometimes runs with a wrong speed 
       of 100M (CQ#40444) [uxdiag, uefi_uxdiag].


version 5.0.1 (April 02, 2009)
    1. Fixed memory leak problem in Context caching test (C12).
       [uxdiag, uefi_uxdiag]
    2. Added "-fib_ipv6" option to support programming IPV6
       iSCSI driver and iSCSI configuration file (CQ#40144). 
       [uxdiag, uefi_uxdiag]
    3. NCSI firmware with version below 1.0.7 has 2 portions,
       namely NCSI_CMN and NCSI_XLIB. When upgrading NCSI
       firmware from version below 1.0.7 to version 1.0.7 and
       above, there is only 1 image, NCSI (CQ#40077). [uxdiag,
       uefi_uxdiag] 
    4. Added segment on top of bus, device, function for PCI
       scan. [uefi_uxdiag]


version 5.0.0 (March 16, 2009)
    1. Changed the copyright to 2009 (CQ#39340). [uxdiag, uefi_uxdiag]
    2. Added support for new NCSI image format. [uxdiag, uefi_uxdiag]
    3. Fixed an intermittent false failure on reset test (C7) reported
       by OEM manufacturing (CQ#39866). [uxdiag, uefi_uxdiag]
    4. Fixed a false memory test failure (B23) on MCP egress FIFO when 
       the device is connected to an active BMC (CQ#39883). [ uxdiag,
       uefi_uxdiag]
    
version 4.6.9 (January 23, 2009)(based on xdiag 4.6.9)
    1. Fixed stat test (D5) script to allow MCP to run so it can apply 
       TDMA workaround for 5709 (DOS only, CQ#39185).

version 4.6.7 (December 19, 2008)(based on xdiag 4.6.7)
    1. Prevent users from enabling WOL if VAUX is not set (CQ#38896). 
    2. Fixed unhandled interrupts while running HCSB (C15) test (DOS
       only, CQ#38845).
    3. Fixed loopback test failures when PCIE Gen2 is enabled 
       (CQ#38816).

version 4.6.6 (November 25, 2008)(based on xdiag 4.6.6)
    1. Added 5716S support.

version 4.6.5 (November 11, 2008)(based on xdiag 4.6.5)(For release T4.6)
    1. Fixed external loopback test running at incorrect speed (CQ#38350).
    
version 4.6.4 (October 29, 2008) (based on xdiag 4.6.4)
    1. Prevent users from enabling WOL on serdes NIC (CQ#37836).

version 4.6.3 (October 16, 2008) (based on xdiag 4.6.3)
    1. Corrected the field length value for "RV" in VPD (CQ#37794).
    2. Show progress status when programming NVRAM (CQ#37767).
    3. Disabled WOL enable on 5706s, 5708s, 5709s (CQ#37836).
    4. Fixed Xdiag register test failure (CQ#37902).

version 4.6.0 (August 20, 2008) (based on xdiag 4.6.0)
    1. Added command line option to change smbus address (CQ#35112).
    2. Fixed the 5708 IPMI firmware v1.05 downgrade prevention 
       (CQ#36750).
    3. Addressed C5 test failure on certain setup (CQ#35067).

version 4.4.4 (May 1, 2008) (based on xdiag 4.4.4)
    1. Fixed incorrect display of WOL on port 2 when it's disable 
       after running nictest on 5709 C0 (CQ#35016).

version 4.4.3 (April 07, 2008) (based on xdiag 4.4.3)
    1. Fixed 5709 C0 A1 test (CQ#34530).
    2. Fixed 5709 C14 test failure that was caused by FW, xdiag RSS
       implementation mismatch.
    3. Added a workaround to eliminate reboot problems on some blade
       server designs upon exiting.

version 4.4.2 (March 20, 2008) (based on xdiag 4.4.2)
    1. Fixed an intermittent PHY loopback test failure due to an 
       incorrect determination of medium type (copper vs. serdes)
       on the OTP'd 5709C parts.
    2. Fixed A5 failure on Xinan (CQ#33463).
    3. Implemented ump external loopback. Added ump mac loopback (D7)
       and ump external loopback (D8) to nictest. D8 is disabled by
       default (CQ#33491). 
    4. Eliminated the inadvertent write to the flash interface, causing
       a failure in loading IPMI FW on one 5708 design, upon xdiag exit
       (CQ#32618).
    5. Fixed a system reboot problem upon exit with IPMI enabled on one 
       OEM design (CQ#32618).
    6. Fixed 5709 B1 C11 failure (CQ#32796).
    7. Addressed 5709 B1 D7 failure (CQ#33756).
    8. Fixed 5709 B1 C5 test hang (CQ#33766).
    9. Fixed xdiag C5 issue on 5709 NIC in a vendor's system which 
       caused reboot (CQ#33796).
    10.Added 5716 support.


version 4.0.1 (December 11, 2007) (based on xdiag 4.0.1)
    1. Replaced all chip codename references with their corresponding
       chip numbers.

version 4.0.0 (November 15, 2007) (based on xdiag 4.0.0)
    1. Fixed ODI driver failed to load after running xdiag and hitting
       Ctrl-C (CQ#32113). Captured Ctrl-C and added BreakHandler.  The 
       handler will reset all NX2 chips.
    2. Restored management f/w data region in shared memory if needed
       by BreakHandler when Ctrl-C is hit.
    3. In A5 test(msitest), mcp is halted after driver loads before
       test starts.
       
version 3.7.6 (October 24, 2007) (based on xdiag 3.7.6)
    1. Fixed a device disppearing issue after running an error in 
       upgrading firmware using command line interface (CQ#32003).

version 3.7.5 (October 18, 2007)
    1. Fixed IPMI failed to ping after running xdiag on secondary
       port of 5709 (CQ#31907).
    2. Fixed 5708 msi test (A5) intermittent failure on a vendor's
       system.

version 3.7.2 (October 02, 2007) (based on xdiag 3.7.2)
    1. Checked IPMI f/w before storing onto NVRAM to prevent loading
       5709 IPMI f/w onto 5708 device (CQ#31600)

version 3.7.1 (September 26, 2007) (based on xdiag 3.7.1)
    1. Fixed IPMI f/w installation failure on 5708 Serdes.
    2. If there is no proper f/w header, f/w or bootcode upgrade for
       5709 will fail.
    3. Added support for 5709 remote phy.
    4. Fixed 5709 LED mode not set properly when doing layer 2 tests.

version 3.7.0 (September 18, 2007) (based on xdiag 3.7.0)
    1. Added test items #13 - #21 in group C test. The new test items
       are disabled by default.
    2. Disabled interrupt message from pcie command register before 
       starting msix test.
    3. Checked UMP f/w before storing onto NVRAM to prevent loading
       5709 UMP f/w onto 5708 device (CQ#31269).
    4. Checked proper IPMI f/w before storing onto NVRAM to prevent 
       loading UMP f/w as IPMI f/w (CQ#31293).
    5. Checked proper iSCSI f/w before storing onto NVRAM to prevent 
       loading MBA f/w as iSCSI f/w (CQ#31285).
    6. Stopped management f/w on both ports of 5709 when reset is 
       called with nomfw option(CQ#31374).

version 3.5.7 (September 7, 2007)
    1. Set Serdes into proper mode after running nictest (CQ#31287).

version 3.5.6 (August 30, 2007) (based on xdiag 3.5.6)
    1. Enabled -fnvm, -idmatch and -pwd in uxdiag (CQ#29753).
    2. Added NCSI firmware upgrade support.
    3. Disabled interrupt message from pcie command register before 
       starting msi test.

version 3.5.5 (July 26, 2007) (based on xdiag 3.5.5)
    1. Fixed context test (C12) intermittent failure for 5709
       (CQ#30344).

version 3.5.0 (June 25, 2007) (based on xdiag 3.5.3+)
    1. Fixed logging information loss when system hangs during test
       (CQ#29635).
    2. Fixed 5709 C4 test failure (CQ#30192).
    3. Fixed some registry variable entries to prevent from exceeding
       array limit.
    4. Skipped all UMP related registers in MCP when doing C5 test
       (CQ#29839).
    5. Fixed 5709 Serdes loopback failure.
    6. Fixed 5708 MAC/PHY loopback failure in a remote phy setup
       when link is present (CQ#29824).
    7. Skipped SPIO test in FIO Events Test (C11) when Vaux is not
       present for 5709 (CQ#29906).
    8. Write mfw override value at proper shared memory location for 
       5708 and 5709 if nomfw is passed in reset06.
    9. Fixed 5709 revision A DMA write causing data corruption when
       running C8 test (DMA Engine Test) (CQ#29672).
    10. For 5709, BOND_ID takes precedence when checking for each port's
        medium type.
    11. Fixed regtest rdf error for 5709 A1.
    12. Built with the correct version of rv2p firmware for 5709.
    13. Added remote phy support in all traffic tests.
    14. Reduced test time for 5709 CAM Access Test (C3).

version 3.4.1 (May 2, 2007) (based on xdiag 3.4.5)
    1. Fixed memory corruption problem (CQ#28232).
    2. Fixed test speed problem of external loopback.
    3. Fixed D3 external loopback problem (CQ#28227).
    4. Fixed environment dependent issues between ASIC, FPGA, and IKOS when
       running tests on different environment.
    5. Fixed l2test case (51) to use proper spad offset between Tcl and 
       tpat firmware.  Also fixed l2 test case (48).  Skipped RPC path for
       5709 A0.
    6. In C11 test, Tcl informs test firmware which function it is running
       on (CQ#28239).
    7. Fixed the reset test test failure (C07 in nictest) (CQ#28290). 
       The logic check on the CPU status is fixed to make the overall
       checking more robust. Prior results from this test are still valid.
    8. Fixed intermittent Register test failure (CQ#28236).
    9. Changed the external loop back test to run on all media and speed 
       but function1 1G copper.
   10. Fixed 5709 serdes external loopback setting to wrong speed problem.

version 3.4.0 (January 18, 2007) (based on xdiag 3.4.0)
    1. Supports 5709.
    2. Removed the TCL debug information when D3 test failed (CQ#27363).

version 1.3.1 (November 10, 2006) (based on xdiag 1.6.2)
    1. Fixed support for mbas, mbap, mbav, and mbavval options.
    2. Fixed a memory corruption problem at restoring ipmi communication
       when no diagnostic test has been run.
    3. Added MSI-X test for 5709.

version 1.3.0 (November 2, 2006) (based on xdiag 1.6.1)
    1. Integrated code to support 5709.
    2. Fixed 5708 fiber failing D4 test on an OEM platform (CQ#26946).
    3. Fixed ipmi communication problem after running diagnostic
       tests (CQ#26717).

version 1.2.1 (August 31, 2006) (based on xdiag 1.5.2)
    1. Added command line option -fibc to program iSCSI configuration block
       and -fibp to program iSCSI configuration software (CQ#26573).

version 1.2.0 (August 13, 2006) (based on xdiag 1.5.0)
    1. Fixed an firmware upgrade problem where it is partially done due 
       to flash size limitation. The fix prevents any partial upgrade 
       (CQ#25872, 25995, 26002).
    2. Added command line support to configure MBA parameters such as
       the MBA link speed (CQ#25924).
    3. Fixed an intermittent crashing/failure when running external
       loopback test using a slave device (CQ#26111).
    4. Added description of replacing "-pxe" with "-mba" in help/usage
       display (CQ#24038).

version 1.0.9 (June 27, 2006) (based on xdiag 1.4.4)
    1. Fixed a problem of failing to upgrade OEM iSCSI boot stub
       (CQ#25476).

version 1.0.8 (June 15, 2006) (based on xdiag 1.4.3+)
    1. Fixed an intermittent external loopback (D03) test failure with 
       a slave device serving as a loopback terminator only on the 
       first iteration (CQ#25073). The fix gives the link some time to 
       settle before sending test traffic. This is the same fix made in 
       a branched version 1.3.6.
    2. Fixed the warning message of env(PATH) being absent when $path 
       is not defined in DOS, second attempt (CQ#24035).
    3. Added enhancement to prevent invalid images from being 
       programmed into the device (e.g. prevent an MBA image programmed 
       as boot code).
    4. Fixed the inability to execute register test (A01) for 5708 B2
       (CQ#25324).
    5. Fixed the netlink test (A07) failure when invoked alone from the
       DOS prompt (CQ#25295).

version 1.0.7 (May 1, 2006)
    1. Fixed RBUF memory test problem. A chanage in v1.0.6 failed to
       override the loading of management firmware. As a result, EMAC
       block became active and delivered received traffic to the RBUF,
       causing the memory test failure (CQ#24527).

version 1.0.6 (April 20, 2006)
    1. Fixed a lockup after downgrading boot code (from v1.8.0 to 
       v1.7.7) followed by a reset command (CQ#24392).

version 1.0.5 (April 13, 2006)
    1. Fixed the inability to enforce the "-cof" option when license
       check fails (CQ#23695).
    2. Fixed a device display information problem (not show boot code 
       version and other config info properly) when shared memory 
       location is changed (CQ#24377).
    3. When the last NetXtreme II device interrupt handler for a certain 
       IRQ# detaches, it restores the original PIC mask bit value for 
       that IRQ#.
    4. Placed the DOS reentrant guard flag only on displaying nictest
       suite activity (blinking of the dots) to fix some DOS reentrant
       problem.
    5. Eliminated the warning message of env(PATH) being absent when
       $path is not defined in DOS (CQ#24035).
    6. Fixed the boot code failure to load IPMI firmware on some LOMs.
       It was due to xdiag script resetting the flash block while the
       boot code was fetching IPMI firmware.
    7. Fixed an intermittent FIO register test (C05) failure due to a 
       timing problem (CQ#24235,24298).

version 1.0.4 (February 13, 2006)
    1. Fixed a problem where programming WOL using "-wol" command line 
       switch does not work with devices other than the first one
       (CQ#23227).
    2. Fixed a loopback test (D1,D2,D4) lockup problem. The hang was due 
       to DOS re-entrancy. It is now prevented with a more proper method 
       by synchronizing between the yield handler and nictest function
       (CQ#23127).
    3. Fixed a NVM test (C06) failure while BMC is communicating with UMP
       firmware. The fix is to skip loading UMP firmware on reset during
       the test (CQ#23036).

version 1.0.3 (January 20, 2006)
    1. Skipped version check if image did not exist in NVRAM. (CQ#22414)
    2. Added boot code image type check, preventing incorrect boot code
       from being programmed when the device and medium types do not 
       match (CQ#22612).
    3. Fixed a problem of repeating firmware/MBA upgrades and
       configuration changes when multiple test iterations are performed
       (e.g. "-I 2").
    4. Allow logging of device information when "-log" command line 
       option is provided (CQ#22349).
    5. Support a combined iSCSI boot image that includes configuration
       information and configuration software.
    6. Fixed an issue with extra characters being logged while upgrading
       firmware.

version 1.0.2 (December 9, 2005)
   1. Added image version checking of new version and version in NVRAM when
      upgrading firmware images. If new version is same or older than NVRAM 
      version, upgrade will be aborted.
   2. Added -F option to force image upgrade without version checking when
      upgrading firmware images.
   3. Fixed a flash (from a particular vendor) size determination 
      algorithm that failed to return a correct size.
   4. Implemented the netlink test (A07) for copper PHY (CQ#TO00000911).
   5. Statistic test (D5) fails on an OEM platform because the driver 
      detects for link change even in loopback mode. This caused the
      PHY access collision between the driver and the test script. The
      fix is to have the test script wait for link to be stable.
   6. Fixed the -fump option that fails to program the UMP firmware image.

version 1.0.1 (November 15, 2005)
    Fixed -cof option.

version 1.0.0 (November 11, 2005)
    Initial release
