Release Notes Broadcom NetXtreme II SCO UnixWare 7 / OpenServer 6 driver Broadcom Corporation 16215 Alton Parkway Irvine, CA 92619-7013 Copyright (c) 2006 Broadcom Corporation All rights reserved v2.8.5 (July 06, 2006) ========================== Fixes: ------------- 1) Problem : (CQ25724) Memory address reported by the resmgr and the driver does not match the PCI BAR 0 register. Cause : The driver was coded to report the virtual memory address, not the physical memory address. Change : Report the physical memory address instead. Impact : None. v2.8.4 (June 30, 2006) ========================== Fixes: ------------- 1) Problem : (CQ25592) Configuring more than two devices into the system causes netcfg to wait indefinately. Cause : The driver was blocked at the system call which requests the memory map of the device's registers. The system reserves a predetermined amount of memory address space to be used for memory mapping. Because the default memory window size of NetXtremeII devices is 32MB, this reserved memory address space was being exhausted. Change : Most of the registers available on NetXtremeII devices are used to support higher layer services. This device driver does not need them. The driver was changed so that it only mapped a small subset of registers. Impact : The driver's memory map requirements have been significantly reduced. 2) Problem : (CQ25568) Installing the driver yeilds makewhatis warnings. Cause : The postinstall script was attempting to inject the driver's manpage into the whatis database by providing the full path to the bnx2 man page to the makewhatis utility. The makewhatis utility does not work this way. Change : Change the argument to makewhatis to be the directory the new man page was installed in. The utility figures everything else out on its own. Impact : The makewhatis warning disappears. 3) Problem : (CQ25645) The driver does not update the CM_MEMADDR resource manager variable. Cause : It the time the driver was written, it wasn't clear whether the driver or the system was responsible for updating that parameter. The driver does not use this parameter, so code to modify it was omitted. Change : Add code to modify the CM_MEMADDR parameter. If the parameter cannot be modified, the driver will issue a warning, but will not fail to initialize. Impact : The resource manager's CM_MEMADDR parameter will now reflect the memory mapped address range the driver uses. Enhancements: ------------- 1) Change : Changed all resource allocation routines so that they will fail rather than waiting indefinately. Added code to support the new failure paths. Impact : CQ25592 has shown us that waiting indefinately for system resources is a bad idea. This enhancement gives the administrator the ability to fix the problem by failing the configuration attempt and returning the system back to a stable state. v2.8.3 (June 26, 2006) ========================== Fixes: ------------- 1) Problem : (CQ25511) Driver crashes during constrained TX conditions. Cause : TX queuing data structures were not properly protected. The transmit thread was contending with the transmit completion thread for the right to modify the queue that tracks the packets that are awaiting transmission. Change : Add mutex locks around the data structure to ensure integrity. Impact : None. 2) Problem : (CQ25542) NIC firmware does not have the ability to turn off the link on driver unload. Cause : Firmware is not given enough information when it is informed the driver is releasing the hardware to it. Change : Add a new driver / firmware handshake that informs the firmware that it is O.K. to turn the link off. Impact : None. v2.8.2 (June 14, 2006) ========================== Enhancements: ------------- 1) Change : Added stronger branding for the following HP products : NC370F, NC370i, NC370T, NC371i, NC373F, NC373i, NC373m, NC373T, NC374m, NC380T Impact : None. v2.8.1 (May 25, 2006) ========================== Fixes: ------------- 1) Problem : MDI subsystem is not notified when the device has been "resumed". Cause : Code omission. Change : Add code to notify the MDI subsystem when the device is resumed. Impact : None. 2) Problem : Driver continues initialization even when there has been an error in device initialization. Cause : Driver failed to check the return code of the device initialization routines. Change : Add code to check device initialization routine return codes and react appropriately. Impact : None. 3) Problem : Driver leaks memory. Cause : Driver fails to free its own device structure allocation before returning to the system. Change : Add code to free device memory. Impact : None. 4) Problem : Packets whose length is less than the tx double copy threshold could potentially be corrupted or cause a system crash. Cause : Double copy buffer allocation routines miscalculated buffer size alignment adjustments. This caused the driver to severely undersize the resulting buffers. Corruption occurs if two undersize packets arrive at the driver back-to-back. A crash could happen if the transmit packet descriptor is one of the later ones allocated. Change : Correct the size alignment calculations. Impact : None. 5) Problem : (CQ24595) Device stops passing traffic after the cable is unplugged and then replaced. Cause : The driver was writing the heartbeat pulses to the wrong shared memory location. The bootcode firmware was pronouncing the host operating system as crashed. When a link event occurred, the driver and firmware would content for access to the PHY. This in turn caused a sanity check to fail in the driver, causing the link-up not to be acknowledged, which in turn foils packet transmission attempts. Change : Write the heartbeat pulse to the correct shared memory location. Impact : None. 6) Problem : (CQ24890) On some systems, the link between the driver and the operating system appears to be severed after a reboot. Cause : During autonegotiation, the link can go up and down several times before stabilizing. The driver makes an effort to smooth out the link events and only report the end result. Eventually, the driver will determine that it waited long enough and issue whatever the current link speed is. If the initial message is a link down state, it will short-circuit the system's discovery and initialization of the device. This, for all practical purposes, severs communication with the driver. Change : Refrain from recording a link down state if the driver detects the device has just been initialized. A true link down state will be reported if the link is not acquired within worst case autonegotiation limits. Impact : None. 7) Problem : (CQ24633) If the adapter goes idle after periods of heavy network traffic, the same behavior as CQ24890 is observed. Cause : During periods of congestion, where the driver cannot handle the volume of traffic being issued to it, the driver will queue packets for later transmittion using operating system facilities. The driver failed to revisit the queue when the congestion conditions cleared though. The operating system would check the queue, find that the queued packets were not being drained and reset the adapter. From then on the same conditions that presented CQ24890 came into play. Change : Implement routines in the driver to revisit the queue when hardware resources became available. Impact : None. Enhancements: ------------- 1) Problem : Driver's wait routine exaggerates wait time. Change : Reduce wait delays to near requested times. Impact : Slight performance increase. v2.8.0 (March 24, 2006) ========================== 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.