Release Notes
Broadcom BCM5700 SCO Unixware 7/Caldera Open Unix 8 driver
Broadcom Corporation
16215 Alton Parkway,
Irvine, CA 92619-7013
Copyright (c) 2000-2006 Broadcom Corporation
All rights reserved
v9.0.4 (February 28, 2006)
=============================
Enhancements:
-------------
1) Change : Remove support for BCM5755.
Impact : None.
v9.0.3 (January 19, 2006)
=============================
Fixes:
-------------
1) Problem : (CQ22582) Link messages flood the console when
5714S and 5715S devices are configured
back-to-back.
Cause : Code which was meant to ensure link stability
was not being executed.
Change : Enable the link stability code.
Impact : None.
v9.0.2 (January 16, 2006)
=============================
Fixes:
-------------
1) Problem : (CQ14603) Driver reports link down messages
when failover device is activated.
Cause : When the driver evaluates the PHY's configuration
settings, it reports a mismatch if there is one.
This state was improperly being stored in the
link status tracking field, instead of the more
generic "link down" state.
Change : If the link is not up, store a "link down" state
to the link status tracking field.
Impact : None.
v9.0.1 (January 12, 2006)
=============================
Fixes:
-------------
1) Problem : (CQ22582) Link messages flood the console when
5714S and 5715S devices are configured
back-to-back.
Cause : The driver contains code which resets the PHY
when the device acquires link. This code was
incorrectly being applied to 5714S and 5715S
devices.
Change : Only reset the PHY on 5703, 5704, and 5705
PHYs when link is acquired.
Impact : None.
2) Problem : The driver intermittently fails to track and
notate the true link status of 5714S and 5715S
devices.
Cause : The use of the PHY_STATUS register to determine
the link status is unreliable.
Change : Use a MAC register to more competently determine
the link status.
Impact : None.
v9.0.0 (January 6, 2006)
============================
Fixes:
-------------
1) Problem : (Cont14603) Link down messages are showing during
failover when configured in team.
Cause : Recent link reporting changes introduced the bug.
Change : Assume link is down when device is opened.
Impact : None.
Enhancements:
-------------
1) Change : Added 5755 support.
Impact : None.
v8.3.6 (January 17, 2006)
=============================
Fixes:
-------------
1) Problem : (CQ22582) Link messages flood the console when
5714S and 5715S devices are configured
back-to-back.
Cause : Code which was meant to ensure link stability
was not being executed.
Change : Enable the link stability code.
Impact : None.
v8.3.5 (January 12, 2006)
=============================
Fixes:
-------------
1) Problem : (CQ22582) Link messages flood the console when
5714S and 5715S devices are configured
back-to-back.
Cause : The driver contains code which resets the PHY
when the device acquires link. This code was
incorrectly being applied to 5714S and 5715S
devices.
Change : Only reset the PHY on 5703, 5704, and 5705
PHYs when link is acquired.
Impact : None.
2) Problem : The driver intermittently fails to track and
notate the true link status of 5714S and 5715S
devices.
Cause : The use of the PHY_STATUS register to determine
the link status is unreliable.
Change : Use a MAC register to more competently determine
the link status.
Impact : None.
3) Problem : (Cont14603) Link down messages are showing during
failover when configured in team.
Cause : Recent link reporting changes introduced the bug.
Change : Assume link is down when device is opened.
Impact : None.
v8.3.4 (December 20, 2005)
=============================
Fixes:
-------------
1) Problem : Driver does not load on 5715S devices.
Cause : There are preprocessor definitions in the code
which selectively include or exclude support
for 5714S and 5715S devices. The preprocessor
condition was inverted such that these devices
were improperly being excluded from the build.
Change : Fix the preprocessor definition.
Impact : None.
v8.3.3 (December 15, 2005)
=============================
Enhancements:
-------------
1) Change : Added 5714S and 5715S support.
Impact : None.
v8.3.2 (October 21, 2005)
============================
Fixes:
-------------
1) Problem : Excessive link down messages output to the
console.
Cause : The fix for #1 below exposed another scenario
where the device is constantly being opened and
closed. In this case, the link state initializer
was incorrectly altering the variable the device
uses to track the link state.
Change : Correct the link state variable in the open
routine. Reliable link state tracking begins
when the device is CFG_ADDed into the system.
Impact : None.
2) Problem : Module fails to load due to a linker error.
Cause : Undefined symbol.
Change : Replace the code which uses the missing symbol
with a generic equivalent.
Impact : None.
v8.3.1 (October 17, 2005)
============================
Fixes:
-------------
1) Problem : (CQ13567) Link down messages are not displayed
immediately after adapter reset.
Cause : The reset code explicitly records the link
state as down without issuing a corresponding
message.
Change : Use another link state initializer in the reset
code. The PHY code will then see the state
mismatch and issue the appropriate link state
message.
Impact : None.
2) Problem : The PHY registers can become corrupted on all 5714S,
5715S, and 5780S devices.
Cause : The periodic link check code does not acquire the phy
lock before performing its task.
Change : Add phy lock acquisition and release code around
the link check function call.
Impact : 5714/5715/5780 fiber.
Enhancements:
-------------
1) Change : Removed 5903 support.
Impact : None.
2) Problem : Health monitoring software does not register link
restoration events.
Change : Add code to the driver to send a message to the
health monitor software when link is restored.
Impact : None.
3) Change : Added ECD13216 fix for SERDES crosstalk problem.
Impact : None.
4) Change : Removed 5714S and 5715S support.
Impact : None.
v8.3.0 (August 23, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ13636) Removing the driver package while a
device is configured causes the OS to lock the
driver directory and never free it.
Cause : The return code issued by the driver's preremove
script causes the systems behavior.
Change : Change the preremove script's return code from
one to four.
Impact : None.
2) Problem : (CQ13033) ASF "Alive" heartbeat constant has changed.
Cause : Programmatic inconsistencies in previous
implementation forced the redefinition.
Change : Change driver to use the new constant.
Impact : None.
3) Problem : (CQ13779) Poor performance on 5714 family devices.
Cause : DMA settings suboptimal in DmaReadWriteCtrl and
GrcLocalCtrl registers.
Change : Adjust DMA tuning bits in the DmaReadWriteCtrl
and GrcLocalCtrl registers.
Impact : None.
Enhancements:
-------------
1) Change : Add 5903F and 5903M support to the driver.
Impact : None.
v8.2.11 (August 10, 2005)
===========================
Fixes:
-------------
1) Problem : Driver fails SCO certification tests.
Cause : Driver symbol does not conform to
mandated symbol standards.
Change : Rename symbol.
Impact : None.
v8.2.10 (August 02, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ10476) Tx statistic counters incorrect.
Cause : Tx statistic counters are overflowing in
hardware.
Change : Reduce the statistic refresh interval.
Impact : None.
v8.2.9 (August 01, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ11321) 5700 fails to initialize.
Cause : The 5700 DmaTest() function was incorrectly
failing due to DMA timeout.
Change : Change the code to return a success on DMA
transation timeout. The data validation step
that follows will catch any DMA errors.
Impact : None.
2) Problem : (CQ13576) 5704S fails flow control test.
Cause : The 5704 code was using the flow control
definitions of a different register.
Change : Use correct flow control definitions.
Impact : None.
v8.2.8 (July 22, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ13461) 5701 fails to receive traffic when
configured to 10Mbps, half-duplex, link forced.
Cause : The 5701 requires that the driver commit each
direct register write by performing a dummy
read to that same register. The compiler was
optimizing the dummy read away, since the read
value was not being used.
Change : Force the compiler to keep the dummy read by
adding the "volatile" keyword to the destination
variable.
Impact : None.
v8.2.7 (July 20, 2005)
===========================
Enhancements:
-------------
1) Change : Remove 5714 and 5715 support from the driver.
Impact : None.
v8.2.6 (July 14, 2005)
===========================
Fixes:
-------------
1) Problem : Serdes 325i devices not recognized correctly.
Cause : The driver's device list incorrectly linked
HP's serdes 325i subsystem device ID to
Broadcom's copper device ID.
Change : Point HP's serdes 325i subsystem device ID to
the correct Broadcom device ID.
Impact : None.
v8.2.5 (July 08, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ13319) Flow control fails to work in "auto"
mode.
Cause : The new flow control code requires that the
link's duplex configuration be known. The
existing code failed to determine this.
Change : Determine the link's duplex setting before
setting up the flow control.
Impact : None.
2) Problem : (CQ12986) 5714 devices do not fall back to
forced link if PCS_SYNCED is detected.
Cause : Incorrect detection of PCS_SYNCED and
RECEIVING_CFGS states.
Change : Modified code to get these states from the
PHY.
Impact : None.
v8.2.4 (June 20, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ13161) Certification test fails after
performing the symbol checking stage.
Cause : This bug is another instance of CQ12922 for
OpenServer. When resetting the chip, the driver
never reclaimed the packet resources. When the
driver attempts to fill the buffer rings
afterwards, there are no available resources.
Change : Fix the ResetAdapter() logic to reclaim packet
resources before resetting the chip.
Impact : None.
2) Problem : (CQ12986) 5714 devices do not fall back to
forced link if PCS_SYNCED is detected.
Cause : Feature omission.
Change : Added force link fallback code.
Impact : None.
v8.2.3 (June 13, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ13078) Jumbo frame size option missing on
5714 / 5715 devices.
Cause : Missing configuration file option.
Change : Add the configuration file option.
Impact : None.
2) Problem : (CQ13057) Firmware version string missing
product name on 5714 devices.
Cause : The code that determines which version
string extraction method incorrectly
chooses the wrong method.
Change : Correct the method classification code to
include the 5714.
Impact : None.
3) Problem : (CQ13022) 5703B1S never gets link.
Cause : The firmware autonegotiation code was bouncing
the link due to invalid flow control
configuration.
Change : Correct the flow control configuration code.
Impact : None.
4) Problem : 5704S devices showing link up when link is
still being negotiated.
Cause : Code that forces link as a fallback does
not detect valid link up conditions strictly
enough.
Change : Only fallback to force link up if
autonegotiation is not in progress.
Impact : None.
v8.2.2 (May 6, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ12822) Flow control automation test fails.
Cause : The code, which classified what flow control
abilities the link partner was capable of, had
recently been rewritten. In the case of
unidirectional flow control, the new code
accidentally classified the link partner's
flow control capabilities to the wrong direction.
Change : Correct the misclassification.
Impact : None.
Enhancements:
-------------
1) Change : Added support for new HP NC32Xi products.
Impact : None.
v8.2.1 (April 27, 2005)
===========================
Enhancements:
-------------
1) Change : Added 5715X support into driver.
Impact : None.
v8.2.0 (April 22, 2005)
===========================
Enhancements:
-------------
1) Change : Added 5714X / 5780X support into driver.
Impact : None.
v8.1.8 (April 5, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ12586) PCIE devices lock-up.
Cause : Hardware posts infinite data credits during PCIE
posted transactions.
Change : Find all locations where the chipset might
consolidate PCIE transactions and force them to
be separate. Force setup code to read back all
register writes.
Impact : Minor performance impact on initialization.
v8.1.7 (March 31, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ12151) Link negotiation fails when 5751
LOM is connected back-to-back with another
device.
Cause : Driver was mistakenly forced to use the
MI interrupt mode.
Change : Correct the code so that it uses the
"link ready" mode.
Impact : None.
2) Problem : (CQ12158) Driver incorrectly limits the
number of receive rules available for the
5714 family of devices.
Cause : The code which sets the limit on the
number of receive rules incorrectly
categorized 5714 family devices.
Change : Correct the categorization code.
Impact : None.
3) Problem : (CQ12156) ATI transmit timeout -
"NETDEV WATCHDOG".
Cause : The ATI chipset did not call the driver ISR
after the ISR did not service an INTx interrupt.
Change : The driver will check a register to determine if
the INTx should be claimed if the status block has
not been updated on ISR entry.
Impact : This fix may improve system performance on some
systems as it reduces the amount of spurious or
unclaimed interrupts.
Enhancements:
=============
1) Problem : Jumbo frame support on some systems caused device
counters to increment CRC errors.
Change : Set TX elasticity bit in PHY when using jumbo
frames.
Impact : None.
2) Problem : 5714 device support needs to be removed for the
8.1b driver release.
Change : Removed 5714 family devices.
Impact : None.
v8.1.6 (March 24, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ12399) 5714 not detected.
Cause : Missing configuration file.
Change : Added configuration file.
Impact : None.
2) Problem : (CQ12486) ndstat -l reports strange link speeds.
Cause : Code that updates link speed incorrectly updated
the field that reports the new speed.
Change : Added code to update the link speed field.
Impact : None.
3) Problem : (CQ12370) Systems with more than one adapter
refuse to accept configuration changes.
Cause : Configuration settings were not revisited when
the device was reopened.
Change : Added code to obtain the configuration settings
every time the device is opened.
Impact : None.
Enhancements:
=============
1) Problem : Driver missing new HT-LE device IDs.
Change : Added missing device IDs.
Impact : None.
v8.1.5 (March 2, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ12303) Firmware version not displayed
for EEPROM devices.
Cause : Code failed to put EEPROM NVRAMs on newer
devices into the newer access mode.
Change : Ensure EEPROMS on newer devices are accessed
using the newer method.
Impact : Firmware version now displays correctly.
v8.1.4 (March 1, 2005)
===========================
Fixes:
-------------
1) Problem : Driver crashes.
Cause : Not enough memory allocated for device
structures.
Change : Fix code to allocate the appropriate
amount of memory.
Impact : None.
2) Problem : (CQ11893) ASF not supported.
Cause : Driver detects ASF and refuses to load.
Change : Add code to send ASF heartbeats.
Impact : Driver and ASF can now coexist.
v8.1.3 (March 1, 2005)
===========================
Fixes:
-------------
1) Problem : (CQ12160) Capacitive coupling and preserve
preemphasis settings may be set incorrectly.
Cause : NVRAM configuration bits were not validated
before being used.
Change : Validate configuration bits before use.
Impact : Configuration bits set as expected.
2) Problem : (CQ8960) ndstat does not show the correct link
speed.
Cause : Link speed is queried to soon on interface open.
The status is never revisited.
Change : With the use of a new primitive, the driver now
sends a message to the upper layers whenever a
link event happens.
Impact : ndstat shows correct link speed.
v8.1.2 (February 7, 2005)
===========================
Enhancements:
-------------
1) Change : Added support for jumbo frames for 5714X and
HT2000 devices.
Impact : None.
v8.1.1 (January 11, 2005)
===========================
Enhancements:
-------------
1) Change : Added support for 5714X and HT2000 devices.
Impact : None.
v8.1.0 (January 07, 2005)
===========================
Enhancements:
-------------
1) Change : Added support for 5752 devices.
Impact : None.
2) Change : Updated copyright strings.
Impact : None.
v7.7.7 (December 14, 2004)
===========================
Fixes:
-------------
1) Problem : (CQ11636) Device fails to get link when
connection is forced to 10Mbps.
Cause : Code which programs the LEDs programmed
the wrong shadow register.
Change : Changed code to program the correct
shadow register.
Impact : Device acquires link as expected.
v7.7.6 (December 2, 2004)
===========================
Enhancements:
-------------
1) Problem : (CQ11011) PLL clock unstable.
Change : Set some hardware bits to stabilize the clock.
Impact : Device works as expected.
v7.7.5 (November 29, 2004)
===========================
Fixes:
-------------
1) Problem : (CQ11448) 5704 LOM interfaces will not ping.
Cause : Peer device can hold NVRAM lock, which prevents
correct operation.
Change : Release NVRAM lock after reset.
Impact : Devices work as expected.
v7.7.4 (November 29, 2004)
===========================
Enhancements:
-------------
1) Change : Added support for more NVRAM types.
Impact : More NVRAM types supported.
v7.7.3 (November 9, 2004)
==========================
Fixes:
------
1) Problem : (CQ11088) Force the NC150T to autonegotiate
its linkspeed and duplex settings.
Cause : The 150T is a "LOM" connected to an onboard
switch. Any other settings will cause a link
failure.
Change : Detect the NC150T and prevent changes to
requested link speed / duplex and autoneg
settings.
Impact : The NC150T will autoneg or fail to link.
v7.7.2 (November 8, 2004)
==========================
Fixes:
------
1) Problem : (CQ11219) Driver freezes machine under stress.
Cause : Error in resource release code.
Change : Changed code so that previously erroneous test
will work.
Impact : All resources can be released properly. Driver
works as expected.
2) Problem : (CQ11270) Driver will not load on a BCM5700B2
Cause : BCM5700B2s do not have a valid EEPROM signature.
Change : Changed code to prevent an error return when
BCM5700 devices fail EEPROM signature check.
Impact : BCM5700 devices work once again.
3) Problem : Firmware version number not displayed on 5750
family of devices.
Cause : NVRAM on 5750 family devices requires the
"access enable" bit to be set before performing a
read.
Change : Set the access enable bit. Also averted an offset
calculation on 5753 devices.
Impact : Firmware version shod up on both devices.
Enhancements:
-------------
1) Change : Added firmware version to banner string.
Impact : It should be clearer which version of the
firmware is on the device.
2) Problem : (CQ#11117) Preemphasis settings, set by the
firmware, need to be preserved.
Change : Added code to preserve preemphasis settings
enabled by the bootcode, when requested.
Impact : Better waveforms on particular serdes
implementations.
v7.7.1 (October 25, 2004)
==========================
Fixes:
------
1) Problem : Machine crashes when doing UDP performance
testing.
Cause : Streams queues were being corrupted when
putbq() was being called incorrectly.
Change : Recoded the tx path to remove the violation.
Impact : Crashing condition removed.
2) Problem : 5753 series devices have a banner string
identifying the devices as "Unknown".
Cause : Omitted code to recognize the new devices.
Change : New defines.
Impact : New devices recognized.
3) Problem : Performance considerably slower on 5750
family of devices.
Cause : 5750 family devices need to be programmed
differently than other legacy devices.
Change : Added new code to program 5750 family devices
correctly.
Impact : Performance back up to par.
v7.7.0 (October 15, 2004)
==========================
Enhancements:
-------------
1) Change : Added support for 5753 series devices.
Impact : New devices supported.
2) Change : Backend (LM) code is now shared with UnixWare
and OpenServer.
Impact : Less maintenance overhead and speeds bugfix
and feature enhancement migration.
3) Change : Separated OpenServer and UnixWare frontends.
Impact : Enhanced platform flexibility at the expense
of a little maintenance overhead.
v7.5.16 (April 27, 2004)
=========================
Fixes:
------
1) Problem : ethernet@wirespeed does not work.
Cause : Support for this feature was removed
for higher reliability.
Change : Added a setting in the GUI to enable or
disable this feature. Added code to adjust
hwfail notification timeouts accordingly.
Impact : If desired, ethernet@wirespeed can be enabled.
It is recommended that e@w not be enabled if
the interface is to be configured in team.
v7.5.15 (April 24, 2004)
=========================
Fixes:
------
1) Problem : When a machine is filled with NICs, all of
which have their cables detached, most
of the interfaces will disappear from the
system.
Cause : Hardware failure notifications were issued
too soon after a configuration or boot.
When the system notices failures during this
"inspection period", it attempts to reset the
interface three times before removing it from
the system.
Change : The appropriate timeout varies depending on
the number of devices installed. The worst
case will cause delays to long to tolerate.
The workaround is to remove the sleep in the
open call.
Impact : The workaround closes the "inspection window"
down to a reasonable size. The only side
effects are that ethernet@wirespeed cannot work
and the link speed report can be false.
v7.5.14 (April 23, 2004)
=========================
Fixes:
------
1) Problem : If two interfaces are configured in team
and the primary cable is detached on bootup,
the system will no longer be able to
issue the command 'nd failback netX' and
expect the interface to work.
Cause : Upper layers apparently need more time to
set up a valid connection after reporting
the link speed.
Change : Delay for 14 seconds before sending a
hardware failure notification message.
Impact : Failovers will take a little longer to
work on bootup and during configuration.
There are no adverse effects during normal
operation.
2) Problem : (CQ9955) 5751M chips have not been tested.
Cause : No hardware available to test against.
Change : Remove 5751M support from driver.
Impact : 5751M chips will no longer be recognized
by this driver.
v7.5.13 (April 19, 2004)
=========================
Fixes:
------
1) Problem : Bit error rate too high in certain situations.
Cause : Corner cases causing bad hw interactions.
Change : Write several phy registers.
Impact : Corner cases correctly covered.
2) Problem : nd subsystem does not properly failback under
certain corner cases.
Cause : hwfail notification happens too soon after a
successful speed report.
Change : Issue a hwfail notification from a short
timeout.
Impact : Interface now fails back correctly.
v7.5.12 (April 16, 2004)
=========================
Fixes:
------
1) Problem : The data LED of the NIC flashes too quickly when
the NIC is configured for Shared Traffic LED mode.
Cause : Hardware bug.
Change : Manually program the PHY for this mode.
Impact : Shared Traffic mode data LED works as expected.
2) Problem : (CQ9878) Failover not functioning correctly.
Cause : To fix bug CQ9749 (see release 7.5.10 notes below)
we had to add a fake speed report. In a failover
situation, the fake speed report would be issued
after the hardware failure notification. The
upper layers seem to interpret this as a valid
link.
Change : Send the fake link speed first, followed by the
hardware failure notification.
Impact : Device fails over as expected. The device still
shows in 'ifconfig -a' output.
3) Problem : BCM5700 and BCM5701 NICs have high number of errors
with long cables.
Cause : These NICs cannot read the shadow registers, so they
must be blindly hard-coded. (no read-modify-write)
Change : Write hard-coded values into shadow registers if
these NICs are detected.
Impact : Errors subside with long cables.
v7.5.11 (April 6, 2004)
========================
Enhancements:
-------------
1) Problem : Product banner message unsupported.
Change : Add product banner message.
Impact : New banner messages.
v7.5.10 (April 1, 2004)
========================
Fixes:
------
1) Problem : (CQ9749) DLPI displays "Timeout error"
Cause : When an interface is configured without the
network cable being attached, the driver
was changed to report a zero (current)
maximum speed and send a link failure message
back up the stream stack. The upper layers
do not seem to like zero link speeds.
Change : Report a bogus link speed if the cable is
detatched.
Impact : 'ifconfig -a' once again shows our interface,
ethernet@wirespeed works, and the
"Timeout error" messages are gone.
Enhancements:
-------------
1) Problem : LEDs illuminated incorrectly.
Change : Moved LED configuration back under driver
control.
Impact : LEDs illuminate as they should for each
mode.
v7.5.9 (March 30, 2004)
========================
Fixes:
------
1) Problem : (CQ7836) Remote link LED does not illuminate on
some fiber switches when a device, configured
in team, has failed over, but has its network
cable reattached.
Cause : Devices are not fully closed during failover
conditions. Software autonegotiation does
not work, and link cannot be established.
Change : If available, let firmware do autonegotiation.
Impact : With firmware handling autonegotiation, the
link will correctly be established, even if
the device is not currently (re)opened.
2) Problem : (CQ7836) Management software cannot get the
status of the secondary controller when a
570X device is configured as a failover device.
Cause : The link is not yet established at the time of
the status query.
Change : Wait in the open() call until link is established.
Impact : The link is guaranteed to either be established or
known to be invalid at the time of a status query.
3) Problem : (CQ8742) ethernet@wirespeed does not work.
Cause : When a valid scenario where e@w can help, the link
can take a long time to establish. Under such
conditions, the OS times out before link has been
established and prematurely deems the device
unavailable.
Change : Wait in the open() call until link is established.
Impact : Waiting in the open() call give the device enough
time to allow e@w to work.
v7.5.8 (March 15, 2004)
========================
Fixes:
------
1) Problem : 5750 A1 devices hang on initialization.
Cause : PCIE "preserve data link" flag mistakenly
applied to standard PCI cases.
Change : Limit the PCIE fix to PCIE devices.
Impact : Device operates as suspected. PCIE devices
unaffected.
2) Problem : LEDs illuminate incorrectly.
Cause : Undetermined
Change : Starting with 575X and 572X NICs,
the driver lets the firmware
control how the LEDs are set.
Impact : Firmware LED fixes will be universal
to all drivers.
v7.5.7 (March 5, 2004)
=======================
Fixes:
------
1) Problem : 5750 family link LED does not illuminate to
the correct color in wireless combo mode.
Cause : Applied fix to wrong location.
Impact : LED modes should work as expected.
v7.5.6 (March 4, 2004)
=======================
Fixes:
------
1) Problem : 5750 family link LED does not illuminate to
the correct color in wireless combo mode.
Cause : Old LED mode bits need to be set to 1's
in order for new LED modes to be enabled.
Change : Set old LED bits to ones when a new
5750 family LED mode is selected.
Impact : LED modes should work as expected.
v7.5.5 (February 25, 2004)
===========================
Fixes:
------
1) Problem : 575X devices not displayed in netcfg.
Cause : Misnamed configuration file.
Change : Corrected configuration file name.
Impact : 575X devices will be recognized.
Enhancements
------------
1) Change : Set a register flag to facilitate PCIE
debugging, should a problem occur.
Impact : No impact to performance. Easier debugging.
v7.5.4 (February 23, 2004)
===========================
Fixes:
------
1) Problem : 5721 is displayed as 575X device.
Cause : All 5750 family device IDs were lumped into
one configuration file with one descriptive
string.
Change : Separate 572X devices into a separate
configuration file.
Impact : 572X devices will correctly be displayed as such.
2) Problem : Driver crashes on unload.
Cause : A race condition in the unload routine.
Change : The unload routine sets a flag to notify other
threads that the device is no longer accessible.
This flag was simply moved earlier in the unload
routine.
Impact : Race condition eliminated.
3) Problem : GetAdapterInfo locks up system.
Cause : PXE sometimes does not shutdown properly.
Change : Detect improper shutdown conditions and issue a
GRC reset.
Impact : Chips is reset to a known state, and initialization
can continue.
Enhancements
------------
1) Problem : Driver missing 575X and 572X A1 support.
Change : Added code for 5750A1 family devices.
Impact : 5750A1 family devices properly supported.
v7.5.3 (January 26, 2004)
===========================
Fixes:
------
1) Problem : Normal TCP and UDP traffic not seen when adapter
is put into promiscuous mode.
Cause : Internal receive flags were not being preserved
when promiscuous mode was enabled.
Change : Preserve receive flags.
Impact : All cards.
2) Problem : System hangs when loading the driver on a PCIE
system.
Cause : PCIE detection code incorrect, causing PCIE
specific codepaths not to be executed.
Change : Fix PCIE detection code.
Impact : All PCIE devices.
v7.5.2 (January 13, 2004)
===========================
Fixes:
------
1) Problem : 575X devices fail after GRC reset.
Change : Changed delay to 500 msec after GRC reset.
Impact : All 575X, and 572X cards.
2) Problem : Some register writes fail on 575X cards.
Change : Add register read back on PCIE systems.
Impact : All PCIE devices.
3) Problem : Some register writes fail on SMP systems.
Change : Make driver single threaded.
Impact : All PCIE devices.
4) Problem : No Link interrupts are delivered.
Change : Added code to poll for link interrupts.
Impact : All PCIE devices.
5) Problem : Asf fails after GRC reset.
Change : Moved KevT assignment to before GRC reset.
Impact : All cards.
Enhancements:
-------------
1) Problem : 575X cards missing new LED modes.
Change : Added new 5750 family LED modes.
Impact : All 575X, and 572X cards.
v7.5.1 (December 11, 2003)
===========================
Fixes:
------
1. Problem : Cardbus event register not accepting "INTERRUPT ENABLE"
bit.
Cause : Hardware bug.
Change : Changed the register write routine from a config space
write to a memory space write.
Impact : All 5750, 5750M, 5751, 5751M, 5720, and 5721 chips.
v7.5.0 (November 21, 2003)
===========================
Enhancements:
-------------
1. Problem : Driver needed 5750 family support.
Change : Integrated all 5750 family related changes.
Impact : All 5750, 5750M, 5751, 5751M, 5720, and 5721 chips.
v7.0.7 (October 23, 2003)
==========================
Fixes:
------
1. Problem : (CQ8673) When the 5701 is configured in team and is
not the active adapter, the driver logs too many
link messages.
Cause : Phy contention.
Change : Insert spinlocks to protect the phy.
Impact : All 5701 cards.
v7.0.6 (October 20, 2003)
==========================
Fixes:
------
1. Problem : Kernel intermittently panics on a
driver unconfigure.
Cause : Not all timeouts are accounted for
before driver memory is freed.
Change : Wait for all timeouts before
permitting a driver uninstall.
Impact : All cards.
v7.0.5 (October 17, 2003)
==========================
Fixes:
------
1. Problem : The Ethernet@WireSpeed fix, as well as
the "unable to get the status of the
secondary" fix is causing problems.
Cause : The fix for the previous issue was to
insert a sleep at the end of the open()
function until either a link has been
aquired or a timeout happens. This has
unexpected side effects.
Change : Back out the fix until all the
sie effects of the change can be
accounted for.
Impact : ndstat will report inaccurate link speed.
The status of a secondary controller
configured in team will not be determinable.
v7.0.4 (October 13, 2003)
==========================
Fixes:
------
1. Problem : (CQ8596) Driver does not reliably failover
to secondary.
Cause : New hwfail code failed to reproduce a
condition of the original code.
Change : Add missing condition to new code.
Impact : All cards.
Enhancements:
-------------
1. Problem : Missing some initialization strings for the
5705 A3.
Change : Added missing 5705 A3 initialization strings.
Impact : All 5705 A3 cards.
v7.0.3 (October 8, 2003)
=========================
Fixes:
------
1. Problem : (CQ8526) Ethernet@WireSpeed does not work.
Cause : It can take up to ~20 seconds to get a link
if Ethernet@WireSpeed is turned on with a
faulty setup. The driver was not waiting
for link long enough. This in turn caused
the controlling application to close the
interface prematurely.
Change : Wait longer in the bcmeopen() call.
Impact : All Ethernet@WireSpeed enabled devices.
2. Problem : (CQ8052) NC7770 ACT and 10 LEDS blink during
link drop.
Cause : Unknown.
Change : The symptom CQ7836 addresses is one of many
problems caused by returning from bcmeopen()
before a link has been established. Before
the fix for this bug was implemented, the
driver was forced to return a bogus link
status, which reported that the link was up.
It is likely the case that the guarantee of
an accurate link status, and consequently
the removal of the bogus link status, has
altered the behavior of the upper layers
and fixed this bug.
Impact : NC7770 cards.
Enhancements:
-------------
1. Problem : (CQ8553) The bcme package is not installing /
deinstalling itself cleanly.
Change : Added a preinstall script which checks :
1) To see if a bcme device is configured and
prompts the administrator to remove it.
2) Checks if a bcme package already exists
in the system and asks the administrator
to remove it.
3) Checks if files normally owned by the
bcme package are owned by the nd package
and asks the administrator if he / she
wishes to disassociate those files.
Impact : All future bcme packages.
v7.0.2 (October 2, 2003)
=========================
Fixes:
------
1. Problem : (CQ8535) Boot time message identifies 5705 A3 chip as
as "unknown".
Cause : The device ID for the 5705 A3 changed from previous
versions of the chip. The chip identification and
reporting code failed to check for the new device ID.
Change : Add the new device ID into the chip ID code.
Impact : All 5705 A3 chips.
2. Problem : (CQ7836) Cannot get the status of a secondary
controller when configured as a failover controller.
Cause : In order to check the status of the secondary
controller, the device must be opened. When the NIC
is opened, the controller is reset. After a reset,
it can take several seconds for a link to stabilize.
Because of this, the driver returns from the open()
before the link has stabilized, so the system can do
more useful work. Semantically though, a return from
the open() call has been taken to mean controller is
ready for use. The problem here is that software
querying the status of the secondary controller,
queries the status too soon after the open() call,
thus forcing the driver to report an erroneous status.
Change : Force the driver to sleep() in the open() call until
link has stabilized, or the system times out 5 seconds
later.
Impact : All chips.
Enhancements:
-------------
1. Problem : (CQ8553) The bcme driver is missing a preinstall
script.
Change : A preinstall script is added. This script aborts if
it finds a bcme package already installed, and
deletes conflicting files if the administrator
approves.
Impact : All chips.
v7.0.1 (August 26, 2003)
=========================
Fixes:
------
1. Problem : (CQ8353) 5704S secondary port cannot pass traffic when
set to forced speed.
Cause : The driver failed to preserve some critical bits during
the 1.2V change.
Change : Preserve the critical bits.
Impact : 5704S B0.
v7.0.0 (August 22, 2003)
=========================
Fixes:
------
1. Problem : (CQ8338) Missing man page
Cause : A problem with the build environment.
Change : Fixed build environment.
Impact : All cards.
2. Problem : (CQ8367) HP Management agents report duplicate port
numbers.
Cause : Port number was always being assigned "1" in driver.
Change : Assign actual port number in driver.
Impact : All cards.
3. Problem : (CQ8353) 5704S secondary port cannot pass traffic when
set to forced speed.
Cause : 5704S 1.2V adjustment.
Change : Remove the adjustment, for now.
Impact : 5704S B0.
v6.1.0 (August 13, 2003)
=========================
Fixes:
------
1. Problem : (CQ7591) Port numbers need to be "one" based.
Cause : Confusion regarding new standard.
Change : Add one to port number before reporting.
Impact : All cards.
2. Problem : Driver sometimes gets a MAC address of all zeroes.
Cause : In some rare timing related situations, the
firmware is behind in providing the MAC address
for the driver at the MAC control registers.
Change : Driver will get the MAC address from NVRAM when
the MAC address read from the MAC control
registers is all zeros.
Impact : All cards.
3. Problem : On 5704 AX chips, a DMA transfer that uses the last
byte on the 4G boundary will trigger a
"Host address overflow" error. This has been fixed
in 5704 B0, so we do not want the workaround enabled
for this ASIC revision.
Cause : A bug in earlier versions of the chip.
Change : Change the code to detect only 5704 AX parts and
only enable the fix under those circumstances.
Impact : 5704 B0 chips only.
Enhancements:
-------------
1. Problem : Transmission error rate and permissible cable lengths
suboptimal.
Change : Add code to modify default hardware configuration.
Impact : All 5702/3/4 AX copper chips.
2. Problem : Serdes drive level change for 5704S and 5704CIOBES.
Change : Change drive transmission level to 1.2V.
Impact : 5704S and 5704CIOBES chips.
v6.0.17 (August 05, 2003)
=========================
Fixes:
------
1. Problem : (CQ8047) Inconsistent messaging for copper and fiber
cards.
Cause : There was a test for the existence of an upqueue
stream (needed later) that caused the reporting
function to exit prematurely.
Change : The test was also performed closer to where it was
needed. The earlier test was deleted.
Impact : 5701 and 5703 fiber cards.
2. Problem : (CQ7591) Link messages missing slot and port numbers.
Cause : Feature request.
Change : Added slot and port numbers to link messages.
Impact : All chips.
3. Problem : (CQ7588) Broadcom driver does not support event
logging.
Cause : Feature request.
Change : Added a function which calls a kernel facility, if
present, to report link failure.
Impact : All chips.
4. Problem : (CQ8043) Fiber LED not illuminating when link restored
when configured in team.
Cause : The LED mode was overridden to accomodate another
feature. Upon link down when configured in team, the
management software closes the interface to the
primary card. When the link was restored, the LED
would not illuminate because they were still
overridden.
Change : Restore LED mode to default upon interface closure.
Impact : All fiber cards.
5. Problem : No support for 5704 B0 cards.
Cause : New product.
Change : Added code to support 5704 B0.
Impact : 5704 B0
6. Problem : (CQ8048) Link drop warning is logged twice.
Cause : Warning messages are always linked twice.
Change : Change the link drop message back down to a notice.
Impact : All chips.
v6.0.16 (July 02, 2003)
======================
Fixes:
------
1. Problem: Kernel panics when calling bcopy to copy a transmit
buffer (SCO fz 527593).
Cause: Double copy buffers not always big enough for the entire
packet.
Change: Removed PREQS_PHYSCONTIG flag in the tx buffer requirement.
Added check to make sure the pre-allocated buffer is big enough.
Impact: Better tx performance in addition to fixing the bug.
v6.0.15 (June 16, 2003)
======================
Fixes:
------
1. Problem: Link toggles continuously when configuring 5703S or
another fiber NIC that is directly connected to another
fiber NIC running Unixware.
Cause: Because link is immediately up after driver reset, and may
go down afterwards, the special logic to defer the first
MAC_HWFAIL_IND does not adequately prevent spurious
MAC_HWFAIL_IND.
Change: Modified the logic to defer the first MAC_HWFAIL_IND
in all cases after driver reset. This will prevent
any spurious MAC_HWFAIL_IND during the first few seconds
after driver reset when the link is unstable.
Impact: None.
v6.0.14 (June 16, 2003)
======================
Fixes:
------
1. Problem: (CQ8026) 5703S does not failover when cable is disconnected.
Cause: Fiber NICs do not lose their links when reset, exposing a bug
in the driver's logic to report MAC_HWFAIL_IND.
Change: Fixed bug in the code that determines whether or not to
send MAC_HWFAIL_IND.
Impact: None.
v6.0.12 (June 12, 2003)
======================
Fixes:
------
1. Problem: Test suite reported symbol error.
Cause: One global symbol does not have bcme prefix.
Change: Changed the symbol to static.
Impact: None.
2. Problem: Workaround needed for 5704 AX 4G boundary hardware bug.
Cause: HW bug.
Change: Added software workaround.
Impact: Some performance hit when tx buffers end at around 4GB boundary.
v6.0.11 (June 12, 2003)
======================
Fixes:
------
1. Problem: Unable to resume a suspended driver.
Cause: The device's key in the resource manager was locked
while calling devmem_mapin. This caused deadlock on
the resource manager.
Change: Changed code to call devmem_mapin before getting
a lock on the device manager.
Impact: None.
v6.0.10 (June 10, 2003)
======================
Fixes:
------
1. Problem: Unreliable failover to standby in some cases.
Cause: MAC_HWFAIL_IND is not always reliably sent when the link
goes down due to bug in driver.
Change: Added changes to fix the bug.
Impact: None.
v6.0.9 (June 09, 2003)
======================
Fixes:
------
1. Problem: (CQ #7980) Continuous link up/link down when 2 NICs are
connected directly back-to-back.
Cause: MAC_HWFAIL_IND message from the driver when link goes
down. When netcfg configures a NIC, the driver resets the
NIC and the other side connected directly will see a link
down. The other sides sends MAC_HWFAIL_IND, causing that
NIC to be reset and link to go down. This cycle of link down
will repeat and never stabilize when NICs are directly
connected to each other.
Change: Added logic to prevent sending MAC_HWFAIL_IND in the
first 5 seconds after driver reset. This breaks the vicious
cycle.
Impact: None.
v6.0.8 (June 06, 2003)
=====================
Fixes:
------
1. Problem: (CQ #7960) Netcfg hangs during configuration of second NIC
with no link.
Problem: Fail back from standby to primary unreliable.
Cause: Spurious MAC_HWFAIL_IND message from the driver.
Change: Added code to delay the first MAC_HWFAIL_IND after reset.
Reset causes link to go down and the new code will prevent
a spurious MAC_HWFAIL_IND.
Impact: Only affects the first few seconds after driver reset.
2. Problem: (SCO #527901) Panic during bootup.
Cause: Null queue pointer passed to putnext from ISR. Although
the receive routine checks the queue pointer before
proceeding to process the receive packets, the queue pointer
may get cleared by the close routine while the receive routine
is still running.
Change: Added check in the bcmeclose routine to busy wait for the receive
routine to complete before clearing the queue pointer.
Impact: None.
v6.0.6 (June 02, 2003)
=====================
Fixes:
------
1. Problem: (CQ #7350) When configured as primary with a standby, NIC
becomes unstable when primary cable is unplugged in certain
cases.
Cause: Driver reports default line speed of 1Gbps right after reset
when link is unknown.
Change: Added a timeout function to send MAC_HWFAIL_IND a few seconds
after reset if link is still down.
Impact: Link changes and driver installation.
Enhancements:
-------------
1. Problem: (CQ 7196) Multiple NICs are detected when subvendor and
subsystem IDs conflict with the NIC devices.
Change: Changed AOF files to use vendor and device IDs.
Impact: Only netconfig.
2. Problem: (CQ7347) Link down messages are displayed at NOTICE level.
Change: Changed link down messages to WARNING.
Impact: None.
v6.0.4 (May 16, 2003)
=====================
Enhancements:
-------------
1. Problem: Driver does not have OEM IDs for 5703 B0 devices
Change: Added new OEM IDs.
v6.0.3 (May 08, 2003)
=====================
Fixes:
------
1. Problem: (CQ #7690) Driver panics in some rare cases when loading
the driver.
Cause: Driver calls cm_begin_trans while holding a spinlock. This
is not allowed as cm_begin_trans may block.
Change: Changed locking scheme to call cm_begin_trans first if
necessary before getting spinlocks.
Impact: Affects driver loading only.
v6.0.2 (April 29, 2003)
=======================
Fixes:
------
1. Problem: In some extremely rare situations, 5703, 5704, and 5705
Copper NICs may not link up after a PHY reset.
Cause: On these PHY cores, there is a small probability of
lock up after a PHY reset.
Change: Added code to detect PHY lock up after a PHY reset and
reset again if lock up is detected.
Impact: The added lock up detection and recovery code affects
driver reset and link down events where PHY resets are
performed.
v6.0.1 (02/25/03)
- Added a new OEM ID in bcfg file.
- Fixed 5704S link up problem when it is set to autoneg and link partner has
autoneg disabled.
v6.0.0 (02/14/03)
- Added new IDs for 5705 A2 and some new OEM IDs.
v5.0.10 (01/31/03)
- Added new OEM IDs in bcfg files.
v5.0.9 (01/10/03)
- Added 5704S autoneg. workaround.
- Fixed problem detecting 5782.
v5.0.8 (12/20/02)
- Added new OEM IDs.
- Improved flow control.
v5.0.7 (12/13/02)
- Updated with latest OEM IDs.
v5.0.6 (11/15/02)
- Updated driver for 5705 A1.
- Added new OEM IDs.
- Fixed 5704S link up problem.
v5.0.4 (10/18/02)
- Fixed a link related problem on 5704S.
- Created new bcfg files for fiber NICs.
v5.0.3 (10/11/02)
- Added support for 5704S hardware autoneg.
- Fixed jumbo frames problem.
- Fixed symbol errors in MDI cert. test.
v5.0.0 (09/05/02)
- Added support for 5705.
v3.0.2 (07/22/02)
- Fixed hot plug panic.
- Fixed problem with 5704.
v3.0.1 (07/18/02)
- Adjusted coalescing parameters.
- Added vendor/device/subvendor/subsystem IDs in bcfg files for OU801.
v3.0.0 (05/15/02)
- Added support for 5704.
v2.2.13 (7/23/02)
- Adjusted coalescing parameters.
- Added vendor/device/subvendor/subsystem IDs in bcfg files for OU801.
- Fixed hot-plug panic.
v2.2.12 (05/23/02)
- Fixed some OEM info. in bcfg files.
v2.2.11 (05/14/02)
- Added new OEM IDs.
- Added html help page.
v2.2.10 (04/12/02)
- Fixed some Fiber related problems.
- Added the required delay after changing GPIOs.
v2.2.9 (04/03/02)
- Added new OEM subsystem IDs.
- Fixed linkup problem with a fiber switch.
- Fixed flow control problems when autoneg. is disabled.
v2.2.8 (03/28/02)
- Added new device IDs.
v2.2.7 (03/22/02)
- Fixed problem auto-negotiating with 3Com fiber switch.
- Implemented new LED scheme.
v2.2.6 (03/12/02)
- Added fix for certification synch up problems.
v2.2.5 (03/08/02)
- Completed fix for 10Mb certification panic problem.
v2.2.4 (03/08/02)
- Fixed 10Mb certification problem.
- Improved fiber auto negotiation.
- Fixed hang problem when installing 5702/5703 cards.
v2.2.3 (02/27/02)
- Added new PCI IDs for 5702/5703.
- Added Ethernet@WireSpeed.
- Fixed parity errors on 5703 in PCIX systems.
v2.2.1 (02/06/02)
- Fixed some problems with speed settings.
v2.2.0 (02/01/02)
- Fixed problems with 5702/5703.
v2.0.24 (01/10/02)
- Fixed a hang problem when fiber cable is disconnected.
- Added an ioctl call for an OEM.
v2.0.22 (12/12/01)
- Fixed panic problem during driver removal.
v2.0.21 (10/26/01)
- Added support for 5702.
v2.0.20 (09/24/01)
- Fixed a panic caused by loading the driver with no cable attached.
v2.0.19 (09/20/01)
- Fixed hot plug problems.
- Added failover feature.
v2.0.18 (09/11/01)
- Fixed the problem of over counting CRC errors.
- Fixed the problem of late collisions at 1000 Mbps half duplex.
v2.0.16 (08/25/01)
- Fixed a hang problem on 5701A3 fiber cards.
v2.0.14 (08/13/01)
- Fixed an interrupt sharing problem at boot up time.
v2.0.13 (08/06/01)
- Fixed a hang problem on some machines that boot up with no fibre cable
connected.
v2.0.12 (08/03/01)
- Fixed various fibre connection problems.
v2.0.7 (07/16/01)
- Fixed a multiple card problem.
v2.0.6 (07/05/01)
- Fixed the unit number for multiple boards.
v2.0.5 (06/28/01)
- Added support for more boards.
- Fixed some instability problems when running Ganymede Chariot.
v2.0.3 (06/04/01)
- Added OEM support.
v2.0.1 (05/23/01)
- Fixed some MP locking problems.
v1.0.9 (05/16/01)
- Fixed problems in mdi and dlpmdi tests.
v1.0.8 (05/15/01)
- Added support for BCM5701.
v1.7 (03/30/01)
- Added fix for Athlon systems.
v1.6 (03/23/01)
- Fixed symbol conflict problem.
v1.5 (03/15/01)
- Added Jumbo frame support.
- Added fibre support.
- Improved performance.
v1.4 (02/23/01)
- Added support for PCIX systems.
v1.3 (02/12/01)
- Fixed pkg corruption problem after running netcfg to remove the driver.
- Fixed packet loss error and multicast errors reported by the test suite.
- Added console messages for link changes.
v1.2 (01/25/01)
- Improved performance by adding copy threshold parameters in space.c.
v1.1 (01/15/01)
- Fixed Multiprocessor hang problem.
- Fixed line-speed setting problem.
v1.0 (01/11/01)
- First 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.