Release
Release
Release
R E L E A S E N O T E S
============================
2. Problem:
CQ64027 - BACS: Applying Enable Dash, appears as enabled, but it is not.
Cause:
With the particular testing steps, the APE shared memory will contain
garbage data that makes driver think
the firmware type is NCSI, not DASH. So driver will return from
UM_ApeEventWrite() immediately and
it will not send APE event to firmware anymore, then BMAPI stops and will
not update nvram
Change:
Check the APE shared memory signature before getting firmware feature.
Impact:
None.
Enhancements:
=============
1. Request:
CQ62336 - Obsolete older chips for Win8.
Change:
Add 5721 support back.
Impact:
None.
2. Request:
Limit WOL pattern number to 8 if PM offload FW is loaded.
Impact:
None.
3. Request:
Disable WPD support.
Impact:
None.
Version 15.4.0.4 Jun 18, 2012
----------------------------------------
1. Problem:
CQ63551 - BACS gives a error ��Fail to save ASF Table�� When attempting to
enable / disable ASF continually.
CQ63552 - After cable analysis test, enable/disable ASF will result in
error ��Fail to save ASF Table��.
Cause:
Driver is not aware that ASF is enabled at runtime, CQ51828 workaround is
activated and it causes device to
run at slower clock that makes BMAPI get time-out for waiting ASF to be
loaded.
Change:
Not to change Clock Policy registers if bootcode has already set the
registers with higher clock speed (after GRC reset).
Impact:
None.
2. Problem:
CQ63614 - OEM-System-5720 NIC: System runs into BSOD with bugcheck
IRQL_NOT_LESS_OR_EQUAL during system reboot.
Cause:
RSS mode cannot be changed at runtime after initialization or device may
dma RBD to incorrect location.
Change:
Always enable device RSS in the init time if RSS is enabled.
Impact:
None.
3. Problem:
CQ62858 - NdisTest 6.5 PM_PowerStateTransition failed.
Cause:
Driver doesn't generate expected MediaStateUnknown status notification on
system sleep
and expected number of MediaStateConnected status on resume from sleep.
Change:
Make driver to generate status notification as NDISTest requests.
Impact:
None.
4. Problem:
CQ63906 - "Wake Up Capabilities" should be removed after driver upgrade
from 15.2.0.x to 15.4.0.x.
Cause:
The old registry entries are not removed while doing driver upgrade.
Change:
Make inf changes to delete the old registry entries during installation.
Impact:
None.
5. Problem:
CQ3805 - Win8:NXI:WHCK: VMQScalability test failed on the NIC switch
capabilities should report NumVlansPerPort as 0, but its reporting 1
Change:
Set NumVlansPerPort in NIC switch capabilities to 0.
Impact:
None.
6. Problem:
CQ63625 - The NX1 NDIS6 driver reports the wrong NDIS version when queried.
Change:
Report NDIS version equal or less than 6.30.
Impact:
None.
Enhancements:
=============
1. Request:
CQ62336 - Obsolete older chips for Win8.
Change:
Change the message level to *Information* level to make NX1 consistent with
NX2.
Impact:
None.
2. Request:
CQ62067 - Set card reader DMA Read MRRS to 7 - for 4096B transfers.
Change:
Set card reader DMA Read MRRS to 4K for all 57766.
Impact:
None.
3. Request:
For OCBB, use driverFlags[port] in Option Card Scratchpad Index Table.
Note:
For previous implemenation (one DWORD) - driverFlags[0]: port0,1,2,3 use
b0-7,b8-15,b16-23,b24-31
For new implemenation (4 DWRODs) - use b0-7 of driverFlags[port]
NCSI v1.0.92 or later is needed to work with new driverFlags format.
4. Request:
Passing EEE configuration down to management firmware.
5. Request:
Download EEE patch for 57766/57786 family devices to accomodate OTP size
limitation.
6. Request:
Support fiber phy SGMII mode.
Change:
Setup fiber phy SGMII based on NVRAM info.
Impact:
None.
7. Request:
CQ63770 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
8. Request:
Add EEE info OID for BACS.
Impact:
None.
Version 15.4.0.3 May 29, 2012
----------------------------------------
1. Problem:
CQ63194 - Win8:NXI:WHCK:GenericMiniportRequirements test failed due to the
CDN requirements not met
Cause:
A Port1DeviceNumber or Port1FunctionNumber entry is required for a
multiport network adapter.
Change:
Add Port1FunctionNumber entry in the inf file for a multiport network
adapter.
2. Problem:
CQ63523 - Driver is missing when deploying Win7 with BCM5786 NIC
Cause:
The "CopyFiles" directive is missing in device's INF install-section.
Change:
Add the missing "CopyFiles" directive.
Impact:
None.
3. Problem:
CQ63382 - Win8 server build 8370: 5719 with enable VMQ run chariot will
BSOD.
Cause:
DPC watch dog timer timeout when waiting for mainlock in GenTimer.
Change:
Release the mainlock when VMQ CPU affinity is changed.
2. Problem:
CQ63050 - Update b57vista driver then missing registry key of flow control.
Cause:
"*FlowControl" key doesn't stick in registry during driver installation.
Change:
Make change in inf file to override registry key's default value as a
workaround.
Impact:
None.
Enhancements:
=============
1. Request:
CQ62839 - Please disable flow control for all OEM SSIDs for 15.0 gold
drivers
Change:
disable flow control based on SSIDs
2. Request:
CQ62976 - Set card reader DMA Read MRRS to 4K
Change:
Set card reader DMA Read MRRS to 4K
3. Request:
CQ62336 - Obsolete older chips for Win8.
Change:
Make driver fail to load with obsolete devices for Win8
Impact:
User may see obsolete device gets yellow bang in the device manager.
4. Request:
CQ63402 - Delete registry keywords that are deprected
Change:
The registry key *LSOv1IPv4 is removed.
Impact:
None.
2. Problem:
CQ62781 - Win8:NXI:NDISTest 6.5 "StandardizedKeywords" failed
Change:
Modified the inf files and reported VMQ HW capability even VMQ is not
enabled
Impact:
None.
2. Problem:
CQ62126 - BACS Diagnostics and Cable Analysis Test fails.
Cause:
Driver doesn't set the correct value for BytesWritten (the number of bytes
it is returning at InformationBuffer)
while BMAPI is querying device's APE registers through T3_OID_READ_BAR1_REG
in UM_QueryInformation().
Change:
Return correct value for BytesWritten while processing
T3_OID_READ_BAR1_REG.
Impact:
None.
3. Problem:
CQ62440 - 5720: driver can not be installed on W2K8 SP2 x32
Cause:
There is a typo in one of the infs, so some specific OEM's devices won't
install.
Change:
Corrected the inf text.
Impact:
Newly introduced 15.2.0.5
4. Problem:
CQ62475 - The OEM software release has wrong default RssQueue setting.
Cause:
The OEM specific inf file has duplicate *NumRssQueues setting, which is
incorrect.
Change:
Fix the inf error.
Impact:
None.
5. Problem:
CQ62509 - Disabling Interrupt Moderation improves performance of large
packet sizes.
Change:
Adjust 5718S coalescing parameters to less aggressive.
Impact:
None.
6. Problem:
CQ62598 - VMQ does not work on WIN8 server build 8250
Cause:
The WIN8 build 8250 requires flag
NDIS_RECEIVE_FILTER_DYNAMIC_PROCESSOR_AFFINITY_CHANGE_SUPPORTED
is set or VMQ cannot be created.
Change:
Add the flag.
Impact:
None
Enhancements:
=============
1. Request:
CQ62131 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
Adding support for Windows 8 in release 15.4.
Change:
Merge the code from Windows 8 branch back to mainline for 15.4
Impact:
None.
3. Request
CQ62574 - Update Product_Version String to 17.4.0 for OEM systems.
Change:
Change the product version as required.
Impact:
None.
2. Problem:
CQ61038 - 57766: Network traffic stop when running copy-compare test.
Cause:
MSIX vector0 is only used for TX and RST parameters should not be saved.
Change:
Not save RST parameters for MSIX vector0 to prevent from overwriting.
Impact:
None.
Enhancements:
=============
1. Request:
CQ61287,CQ61336 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ61091 - NX1 NC-SI not properly returning Family Driver Version
Change:
Driver will read "product version" from registry and deposit the data in
APE share memory then NCSI can refer to it.
Impact:
None.
3. Request:
Remove CQ60621 workaround.
Change:
Keep bit 3 of reg 0x36B0 to 1.
Note:
The latest bootcode has a workaround for CQ60621.
2. Problem:
CQ60966 - b57diag "sechksum" will get failure on "2nd Boot Code" when boot
to OS and loaded driver.
Cause:
Incorrect page size (264) was used for ATMEL AT45DBxxxD.
Change:
Make driver to use correct page size (256) for programming ATMEL NVRAM.
Impact:
None.
3. Problem:
CQ60805 - NC330i Memory subsystem issue during RFC2544 throughput testing.
Cause:
When running RFC2544 test and in some cases, the system can process
incoming rx packets at a faster
rate than it can transmit packets.
Change:
Limit the tx queue length by a registry key named MaxTxQueueLen to
workaround the problem.
Impact:
Tx packets are dropped when max tx queue lenght is reached.
Enhancements:
=============
1. Request:
CQ60841 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
CQ60710 - 57762: NETBIOS name query/TCP SYN v4 and TCP SYN v6 can't wake up
when PM Offload enabled.
Cause:
PM Offload firmware did not recognize the 57762 family devices.
Change:
Added support for 57762/57782 family devices to PM Offload firmware.
Impact:
None.
Enhancements:
=============
1. Request:
CQ60420 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
Set RSS default queue number to 1.
Impact:
None.
3. Request:
Replace registry key "RssRxRing" with MSFT standard key "*NumRssQueues".
Impact:
None.
4. Request:
Do not assign interrupt affinity policy for MSI-X vector #0.
Impact:
None.
5. Request:
Disable VMQ header split support.
Impact:
None.
2. Problem:
CQ59676 - Running chariot with Jumbo frame enable and then disable device
will cause system BSOD.
Cause:
Driver optimized code "adjust the rx buffer so that packet payload begins
at a 64-byte boundary"
is causing device to write outside driver allocated DMA buffer
Change:
Remove the optimized code.
Impact:
None.
3. Problem:
CQ60097 - b57&k57 driver: 2c_Mini6RSSSendRecv: [88888] Received some net
buffer lists out of order
Cause:
RSS handling for MSI/IRQ devices is not correct on a 64bit system when CPU
hyper-threaded enable.
Change:
Fixes the RSS bug for MSI/IRQ devices
Impact:
None.
Enhancements:
=============
1. Request:
CQ59560,CQ59789 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request
CQ59811 - Update Product_Version String to 17.2.0 for OEM systems.
Change:
Change the product version as required.
Impact:
None.
3. Request:
Add support for 57762/57766 family devices.
4. Request:
Disable EEE interoperability SW workaround for 57762/57766.
5. Request:
CQ59008 - Enable MSI support for 5715/5714/5780.
Version 15.0.0.21 Oct 19, 2011
----------------------------------------
1. Problem:
System gets assertion (DPC_WATCHDOG_VIOLATION 0x133) while running
1c_Mini6Send test in NDISTEST6.0.
Cause:
Driver has assigned incorrect value for Tx credit limit (used for
performance tuning) that makes
driver get busy in a loop while processing send event.
Change:
Assign a reasonable value to Tx credit limit.
Impact:
None.
2. Problem:
CQ59251 - ASYM_PAUSE is not advertised when flow control mode is auto or Rx
& Tx Enabled.
Change:
advertise ASYM_PAUSE when flow control mode is auto or Rx & Tx Enabled.
Impact:
None.
Enhancements:
=============
1. Request:
CQ59295 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
Enhancements:
=============
1. Request:
Add support for greater than 64 processors.
2. Request:
Enable registers dump by default(CQ55733).
3. Request:
CQ58703 - OEM Windows driver needs to report real FC value after auto-
negotiation
Change:
Added an enhancement to control how flow control results are reported. if
flow_control_reporting_mode is enable,
the flow control results is reported otherwise the requested configuration
is reported.
Impact:
The mode is enable for the OEM.
2. Problem:
CQ58327 - With new flash part, launch BACS4 and choose the lan device will
pop-up error messages.
Cause:
Driver doesn't use correct nvram strapping for recognizing new flash device
M45PE16 ST.
Change:
Add new nvram strapping setting to support the new flash device.
Impact:
None.
3. Problem:
CQ58481 - B57vista v15.0.0.17a: A OEM system(32core) with enable HT after
reboot system the virtual network unable get DHCP IP.
Cause:
The interrupt for link status change is missed sometimes during reboot and
it causes
the base NICs report link down.
Change:
when VMQ is disable, support RSS even *RssOrVmqPreference is set. When VMQ
is enable,
check link status one more time in the link down timer.
Enhancements:
=============
1. Request:
Adding support for Palladium (emulation system) with 57765/57785 devices.
Change:
Make driver be able to recognize FPGA setting and work accordingly.
Impact:
None.
Enhancements:
=============
1. Request
CQ57715 - 5761: driver should propagate PHY APD according to NVRAM setting.
Change:
Make driver to read PHY APD setting from NIC shared memory (deposited by
bootcode)
and configure PHY accordingly.
Impact:
None.
2. Problem:
CQ57441 - NXI:WHQL:b57vista failed on NDISTest 6.0 under Vista x86/x64
Cause:
MsixMsg/RxQueue mapping table is used when the table is not set and cause a
Enhancements:
=============
1. Request
CQ55733 - NX1/b57-drivers: Driver Device/Firmware Debug Dump Capability
Change:
Add complete register dump capability in the crash dump file as request.
Impact:
None.
2. Request:
CQ57372 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
CQ55452 - OEM NC-Series Broadcom 1Gb Driver is showing update return an
error for w2k8_R2x64bit
Cause:
The device IDs are not in the OEM inf file's win7 section.
Change:
Add the device IDs in the OEM inf file's win7 section.
Impact:
None.
3. Problem:
CQ56841 - BASP teaming adpter binding with hyper-v makes system unable to
get DHCP IP.
Cause:
The RSS talble size is 0 in this particular configuration but device is
still able to generate
MSI-X interrupt on CPU number larger than RSS ring size (4). There is a
coding error that driver
may incorrectly ignore MSI-X interrupt so device doesn't service tx/rx
packets anymore.
Change:
Correct the code to handle this particular configuration properly.
Impact:
None.
4. Problem:
CQ57101 - No counter of LSO transmit requests in BACS4 statistics.
Cause:
LSO related registry keys don't stick in registry during driver
installation.
Change:
Make change in inf file to override registry key's default value as a
workaround.
Impact:
None.
5. Problem:
System hits breakpoint while running VMQTestingOIDs with check version
driver.
Cause:
The fix in v14.8.1.5 resolves the interrupt storm (by driver�s updating
incorrect tag value)
when VMQ is freed. However, the same problem happens when driver enables
interrupt for VMQ during
initialization. Driver enables interrupt in VmqInitialize() with tag value
0, device generates
msi-x interrupt because device�s internal state of tag value is 1.
Change:
Make a workaround to force a status block update (without interrupt) to get
the latest/correct
interrupt tag value and then enable the interrupt with the tag value
(synced with device's).
Note:
None.
Enhancements:
=============
1. Request
Workaround for FUNC_MODE[] inputs are not HW strapped
Change:
Check the signature in from Rx CPU shared memory (0xe00, deposited by
bootcode), if it's invalid,
driver will read CPMU status directly from register 0x362C.
Impact:
None
2. Request
For OEM specific feature enhancement.
Change:
Pass device's LSO and Checksum offload information to NCSI while driver is
loaded.
Impact:
None
2. Problem:
CQ56612 - 57781B0 fail to detect linkdown with EEE is enabled and
connecting to a non-EEE target
Cause:
Interoperability issue workaround which should not be applied to a non-EEE
target.
Change:
Remove interoperability issue workaround for a non-EEE target.
Impact:
None.
3. Problem:
CQ56766 - Frimware upgraded failed with 5719 when EEPROM is used for self-
boot.
Cause:
Driver is not using the correct nvram strapping for recognizing eeprom
devices.
Change:
Correct the nvram strapping map for the eeprom devices used by 5719.
Impact:
None.
4. Problem:
CQ56286 - OEM reports the super charger will show error message when both
RSS and hyper threading are enabled.
Cause:
The default MSIX messages are not enough if the msix vectors are smaller
than the processors number.
Change:
Add more MSIX messages if need to make one MSIX message per processors at
least.
Impact:
None.
5. Problem:
CQ56644 - 5719-A1: System BSOD when run Load/unload.
Cause:
The non-zero MSIX messages are still used when RSS is not set.
Change:
Use the non-zero MSIX messages even RSS is not set.
Impact:
None.
Enhancements:
=============
1. Request
CQ56540 - OEM 5719 system: driver did not include Jumbo Frame and LSO.
Change:
The JumboFrame and LSO entries were removed for 5719 A0, now it's added for
OEM system with 5719 A1.
Impact:
None.
2. Request
CQ56099 - Please add 4-part IDs for specific OEM.
Change:
Make inf change as requested.
Note:
The inf changes added in v15.0.0.6 is incorrect (SVID is not correct)
3. Request
CQ56550,CQ56551 - Please add 4-part IDs for specific OEM.
Change:
Make inf change as requested.
Note:
None
4. Request
Workaround for FUNC_MODE[] inputs are not HW strapped
Change:
Instead of reading cpmu status from reg 0x362c, reading the data from Rx
CPU shared memory (0xe00) deposited by bootcode.
Note:
None
2. Problem:
CQ56393 - 5720 - OEM: Random BSOD when reloading b57 driver
Cause:
There are some spurious irq before RSS parameters are set.
Change:
Ignore the spurious irq.
Impact:
None.
3. Problem:
CQ56383 - 5720_A0- The DPCs rate does not work as expected when toggling
RSS Queues.
Cause:
RSSv1 (Vista, w2k8 and older) could give the driver a rss table with more
processors than the number
of queues the driver advertised.
Change:
Workaround it by making the processor number equal to the number of RSS
queue.
Impact:
None.
4. Problem:
CQ56417 - Snaggletooth: 5720A0-Fiber bindding Hyper-V with BASP will cause
BSOD.
Cause:
The fix of CQ56393 is still have a hole.
Change:
Fix the hole and ignore the spurious irq on a corner case.
Impact:
None.
Enhancements:
=============
1. Request
CQ56244 - Change 5719 & 5720 based customer friendly names in Windows
2k8 .inf files.
Change:
Modify some friendly names in OEM's specific inf files.
Impact:
None.
2. Problem:
CQ55652 - 57785x : it takes multiple interesting packets to wake up SUT
when link speed is 100M.
Cause:
Device may not be able to latch interesting packet when TL_CLK is running
slower than RX_CLK.
Change:
Make driver not to set bit_26 of reg 0x400 (Free Running ACPI), this makes
ACPI h/w stay in
"match" state after detecting an interesting packet.
Impact:
The change is for 57785/57765 family devices only.
3. Problem:
CQ55277 - WinFWUpg v7.0.43: 5720 (M45PE40) after upg ncsi run crc will
failed in "APE fw" and "iscsi cfg prog".
Cause:
NVRAM manual strapping is set on the 5720 board.
Change:
Add NVRAM manual strapping support in the driver for 5720.
Impact:
None.
4. Problem:
CQ55253 - Disabling RSS provides better CPU scaling result
Cause:
The RSS indirect table is not setup correctly when CPU hyper-threaded is
enable on a 64bit system.
Change:
Correct the RSS indirect table setup on a 64bit system when CPU hyper-
threaded enable.
Impact:
None.
5. Problem:
CQ56026 - 5718 fiber-Link up(OS) on Playdead port while establish pass-
through in 2K8-R2
Cause:
Driver is indicating connected status to OS while it should not.
Change:
Make driver not to indicate any link status while device is in playdead
mode.
Impact:
None.
Enhancements:
=============
1. Request
CQ55772 - Add 4 part ID support for copper in NDIS5 and NDIS6 drivers with
5719 and 5720
Change:
Make inf change as requested.
Impact:
None.
2. Request
CQ55763 - Modify existing 2 part ID match to add the "Copper Only" in
advanced property settings
Change:
Make inf change as requested. The "(Copper only)" are added in the
following settings
1. 802.3az EEE (Copper Only)
2. EEE Control Policies (Copper Only)
3. Ethernet@WireSpeed (Copper Only)
4. Speed & Duplex (Copper Only)
5. Wake Up Capabilities (Copper Only)
6. WOL Speed (Copper Only)
Impact:
Chip affect: 5719 and 5720 with two part ID.
3. Request
Adding support for NX1 OCSD/OCBB implementation
Change:
Make code changes to impelement the requested functions.
Impact:
None.
4. Request
CQ56085,CQ56097,CQ56099,CQ56202 - Please add 4-part IDs for specific OEM.
Change:
Make inf change as requested.
Impact:
None.
5. Request
CQ55773 - Change the default value of wake up capability to none for 5719
and 5720 Serdes interface
Change:
Make inf change as requested.
Impact:
None.
Version 15.0.0.5 May 19, 2011
----------------------------------------
1. Problem:
CQ55539 - Sawtooth B0: VMQScalability.htm of NDISTest6.5 VMQ failure on
Hyper threading with enabled
Change:
Setup MSIx vectors on the processors including hyper-threading processors.
Impact:
None.
2. Problem:
CQ55346 - 5720: System gets BSOD (bugcheck D1) during NDISTest6.5 VMQ
testing in DELL R910 16-Cores
Cause:
During NDISTest VMQ tests, NDISTest asks driver to allocate/free VMQs
multiple times. There is a racing
condition that NDISTest may send out packets from server to client while
VMQ initialization is not
completed yet, but VMQ's interrupt is already enabled. So device will
generate interrupts for driver
to service rx packets for the VMQ, this causes driver to reference an
invalid memory address.
Change:
Disable VMQ's interrupt when it's freed.
Impact:
None.
3. Problem:
CQ55682 - WinFWUpg tool corrupts the NVRAM on 5720 after MBA upgrade
Cause:
Same root caused of CQ55277 for another type of NVRAM.
Change:
Add support for more types of NVRAM with the correct strapping info.
Enhancements:
=============
1. Request
CQ55635 - Update Product_Version String to 16.8.0 for Release 14.8
Change:
Change the product version as required.
Impact:
None.
2. Problem:
CQ55464 - b57vista v15.0.0.3: 5719 and 5720 install driver will error code
under W2k8x86 and Vistax86.
Cause:
NdisGetRssProcessorInformation API is not available under NDIS 6.20
Change:
Check the function before calling it.
Impact:
None.
Enhancements:
=============
1. Request:
CQ55444 - Tx small fragments (less than 8 bytes) coalesce workaround should
be applied for all effect controllers.
Change:
For all affected devices, coalesce SBDs if there is a SBD with length less
or equal than 8 bytes.
2. Problem:
CQ55277 - WinFWUpg v7.0.43: 5720 after upg ncsi run crc will failed in "APE
fw" and "iscsi cfg prog".
Cause:
5720 NVRAM strapping for eeprom AT45DB021D is different.
Change:
Add support for it.
Impact:
None.
Enhancements:
=============
1. Request:
CQ55003 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ54401 - Disable Force Auto Negotiation when the current link speed at S0
matches
the intended S5 link speed
Change:
Don't reset and force Auto Negotiation on the PHY if "Port Flap Avoidance"
is enable in NVRAM configutation
Impact:
[1] no port flap during driver load/unload while in S0 with NCSI enabled
[2] no port flap during S0 (device driver enabled/active) to S5 shutdown w/
NCSI enabled
Version 15.0.0.2 Apr 25, 2011
----------------------------------------
1. Problem:
CQ54972: DTM testing gets stuck at VMQStressTest of NIDSTest6.5
Cause:
There is an coding error in the logic for CQ51637 workaround that makes
NBLs pending in miniport
driver and it makes ndistest protocol driver keep waiting for driver to
complete the packet.
Change:
Correct the logic to make driver complete the NBL successfully.
Impact:
None.
3. Problem:
The link flap happened on a third party EEE capable switch.
Cause:
A software workaround for EEE PHY interoperability issue is not right.
Change:
Modified the software workaround for EEE PHY interoperability issue.
Impact:
None.
4. Problem:
CQ51637 - Network traffic on GOS will fail after running CC32 on all pass-
thru paths.
Cause:
The failed symptom shows that Guest OS doesn't pass tx packet to driver for
sending out anymore.
Change:
Check and indicate TX completion periodically in driver's timer function.
Impact:
The workaround applies to TSS capable devices only (ex. 5719/5720).
Enhancements:
=============
1. Request:
CQ54443,CQ54540 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ54485 - NCSI NX1: Pass-thru only works 1G link when OS present with
playdead mode
Change:
Make driver not to change MAC Port Mode (bit [3:2] of reg 0x400) when
device is in playdead mode.
Impact:
None.
3. Request:
Apply CQ54261 fix to a specific OEM 4 part ID.
Change:
By Inf files.
Impact:
None.
4. Request:
Replace EEE registry key from "EeePhyEnable" to MSFT standardized keyword
"*EEE".
Impact:
None.
5. Request:
CQ54747 - Change device's description to "Broadcom NetXtreme Gigabit
Ethernet" for OEM systems.
Change:
Make inf file change as request.
Impact:
None.
2. Problem:
CQ54066 - Need multiple Magic packets to wake system from S3/S4/S5 in Fiber
mode.
Cause:
The wire clock is much faster than the TLP clock in Fiber mode.
As a result, it fails to capture the WOL event.
Change:
Bootocde v1.05 has a workaround to derive TLP clock from NCSI PLL when
system is running on VAUX.
Make driver not to halt RX CPU during S3/S4/S5, so bootcode can execute the
workaround successfully.
Note:
The change applys to 5720 only.
3. Problem:
CQ54220 - Traffic stops with LSO packets crossing 4G boundary
Cause:
The SDI state machine is not able to handle the condition properly.
Change:
Make driver to double buffer transmit buffers that span a 4gb boundary.
Impact:
The change apllys to all devices.
4. Problem:
CQ54056 - BSOD 0xD1 or traffic stop observed when running copy compare test
on OEM's platform
Change:
Driver needs to set FTS to 44 as steps indicated below
1. Setbit 0x3668[18]=1
2. Setbit 0x6800[22]=0, 0x6800[29]=1, 0x6800[31]=0
3. Set 0x7c0c[7:0] = 0x2C
Impact:
The change applies to 57761/57765/57781/57785 family devices only.
Enhancements:
=============
1. Request:
Limit 5719 send BD size to 4K or less.
Change:
Make the code change as request.
Impact:
5719 send BD size is 4K or less.
2. Request:
CQ39523 - add min/max/default option for Tx + Rx buffers
Change:
Create an advanced driver option that allows the end user to select three
different
options for the amount of Tx + Rx buffers based on 2 part ID's.
Impact:
Apply the change on 5717/5718/5719/5720.
3. Request:
Add support for "Play Dead Mode".
Change:
When device is in play dead mode, driver will not access GPHY and indicate
disconnected status to OS.
Impact:
Apply the change on 5717/5718/5719/5720.
Enhancements:
=============
1. Request:
Make driver to work with 5719 FPGA image without APE support.
Change:
Get fpga_setting[1:0] from CPMU clock status register 0x3630[31:30] and
configure device properly.
Impact:
None.
2. Request:
For 5720 only - clear bit 31 of Register 3624 to 0 when driver is loaded.
Change:
Bootcode v1.01 is introduced to address the issue with PXE banner not
showing up during CTL-ALT-DEL.
In this bootcode, it speeds up the loading of the Phase1 & Phase 2 bootcode
by setting bit 31 of
register 3624 to 1 to force the CPMU to speed up the core clock to 62.5MHz
when the internal cpu
gets reset and Vmain_Present is high. For the power saving, driver needs to
to clear bit 31 of
register 3624 to 0 when it get loaded.
Impact:
None.
3. Request:
Apply 8-byte coalesce workaroud for 5720 family devices.
Change:
Coalesce SBDs (send buffer descriptors) if there is a SBD with length less
or equal than 8 bytes.
Impact:
None.
4. Request:
Disable LSO and Jumbo Frames support for 5719 A0 only.
Change:
Make inf file change as request.
Impact:
None.
5. Request:
Add 4 part IDs support for 5719/5720 serdes mode for SW testing.
Change:
Make inf changes to show proper settings in driver advanced property.
Impact:
None.
6. Request:
Apply workaround for RDMA FIFO overrun on 5719 A0 only.
Change:
Set RDMA FIFO high and low watermarks to 1.5K with 2K MRRS
Impact:
None.
7. Request:
CQ52953 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
Change the Copyright information to include 2011 for all SW modules
Change:
Change the Copyright information to include 2011 in related files.
3. Request:
Disable EEE LPI bit when the link partner is not EEE capable.
Change:
Disable EEE LPI bit when the link partner is not EEE capable.
4. Request:
Adding support for 5720
Change:
Modify code to add support for 5720.
Impact:
None.
5. Request:
Add EEE support for 5720
Change:
Make code changes as requested.
Impact:
None.
2. Problem:
CQ52327 - Sawtooth: Unable to run Chariot on 16 GOS with VMQ+Jumbo Frame
Enable
Cause:
The driver didn't swap the jumbo frame mailbox address for VMQ#12-#16.
Change:
Swap the jumbo frame mailbox address for VMQ#12-#16.
Impact:
None
3. Problem:
CQ52170 - RSS enable, insert/remove SD card cause LAN traffic stop
Cause:
The interrupt for MSIX vector0 was disable.
Change:
MSIX vector0 is not used for RSS rx and RST flag should not be checked when
enabling MSIX
vector0 interrupt.
Impact:
None
Enhancements:
=============
1. Request:
CQ52312 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
set Max_standard_packet_size to 1522 for all VMQs to match the CQ51084
change.
Change:
set Max_standard_packet_size to 1522 for all VMQs.
Impact:
None.
3. Request:
CQ52543 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
CQ51858 - 5719 A0: keepalive.htm test failure in NDISTest6.5 Wol under
Win7-x64
Casue:
PM Offload firmware is detecting a link status change after the driver
starts the firmware.
As a result of this the firmware will set up the MAC mode register to match
the PHY settings.
Since the PHY settings is for GMII the firmware will set the MAC mode
register to GMII.
Change:
The resolution is for the firmware to handle the link status change only
when in Vaux.
Impact:
None.
3. Problem:
CQ51828 - 57781 A0 copy compare test traffic stop/D1 BSOD when running in
10M half mode.
Cause:
The receive return produce index in MSI-X status block is incorrect and it
makes driver
to access wrong memory access while indicating received packets to OS then
cause system to
run into BSOD with bugcheck D1.
Change:
Set "Link Idle Power Mode Clock Policy" to 6.25Mhz to make device core
clock run faster in
Link Idle Power Mode. The original default setting is 3.125 Mhz.
Impact:
None
4. Problem:
CQ52060 - Sawtooth-B0-Fiber-Port1 will link down when disable port0 driver
on 5718 Firber.
Change:
A software workaround by not setting the Sawtooth's Fiber-Port0 to low
power mode
when port0 is disable.
Enhancements:
=============
1. Request:
CQ52056,CQ52059 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
Adding support for new private OID "T3_OID_ASPEN_AHB_RESET".
Change:
When xD driver detects a global CR reset is necessary, it will send an OID
to LAN driver if lan is enabled.
Upon reception of the OID, the LAN driver CLEAR bit_23 of 0x36e4 (AHB
Reset), then SET BIT_23 of 0x3e64.
Impact:
None.
3. Request:
Reduce the performance impact of 5719 FIFO overflow (CQ50899) fix.
Change:
Set RDMA FIFO high and low watermarks to 1.5K with 2K MRRS
Impact:
None.
4. Request:
CQ51755 - Disable LSO and Jumbo Frames for 5719.
Change:
Make code change as request.
Impact:
None.
2. Problem:
CQ51148 - 5719A0: Traffic stop when CLKREQ+L0s+L1 enabled + LSO disabled.
Cause:
RDMA Underrun Error occurs and device is not able to do RDMA for sending
packet anymore.
Change:
Apply 8-byte coalesce workaroud for 5719 family devices.
Impact:
None.
Enhancements:
=============
1. Request:
Add NIC Power switching support for 5719.
Impact:
None.
2. Request:
CQ51119 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
Enhancements:
=============
1. Request:
LAN Driver needs to force the Core Clock to 6.25MHz when the Ethernet Link
is in 10Mb mode.
Change:
Apply the workaround on 57765/57785 B0 family devies.
Impact:
None.
2. Request:
Adding APE support for 5719 family devices.
Change:
Make code change for driver to work with NCSI FW properly.
Impact:
None.
3. Request:
Make driver not to halt RX CPU during S3/S4/S5.
Cause:
Cotopaxi has an issue that interal TLP clock derived from PCIE Serdes is
not available while
PERST# is low, this make device's WOL doesn't work. Bootocde has a
workaround to switch clock
source from PCIE Serdes to internal PLL (always running) when system is
running in Vaux.
Change:
Make driver not to halt RX CPU during S3/S4/S5, so bootcode can run the
workaround successfully.
Impact:
It's for 5719 family devices only.
4. Request:
CQ50723, CQ50778 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
5. Request:
Add EEE support for 5719
Change:
Make code changes as requested.
Impact:
None.
Enhancements:
=============
1. Request:
Enable GPHY Auto Power Down feature for 5761, 5718 and 5719 family devices.
Change:
Get GPHY APD enable bit (bit_14) from shared memory 0xd38 "Hardware
Configuration"
and enable GPHY APD accordingly.
Impact:
None.
2. Request:
Remove 8-byte coalesce workaroud for 5719 family devices.
Change:
Don't coalesce SBDs (send buffer descriptors) if there is a SBD with length
less or equal than 8 bytes.
Impact:
None.
2. Problem:
CQ50134 - 5718 B0 Fiber : WOL function with LAA failed on S5 mode.
Cause:
Driver doesn't repogram device's MAC address before system entering S5.
Change:
Reprogram MAC address for S5 WOL with LAA and switch adapter to Vaux before
Vmain is removed.
Impact:
None
3. Problem:
CQ50236 - 5718-B0 Fiber doesn't support PM offload..
Cause:
The D0u Clock Policy register (0x3614) was set to 6.25MHz. This clock speed
is too slow for serdes.
Change:
Change the D0u Clock Policy register to 60MHz in the PM offload
firmware(v1.13).
Impact:
None
4. Problem:
System gets BSOD with bugcheck 0x9F while doing IO Stress test with
surprised device removal.
Cause:
Driver doesn't return all packets to upper layer. There are still packets
pending in driver's tx active queue.
Change:
Free all pending tx pkts on SurprisedRemoved event.
Impact:
None
Enhancements:
=============
1. Request:
Modified EEE code for 57785/57765 B0.
Impact:
None.
2. Request
CQ50288 - Update Product_Version String to 16.4.0 for Release 14.4
Change:
Change the product version as required.
Impact:
None.
3. Request:
CQ50262 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
CQ49644 - 5718: Binding a virtual network will cause BSOD
Cause:
Driver was using incorrect number for send rings when system has more than
16 CPUs.
Change:
Limit the maximum send ring's number to 16.
Impact:
None
3. Problem:
CQ49979 - Bootcode: PM offload - doesn't respond MAC address
when PM-offload enabled with otp.
Cause:
The PM Offload firmware is expecting the Tx Mbuf headers to be
initialize.
This is done by the bootcode but not done by OTP or SB.
Change:
Tx Mbuf headers is initialized by PM Offload firmware(v1.12).
And driver doesn't need to clean up Tx Mbuf for PM offload.
Impact:
None.
Enhancements:
=============
1. Request:
Add support for 5719 family devices.
Change:
Merge code from the branch for 5719 family devices.
in Rx Ret Ring #1 - #4 and device was generating status block #1-#4 update
for
incoming packets.
Change:
Move CQ42690 fix into Tigon3_DisableAllStateMachines() as a robust
solution.
Impact:
None
2. Problem:
NDIStest6.5 VMQ Test (vmqpnptest) gets BSOD with "LargeSizeRxRing" enabled
Cause:
The ring size in VMQ RCB registers is not set correctly. It should be 2048
instead of 512.
Change:
Change code to setup the ring size correctly.
Impact:
None.
3. Problem:
CQ45594 - Sawtooth - Power Util. does not come down after runing traffic
with EEE enabled
Cause:
When bit6 is set in EeeMode(0x36b0) register, NIC send producer ring
index gets corrupted
which prevent the chip going into EEE mode.
Change:
Don't set bit6 in EeeMode(0x36b0) register
Impact:
None.
2. Request:
Disable MMRR for Swatooth B0.
Impact:
None.
3. Request:
Modified EEE code for Sawtooth B0.
Impact:
None.
2. Problem:
CQ49529 - 5718 fiber: System is unable to wake up with all WOL modes.
Cause:
Driver incorrectly configures PHY for enabling Ethernet@WireSpeed when
serdes interface is used.
This makes device lose link while system entering S3/S4/S5.
Change:
Make driver does not apply Ethernet@WireSpeed code when serdes interface is
used.
Impact:
None.
3. Problem:
A NS Multicast Ethernet packet test in WLK 1.6 KeepAlive tests failed.
Cause:
The promiscuous mode bit was cleared by PM offload firmware.
Change:
Fix in PM offload firmware v1.11
Impact:
None.
Enhancements:
=============
1. Request:
Disable TSS.
Impact:
No TSS support.
2. Request
CQ48518 - Update Product_Version String to 16.0.0 for Release 14.2
Change:
Change the product version as required.
Impact:
None.
3. Request:
Restore EEE from driver advanced properties for the 14.4 driver release
Change:
Make inf change as request to restore EEE from driver advanced properties.
Impact:
For 57765/57785 family devices only.
4. Request:
Restore 5717/5718/5724 support for 14.4 driver release
Change:
Make inf change as requested.
Impact:
None.
5. Request:
Enable Multiple Memory Read Request (MMRR) feature for 5717/5718/5724 B0
devices.
Change:
Make driver not to set bit_24 of register 0x4800 which is for disabling the
MMRR function.
Note:
MMRR is still disabled for A0 devices.
6. Request:
Driver doesn��t clear reg 0x6c [9:7] for 57765/57785 family devices
and let bootcode have control for it.
Change:
Make change as requested.
Impact:
None.
Enhancements:
=============
1. Request:
CQ47918 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ47940 - remove 802.3az EEE from driver advanced properties for 5717/5724.
Change:
5717/5724 doesn't support EEE, make inf change as request.
Impact:
None.
3. Request:
CQ46793 - Remove 5717/5718/5724 support from 14.2 driver release
Change:
Make inf change as requested.
Impact:
None.
4. Request:
Remove EEE from driver advanced properties for the 14.2 driver release
Change:
Make inf change as request to remove EEE from driver advanced properties.
Impact:
For 57765/57785 family devices only.
Version 14.2.0.5 May 21, 2010
----------------------------------------
1. Problem:
CQ47563 - After resuming from S3, enabled/disable DASH fw through bmcc
command cause SUT system abnormal.
Cause:
Driver is not aware that DASH is enabled/disabled at runtime, so driver
can't make APE status update for
correct driver state.
Change:
Implement new change for driver make APE status update for driver state
change. Also, driver needs BMAPI
(v7.19.0 and after) to suspend/resume driver after DASH has been
enabled/disabled, then driver will have
chance to reread NIC configuration (shared memory 0xb58 bit_7) for
determining if DASH is enabled or not.
Impact:
None.
2. Problem:
CQ47596 - Rel14.2:NXI:Sawtooth:bcm5718 failed on NDISTest VMQ test in W2K8
R2 x64
Change:
Don't return MSIXTableEntry when a VMQ is created even the spec say so and
add
OID_RECEIVE_FILTER_QUEUE_PARAMETERS support in NdisRequestSetInformation.
Impact:
None.
3. Problem:
CQ47597 - Rel14.2:Sawtooth:bcm5718 failed on addresschange test in W2K8 R2
x64.
Cause:
The Mac Address was not changed when VMQ was enable.
Change:
Allow Mac address update and overwrite MMA mode when VMQ is enable.
Impact:
None.
4. Problem:
CQ47591 - Rel14.2:Sawtooth:bcm5718 failed on glitchfreedevice test in W2K8
R2 x64.
Cause:
The failure was happened only if VMQ was enabled because RST was not
supported by VMQ.
Change:
Add RST support on VMQ.
Impact:
None.
Enhancements:
=============
1. Request:
Support Sawtooth APE NCSI.
2. Request:
Add Sawtooth TSS support.
Version 14.2.0.4 Apr 30, 2010
----------------------------------------
1. Problem:
CQ47185 - Sawtooth: Unable running 16proc when VMQ enable with Windows
2008 R2 Datacenter
Cause:
Default VMQ processors number for 1G is 8.
Change:
Add and set *MaxRssProcessors keyword to 16 in the inf file for VMQ to use
16 proc.
Impact:
None.
2. Problem:
CQ47248 - Dash/ASF packets wakes up the system when XP enables WOL in the
OS
Change:
Pass the WOL patterns to DASH firmware and let DASH firmware to handle WOL.
Impact:
Need to use DASH firmware V1.42.0.0 or later version.
3. Problem:
CQ46602 - 57765 traffic broken when running chariot TX at 100M with jumbo
enabled
Cause:
A control bit to enable/disable the Hw fix for CQ12429 is unexpectedly
cleared by driver.
Change:
Enable the control bit back for fixing TxMBUF Lockup issue.
Impact:
None.
Enhancements:
=============
1. Request:
WMI event notification for 5761 DASH firmware.
Change:
The request is to enable immediate graceful power control and other remote
management features in 5761.
The DASH firmware will generate an interrupt to the host. The driver will
not be able to tell from the
status block that the interrupt is from the DASH firmware. So as part of
the interrupt handling the
driver will need to query register 0x6810 (RX CPU Event). If bit 0 (SW
Event 0) is set then the driver
will generate an WMI Event. Afterwards the driver will need to zero out
this bit.
Impact:
The change works with 5761 with DASH firmware v1.42 or later.
2. Request:
Fine tune dynamic VMQ HC.
3. Problem:
CQ46755 - Sawtooth: System hangs when enabled VMQ VLAN Filtering from
Device Manager with Chariots test
Change:
Fixed a bug in the code that supported multi-vmq per vector.
Impact:
None.
4. Problem:
CQ46641 - Vista x64 gets BSOD after resuming from S4.
Cause:
After resuming from S4, the Receive Return Ring Produce Index read form
host memory is incorrect,
this makes driver access to wrong Rx Buffer Descriptor and touch invalid
memory address for buffer data.
Change:
Initialize all Receive Return Prod Indexes (of MSI-X status block) to 0
while reseting device.
Impact:
None
Enhancements:
=============
1. Request:
Add the following changes in driver in order to support customer who uses
OTP implementation.
1) Driver needs to set bit 31 in register PCIE Physical Layer Register
0x1814 to disable clkreq in L2 to
workaround a chipset bug.
2) Driver needs to clear bits [9:7] of PCIE Configuration Space in Function
0 Register 0x6C.
This is needed to ensure the SD Host Controller does not lock up.
3) LAN Driver needs to force the Core Clock to 6.25MHz when the Ethernet
Link is in 10Mb mode.
This is needed in order to workaround a Hardware synchronization issue
in the DMA Read Engine to
prevent Fatal Error from stopping the transmitting logic.
Note: the changes are for 57765/57785 family devices only
Enhancements:
=============
1. Request:
CQ44978 - Use *ReceiveBuffers registry key for NDIS6.x and NDIS5.x driver.
Change:
Replace the registry keys with MSFT definition keys.
Impact:
None.
2. Request:
CQ46736 - remove fix for CQ39683, CQ40054 from Windows drivers (ndis5,
Ndis6)
Change:
Make changes as request. These fixes may cause PCIE Serdes corruptions that
result in
device disappearances when the system resumes from S4 (CQ46606). These
fixes are
removed from driver and added into OTP selfboot.
Impact:
It's for 57780/57760 family devices only.
2. Problem:
CQ45808 - VMQ: X64_0x3B_VRF_b57nd60a+4124a running NDISTest6.5
vmqstresstest
Cause:
Since Sawtooth can only set one HDS LookaheadSize. There was an assertion
if two VMQs had different
LookaheadSize.
Change:
Dynamically update the HDS LookaheadSize and always allocate Lookahead
buffer to the max LookaheadSize for
VMQ rx buffers. There are also many changes for MSFT WLK 1.5 VMQ tests.
Enhancements:
=============
1. Request:
Enable Sawtooth bit16, 17, 18 in reg 0x70 for bmapi diag tests.
Impact:
None.
2. Problem:
CQ46066 - 5721:watch dog timer time out when the OS deploy job which is
running where setup
is restarting the machine stating "setup will continue after restarting"
Cause:
A dpc come after the driver shut down.
Change:
Don't server the dpc after the driver shut down.
Impact:
None.
Enhancements:
=============
1. Request:
CQ45484 - b57driver needs to add support for 5724.
Change:
The previous change in v14.0.0.6 is incomplete. Not only 2 parts IDs in inf
files,
Driver needs to make other changes to work with 5724.
ex. Get ASIC revison from correct offset based on 5724's device ID.
Impact:
None.
2. Request:
Restore CQ45685, CQ46108 changes for 14.2 driver release
Change:
Make inf change as request.
Note:
CQ45685 - Remove EEE from driver advanced properties for the 14.0 Gold
driver
CQ46108 - Remove Sawtooth Support from 14.0 Driver
2. Problem:
CQ45444 - Tx NQS is filtering packets when opcode does match for TCP
Payloads.
Cause:
For element filter Element-Header 4 "Start of TCP/UDP Payload, else IP
Payload, else Ethernet Payload",
the current driver design will check on both TCP payload and IP payload and
filter out the packet if
any one of them matches.
Change:
Make driver's TX NQS filter works like device's RX NQS filter - when packet
contains IP payload and TCP payload,
driver will examine NQS filter against TCP or UDP payload only.
Impact:
None.
3. Problem:
CQ45666 - 57765x-system hanged when run Diagnostic test at 100MF/100MH with
ASF enabled
Cause:
During MAC loopback test in BACS diagnostic testing, there is a racing
condition which causes
driver to free a spin lock which is not acquired yet. The deadlock makes
system hang.
Change:
Make code change to prevent driver running into the racing condition.
Impact:
None.
4. Problem:
CQ45662 - ASPEN(BACS): Diagnostics tests are not suspended for
Aspen/57761/57781 adapter .
Cause:
The rx standard consumer index from status block is not correct when the
driver is suspended.
Change:
Force a status block update and stop the hardware to make driver get the
most updated index.
Impact:
None.
Enhancements:
=============
1. Request:
CQ45418 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ45498 - Please add the following OEM 4-part IDs for 57760 platforms in
Release 14.0.
Change:
Added IDs
Impact:
None.
3. Request:
CQ45484 - Sawtooth:b57driver need to add b5724 support.
Change:
Added IDs
Impact:
None.
4. Request:
CQ45685 - Remove EEE from driver advanced properties for the 14.0 Gold
driver
Change:
Make inf change as request to remove EEE from driver advanced properties.
Impact:
None.
2. Problem:
CQ45268 - 5718: System will link at 1G when put system in S3/S4/S5 mode.
Cause:
The fix for CQ44614 has assigned real/correct GPHY ID for 5718 copper
interface. However it has a falw
which makes part of driver code (ex. LM_ForceAutoNegBcm540xPhy()) is not
executed and it causes problem.
Change:
The driver code is executed with new 5718 GPHY ID for copper interface.
Impact:
None.
3. Problem:
CQ44927 - Sawtooth:TCP SYN v4/v6 can't wake up when PM offload enabled.
Cause:
The address of wake-up pattern has been moved to 0x24000 in Sawtooth.
Change:
Use the correct address of wake-up pattern for Sawtooth with PM offload
firmware v1.07.
Impact:
None.
4. Problem:
CQ45152 - sawtooth: PLLpowerdown and CLKREQ.
Cause:
This is a A0 hardware issue that is Sawtooth does not allow PLLPowerdown in
L1 to be enabled
if CLKREQ is also enabled.
Change:
Workaround by if CLKREQ is not enabled, driver needs to enable device L1
PLLPowerdown.
5. Problem:
Driver failed on DTM 1c_kernelcalls test
Cause:
Driver has incorrectly made a call to DbgBreakPoint() with free version
driver.
Change:
Remove DbgBreakPoint() from free version driver.
Enhancements:
=============
1. Request:
CQ45261 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ45271 - Disable gigabit capability for specific OEM platform.
Change:
Make inf changes as requested.
Impact:
None.
3. Request
CQ45290 - Update Product_Version String to 15.0.0 for Release 14.0.
Change:
Change the product version as required.
Impact:
None.
4. Request
57765/57785 "DMA Read/Write Control Register" access (offset 0x6C)
Change:
Make change for driver to program bit 21:19 for "DMA Write WaterMark" only.
For other bits, let bootcode to control it.
Impact:
None.
5. Request:
Change the Copyright information to include 2010 for all SW modules
Change:
Change the Copyright information to include 2010 in related files.
2. Problem:
CQ45009 - Bacscli: BSOD occurs wihle performing PHY loopback on 5704 with
latest driver.
Cause:
During continuous PHY loopback test, Bacscli will pass
T3_OID_SET_LINE_SETTINGS to make driver setup
GPHY for loopback mode or normal mode repeatedly. In some particular
condition, Bacscli may pass the
OID to driver for starting PHY loopback test while driver is still servicing
the Link Change interrupt
for the normal mode requested by Bacscli last time. This makes driver to
free up a spinlock which is not
acquired yet, and it makes system BSOD.
Change:
Adding a delay in driver before servicing T3_OID_SET_LINE_SETTINGS to let
driver finish the DPC for
servicing the link change interupt.
Impact:
None.
3. Problem:
CQ45090 - System gets BSOD (bugcheck 0x7C) while changing speed/duplex to
100M-auto under EEE.
Cause:
The timer for EEE function to assert LPI (Low Power Idle) is fired due to
the link up/down
event while driver is going to halt.
Change:
Cancel the EEE timer when driver is unloaded.
Impact:
None.
4. Problem:
CQ44614 - 5718 Fiber: Flow Control does not work when set to "Auto" in
W2K8sp2.
Cause:
Driver is not using correct PHY address for accessing Serdes GPHY. It makes
device unable to get
correct Flow Control setting of link partner while doing Auto-Negotiation.
Change:
Use the correct PHY address while driver is accessing Serdes GPHY.
Impact:
None.
5. Problem:
CQ45110 - The interrupt/sec counter does not go down noticealby with
interrupt moderation enabled.
Cause:
Driver is still using default interrupt coalescing settings when interrupt
moderation is disabled.
With interrupt moderation enabled, driver has an implementation for dynamic
interrupt coalescing
which will switch the interrupt coalescing settings from default to
alternate when traffic is busy.
So under some conditions, driver will stay with default settings with
interrupt moderation enabled.
This makes the interrupt number look the same when interrupt moderations is
disabled.
Change:
Disable interrupt coalescing completely when interrupt moderation is
disabled.
Impact:
None.
6. Problem:
CQ45051 - 5718/57765: Running 1 session cc32 is sluggish.
Change:
Adjust default interrupt coalescing setting to improve the performance.
Impact:
None.
7. Problem:
CQ45129 - 57765 : Glitchfreedevice test (in WLK NDISTest6.5) failed on
Win2K8R2 x64 with MSI-X enabled
Cause:
Driver doesn't pass RST (Receive Side Throttle) parameter while calling
UM_Dpc() from UM_DpcMsi() when MSI-X
is enabled. This makes driver's function for indicating Rx packets is not
aware that RST is enabled and it
indicates all packets it has received and causes test failed.
Change:
Fix the error to make sure RST paramter is passed to UM_Dpc().
Impact:
None.
Enhancements:
=============
1. Request:
EEE LPI is enable only if EEE PHY negotiation success.
Impact:
The change is for 57765/57785 and 5717/5718 family devices only.
2. Request:
Add GPHY Green Mode support for 5717/5718/57765/57785 family devices.
Change:
Whenever link is at 1G and cable length is less than 10m, driver
will enable device GPHY Green Mode for saving power.
3. Problem:
CQ44866 - 5718: The link speed is 100M when put system to S5 mode with NVRAM
WOL enabled.
Cause:
The link speed should be 10M while system is in S5 with WOL speed set to
LSA. However, the
additional power-switching operation added for CQ44688 fix in the device
reset routine has
caused an unexpected reset after Vmain has been removed when system is in
S5.
Change:
Remove the unnecessary power-switching in the driver reset rountine.
Impact:
It's for NIC design type only not for LOM.
4. Problem:
CQ44894 - Switch Flow control doesn't work correctly while system boots into
OS
Cause:
Driver doesn't do GPHY Auto-Negotiation while it's loaded with cable
connected. This makes switch
(with pause frame setting = AUTO) unable to determine device's pause frame
ability when link is up.
Change:
Make driver to do GPHY Auto-Negotiation while it's loaded with cable
connected.
Impact:
None.
5. Problem:
CQ44864 - NDISTest6.5 (WLK1.5) fails with glitchfreedevice test on BCM5787M
under Win7 x86
Cause:
Driver has an optimization code in DPC for handling rx packets which it will
contine to check in a loop
to see if there is new incoming rx packet. If there is any new packet coming
in, it will continue to
indicate rx packets to upper layer. This makes driver indicate packets over
the number (per DPC)
specified by the RST (Receive Side Throttle) parameters.
Change:
Disable the optimization code while RST is enabled/running.
Impact:
None.
Enhancements:
=============
1. Request:
CQ44826 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
Enhanced change for EEE function to prevent link drop during heavy traffic.
Impact:
The change is for 57765/57785 and 5717/5718 family devices only.
2. Problem:
CQ44702 - The link speed is 100M after system entering S1/S3/S4 mode while
Power Management is disabled.
Cause:
The bootcode set the link speed at 100M when Vmain goes away is due to the
wol enable bit is set in
the NVRAM. The bootcode will honor the wol enable bit in nvram is due to no
wol_signature in shared
memory offset 0xd30.
Change:
Make driver to setup wol signature correctly when wol function is enabled.
Impact:
None
3. Problem:
CQ44692 - Sawtooth: Hyperv-VMQ: BSOD with 7E while assign 8 different VALN
ID to GOSes.
Cause:
It was caused by the assertion of not supporting vlan filter on vmq default
queue.
Change:
Add vmq vlan filter support for default queue.
Impact:
None
4. Problem:
CQ42316 - During Factory X64 download, Active directory scripts are not
downloading.
Cause:
The Netlongon service starts before network is ready. The reason why netowrk
is not ready is due to
an additional GPHY reset added during code merge for 5785, this extra GPHY
reset makes device take
longer time to link up while driver is loaded.
Change:
Make the GPHY reset for 5785 only, not for other devices.
Impact:
None
Enhancements:
=============
1. Request:
Adding support for 57765/57785 ASIC GPHY ID.
Change:
GPHY MII reg 0x2 = 0x0362, GPHY MII reg 0x3 = 0x5e40.
Impact:
None.
2. Enable PM offload for Sawtooth.
3. Support EEE PHY.
2. Problem:
CQ44650 - 5718: WOL fail to wake from S3(Standby) and S4 (Hibernate) using
Ping.
Cause:
The wake up patterns are not programmed correctly for 5718.
Change:
Correct the error to make sure the patterns are saved in the correct place.
Note:
None
3. Problem:
CQ44586 - 5718: System halt (BSOD) while installing driver on specific OEM
system.
Cause:
Driver (for 64-bit OS) will generate 2 DWORD Memory Write while accessing
APE Host Registers.
However, device does not support Memory Write with 2 DWORD. So device will
generate
ERROR_NONFATAL message to rootcomplex and set bit_15 (Completer Abort
Status) of
Uncorrectable Error Status Register (0x104).
Change:
Prevent driver from generating 2 DWORD Memory Write while working with 64-
bit OS.
Impact:
None
4. Problem:
CQ44443 - 5718: When system enters S3, device gets link at 100Mbps while
doing WOL negative test.
Cause:
Driver for dual ports NIC design needs to make handshake before doing power-
switching, only one driver
instance needs to do the power switching. The current driver code will make
twice power switching for NIC,
this causes an unexpected reset after Vmain is removed. Then bootcode will
be reloaded and configure
link speed to 100Mbps instead of powering the device with no link (when WOL
is not needed).
Change:
Make driver to handle power-switching for device with NIC design properly
(by using APE Ctrl register
0x08 bits[19:2] for dual-port message exchange).
Impact:
None.
Enhancements:
=============
1. Request:
CQ44669 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
Enhancements:
=============
1. Request:
CQ44349, CQ44542 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
CQ44417 - Remove OID_GEN_MEDIA_DUPLEX_STATE code from NX1 NDIS driver
Change:
Remove OID_GEN_MEDIA_DUPLEX_STATE from driver's supported OIDs list.
Impact:
None.
3. Request:
Add support for 57765 family devices.
Change:
Merge code from the branch for 57765 family devices.
4. Request:
Add support for 5717 family devices.
Change:
Merge code from the branch for 5717 family devices.
2. Problem:
CQ43851- Device disappears after multiple iterations of copy/compare test
on specific OEM system.
Cause:
Due to design limitations, sometimes L1 exit transition does not cause the
serdes pll to resume
normal operation. When this happens the LOM will not be able to response
to PCIE transaction
and may be removed from the PCIE enumeration tree.
Change:
Implement the workaround to disable Pll Powerdown in L1 by writting 0x7080
to register offset
0x7d54 afer every chip reset.
Note:
It's for 57760/57780 family devices only.
Enhancements:
=============
1. Request:
CQ44014 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
WLK1.4 RTM : Plug and Play Driver Test BSOD in Win2k8 R2 IA64
Cause:
During PNP test, device will be removed and the memory space (bit_1 of reg
0x04) is cleared.
When driver is trying to do register access through address (BAR + register
offset), it causes system
BSOD with bugcheck code 0x124.
Change:
Make driver not to touch any register after receiving "Surprise Removal"
Event Notification from NDIS.
Also make driver to de-register interrupt, cancel timers and free resources
in MiniportHaltEx function.
Impact:
None
Enhancements:
=============
1. Request
CQ43619 - Update Product_Version String to 14.2.0 for Release 12.4.
Change:
Change the product version as required.
Impact:
2. Request:
CQ43834 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
Enhancements:
=============
1. Request
CQ42957 - NQS Transmit Filter does not filter IP Payload
Change:
Implement the change as request.
Impact:
None
2. Request
CQ43472 - Disable CQ35234 WAR for specific OEM platform.
Change:
Make inf change to disable CQ35234 workaround for specific OEM systems.
Impact:
None
2. Problem:
CQ42470 - System gets blue screen (with bugcheck D1) during sleep stress
tests.
Cause:
When driver is processing RST in DPC and the value returned from NDIS marco
"NDIS_CURRENT_PROCESSOR_NUMBER"
is larger than RSS rings number, this will cause driver to unexpectedly
assign NULL value to another member
(called pRxJumboBdVirt) in driver's low device block structure. Then system
gets BSOD when driver is running
the code with pRxJumboBdVirt when system is resuming from Standby.
Change:
Ensure RstParam in driver's low device block is never accessed with a
subscript that is too large.
Impact:
None.
3. Problem:
CQ42667 - PM Offload doesn't work when it's enabled.
Cause:
IPv6 Neighbor Advertisement packet is broken with uninitialized TX Mbuf
header field.
Change:
Make driver to zero out TxMBuf from 0x9E80-0x9FFF for PM Offload Firmware.
Impact:
None.
Enhancements:
=============
1. Request:
CQ42236 workaround - Driver needs to implement the following procedures
before any GRC or CPU reset
1. write 0x7d54 with 0x7080 (to disable l1 pll pwrdwn), then
2. do a dummy read of 0x7d54 to flush the write, then
3. issue GRC or CPU reset.
Change:
Make driver change as requested.
Impact:
It's for 57760/57780/57790 family devices only.
2. Request:
CQ42769 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
CQ42223 - Win7 - Flow Control Setting is disabled with the Gold 12.2
Driver.
Cause:
The inbox driver has disabled the settings per MSFT's request. When
upgrading driver
, the disabled settings persists, instead of changing to Auto.
Change:
Make inf change to delete the Flow Control setting and reset the setting to
Auto.
Impact:
None.
3. Problem:
CQ42247 - 5761(LOM) : PM offload dies after few iterations
Cause:
PM Offload firmware was locking/unlocking thw SW arbitration bit during
initialization
to access the NVRAM. Apparently there was some timing issue with the driver
on OEM system
during the downloading of the firrmware causing the SW arbitration bit to
stay lock thus
causing the firmware not to run.
Change:
Resolution is to remove access to NVRAM since firmware does not need any
info from NVRAM.
Impact:
None.
Enhancements:
=============
1. Request:
CQ39683: Cilai detects Receiver Error when the Link Transition between
L0s/L0
Change:
workaround: shorten the delay of the electrical idle signal from serdes
a. write register 0x7e70 bit [4:0] with 0x0c during device initialization
or device reset
b. write all ones to register 0x110 (correctable error status).
2. Request:
CQ40054: PLL power down common mode voltage glitch on Tx
Change:
workaround: use low-power transmitter mode during device initialization or
device reset
changed PCIe SerDes register values to the following
a. Register 0x15 in block 0x8610 = 0x47b.
b. Register 0x1A in block 0x8010 = 0x4038.
3. Request:
CQ41813 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
4. Request:
Add Windows 7 Power Management Offload support for 57760/577805/7790
Change:
Support for this new feature is added in this driver version.
Impact:
The PM Offload firmware is now bound to the driver, so any update
will require a driver spin moving forward. Also, PM Offload is not
compatible with ASF, so will be disabled if ASF is enabled.
5. Request:
CQ42216 - Update friendly name for OEM projects
Change:
Change device friendly name as request.
Impact:
None.
2. Problem:
CQ41352 - BCM5754M fails WOL on ICMP PING test
Cause:
When pattern size is less than 64 bytes and byte mask is less than 8 byte,
driver will try to
set "end of wol comparison pattern" at 64 bytes (the minimun ethernet
packets) but it never happens.
Without setting "end of wol comparison stream", device is unable to detect
wol packet correctly.
Change:
Make driver to set "end of wol comparison pattern" correctly.
Impact:
None.
3. Problem:
CQ41284 - Win7-PM offload test failed -5705 failed to send arp response when
system
stayed in sleep mode with PM Offload enabled.
CQ41280 - Win7- TCP SYN v4 / v6 cannot wake up system, but it works fine
when PM
offload is disabled.
Cause:
The 5705 has an errata which prohibits using the internal CPU instruction
cache.
There is some register contention between the driver and the PM Offload
firmware
Change:
The firmware in this version disables the instruction cache.
The driver is changed to load the PM Offload firmware only once power down
chip
setup is done.
Impact:
None.
4. Problem:
CQ41583 - Win7 PM Offload (both ARP and NS) stops working after 3 responses
Cause:
The 5761 device was not configured properly for PM Offload.
Change:
Configured the device properly.
Impact:
None.
Enhancements:
=============
1. Request:
CQ40123 - Add ability for NX1 driver to determine non-brcm iSCSI boot
environment.
Change:
Implemented iBFT logic to search for iBFT in both ACPI table as well as low
memory region.
Impact:
None.
2. Request:
CQ41460 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Problem:
CQ41003 - System gets BSOD on NDISTest 6.0 - 1c_registry test
Cause:
During 1c_registry test, the registry key "RSSRxRing" is set with invalid
value
and this makes driver's RSS code can't work properly.
Change:
Adding boundary check to protect driver from using invalid registry key
values.
Impact:
None.
Enhancements:
=============
1. Request:
Driver needs to disables L1 PLL power down when Ethernet link is 10 half
duplex or 100 half duplex,
in additional to disabling CLKREQ.
Change:
Set bit 7 (L1 PLL Powerdown Disable) of MAC register 0x7d54 for 10H and
100H.
2. Request:
Initial RSS V2 support.
Enhancements:
=============
1. Request:
CQ40735 - NX1-Need to add PM offload support Windows7's.
Change:
Make inf change to add ARP & NS PM offload registry keys for devices which
support PM Offload.
Impact:
None.
2. Request:
Add support for Windows 7 Receive Side Throttling.
Change:
Support for this new feature is added in this driver version.
Impact:
None.
2. Problem:
CQ40241 - APE shared memory initialized/updated incorrectly on Vista-x64
and XP-64.
Cause:
Driver uses function RtlZeroMemory() to initialize APE shared memory while
it
is loaded. However, the function will make x64 OS to generate invalid
"Memory Write"
to device when the virtual address (mapped to device APE shared memory) is
used as
input address. Similiar issue happens when driver is trying to copy message
data
(eg. date/time) from application/BMAPI to APE shared memory using
NdisMoveMemory().
Change:
Use other addressing method to make OS generate "Memory Write" with correct
data
while driver is trying to initialize/update device's APE shared memory.
Impact:
None
3. Problem:
CQ39984 - WinFWUPG (57760 with ATMLH742) after upgrade asf, run "crc" will
get checksum failed.
Cause:
Driver does not handle eeprom page write correctly. When page write crosses
the page boundary
the data word address will roll over and the previous data will
overwritten.
Change:
Make driver to handle eeprom page write properly so that eeprom is
programmed correctly.
Impact:
None
4. Problem:
CQ40503 - 5761/5761s: The LED shows Green in S5 mode when WOL speed set
10Mb and DASH enabled.
Cause:
Driver doesn't inform DASH firmware WOL speed correctly and this makes DASH
set link
speed to 10Mbps (eg. Lowest VAUX Link Speed setting in mancfg) when VMain
is removed.
Change:
Driver to update DASH with correct WOL speed in driver's shutdown routine.
Impact:
None
Enhancements:
=============
1. Request:
CQ40309 - Change WoL Speed to default to LSA option for OEM Platforms
Change:
Make inf change as request.
Impact:
None
2. Request
CQ40377 - For Release 12.2, Please Update Product_Version String for NDIS
5.1 and later Drivers to 14.1.0
Change:
Change the product version as required.
Impact:
None
3. Request:
Enhance OTP programming reliability.
Change:
Driver needs to implement the following steps whild doing OTP program.
1) To use external clock for the programming.
2) Try to reprogram OTP bit up to 16 times if the OTP is stuck at 0.
3) Do OTP init command immediately after a OTP write.
Enhancements:
=============
1. Request:
Do not write OTP bits if the bits have been set already.
Change:
Read data from OTP first and then compare the "orignal data" and "data to
write",
if the bits in "data to write" have set already, driver will skip the OTP
write.
Impact:
None.
2. Request:
CQ39715, CQ39767 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
3. Request:
CQ39595 - Disable CQ35234 GPHY workaround for specific OEM systems.
Change:
Make driver to skip CQ35234 workaround for specific OEM systems.
Impact:
Without CQ35234 workaround, 5784M/5764M may not assert Wake signal one the
first Wake
packet received. This happens when device is connected to some particular
switches.
4. Request:
CQ39628 - Enhance advanced properties to allow the user to define the
amount of 'RSS queues'
Change:
For NX1 RSS capable devices, an option in the driver advanced property will
allow
the user to change the amount of RSS queues in increments of the power of
2.
Impact:
None.
5. Request:
CQ39839 - Change OEM's INF to hide LSO option for specific 5715 devices.
Change:
Add hidden registry key to disable LSO option in OEM inf files.
Impact:
None.
6. Request:
CQ39523 - add min/max/default option for Tx + Rx buffers
Change:
Create an advanced driver option that allows the end user to select three
different
options for the amount of Tx + Rx buffers based on 2 part ID's.
Impact:
The change is for NX1 PCI-E based Server chips only: 5721, 5722, 5723 and
5714/15
2. Request:
CQ39534 - keep original service name in OEM specific inf files.
Change:
Restore the service name from b57xxx back to q57xxx.
Impact:
None.
3. Request:
Driver needs to do register read at CPMU block (0x36xx) to return the same
value
twice before returning the read value.
Change:
Follow the request while handling register read at CPMU block.
Impact:
The workaround is applied on 57760/57780/57790 only.
4. Request:
Set bit 0 in the GPHY Expansion Register 75 to address the Template issue.
Change:
Make sure bit_0 of expansion register 75 is set during GPHY setup.
Impact:
This change applys to 57760/57780/57790 only.
5. Request:
CQ39644 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
Enhancements:
=============
1. Request
CQ39443 - Ndis 5.x and 6.0 driver should have product version key set to
14.0.0 in 12.0
Change:
Change the product version as required.
Impact:
None
2. Request
CQ39534 - OEM requesting for b57xxx driver starting with release 12.0
Change:
Make change on OEM specific inf files as OEM request.
Impact:
None.
3. Request:
CQ38522 - Enable OTP programming capbility for 57760/57780/57790
Change:
Implement private OIDs so that application can get access to OTP through
BMAPI.
Impact:
None
4. Request:
Enable Jumbo Frame (3K) support for 5761/5761E
Change:
Make 5761/5761E be able to process Jumb0 Frame packets.
Impact:
None
2. Request:
CQ39285 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
3. Request:
Add support for Windows 7 Power Management Offload
Change:
Support for this new feature is added in this driver version.
Impact:
The PM Offload firmware is now bound to the driver, so any update
will require a driver spin moving forward.
Also, PM Offload is not compatible with ASF, so will be disabled
if ASF is enabled.
2. Problem:
CQ37900 - Link down issue on some OEM platforms.
Cause:
The driver did not always start a software timer used to establish link on
devices
equiped with a Serdes.
Change:
Always start this timer when appropriate.
Impact:
None
3. Problem:
Remove a lock in HaltAdapter() which caused BSOD reported by MSFT.
Cause:
Driver was calling NdisMSleep() while holding a spin lock and this causes
assertion failed: KeGetCurrentIrql() < DISPATCH_LEVEL
Change:
Make driver not to acquire a spin lock while calling NdisMSleep().
4. Problem:
CQ38082 - 3rd Party Filter Driver with our NXI Device Causes Loss of
Connectivity
Cause:
Some packets were being held by a filter driver. There were insufficient
packets
available to have our batching logic send them to NDIS when received or to
put newly
free packets to the chip.
Change:
Added code to keep from running out of packets. Also if Jumbo Frames are
supported,
do not batch packets to NDIS or the chip, but process them immediately.
Impact:
None.
Enhancements:
=============
1. Request:
CQ38142,CQ38351,CQ38505 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
2. Request:
Add support for 57760 A1 device.
Change:
Make driver to keep all SW A0 workarounds for A1.
3. Request:
Add GPHY Green Mode support for 57760.
Change:
Whenever link is at 1G and cable length is less than 10m, driver
will enable device GPHY Green Mode for saving power.
4. Request:
Suppress 5761 "PCI Simple Communication Controller" device's yellow bang.
Change:
Make inf change to hide device (Device ID=0x160A) from Device Manager.
5. Request:
Failing to deallocate memory after call to
NdisAllocateMemoryWithTagPriority in UM_Initialize.
Change:
Freeing the allocated memory (for pUmDevice) when
UM_SetAdapterRegAttribute() return failure.
6. Request:
Bypass IPSEC info in NBLs and the codes if IPSEC offload is not supported.
Cause:
Driver is trying to handle IPSEC NBL on 5780 which doesn't support ipsec
offload and
then it causes bugcheck (code 0xD1).
Change:
Add safe guard code to bypass IPSEC info in NBLs if device doesn't support
IPSEC offload.
2. Problem:
CQ38035 - jumbo frame size is reported differently by 14 compared
to actual value for 5703/5704
Cause:
Introduced while fixing CQ34267 and CQ33947
Change:
Backing out both above CQ fixes. The implementation before
these changes was correct, and was also consitant
with NXII. The RxMtu the driver exports excludes the
Ethernet frame header.
Impact:
The Jumbo packet size observed on the wire will be larger than the
user specified value by 14 bytes, which is the Ethernet header size.
Enhancements:
=============
1. Request:
CQ37512 - Wrong friendly name for 5787M device.
- Add 4 part ID support for specific OEM.
Change:
Correct friendly name and add IDs
Impact:
Resolve CQ37512.
2. Request:
CQ37758 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
Resolve CQ37758.
3. Request:
CQ37959 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
None.
4. Request:
Adding support for 57760
Change:
Modify code to add support for 57760.
Impact:
None.
3. Problem:
CQ37241 - B57driver unable to modify OOB settings through BACS3
or Bmcc.
Cause:
There was a bug in the driver NVRAM access routines.
Change:
Remove a coding error which could corrupt the NVRAM content.
Impact:
None
4. Problem:
CQ37293 - Ndis 5.x and 6.0 driver should have product version key set
to 12.8.0 in 11.7.
Cause:
Incorrect product version in the infs.
Change:
Corrected the infs.
Impact:
None
5. Problem:
CQ37185 - b57win:There are a lot of error events in event viewer
when loading the b57win driver.
Cause:
An intermittent hardware error is not handled correctly.
Change:
Handle the error properly.
Impact:
None
Enhancements:
=============
1. Request:
Remove SHA_1 (IPSec authentication algorithm) support for 5761S/5761SE.
Cause:
SHA_1 algorithm is not required.
Change:
Make driver not advertise the support of SHA_1 algorithm.
Impact:
None
2. Request:
CQ37321 - Add 4 part ID support for specific OEM.
Change:
Added IDs
Impact:
Resolve CQ37321.
Enhancements:
=============
1. Request
CQ37065 - Ndis 5.x and 6.0 driver should have product version key set to
12.8.0 in 11.7
Change:
Change the product version as required.
Impact:
None
2. Request
Remove IPSEC support for 5761/5716E for 11.7
Change:
Make inf changes to not support IPSEC for 5761/5761E
Impact:
None.
2. Problem:
CQ36025 - NIC b5761m shows only 10Mbps speed when system boots from iSCSI
boot with BootCode v3.57.
Cause:
Durinng iscsi boot, driver will do an additional chip resest in driver
initialization.
But driver does not wait for bootcode completing initialization and it
continues to get eeprom info
from shared memory. Then driver gets zero value from shared memory and this
make driver assign wrong
PhyId for 5761 GPHY and program 5761 GPHY incorrectly.
Change:
Make driver to wait until bootcode finishing initialization while doing
additional chip reset.
Impact:
None.
2. Problem:
CQ36161 - Win 7_inbox driver - Per Msft requirement WOL features should not
advertised in the
Advanced network properties..
Cause:
This feature is adverstised in the inf.
Change:
Updated the inf.
Impact:
None.
3. Problem:
CQ33519 revisited - 5784M-LoopBack(Ext) test Fail
Device doesn't get linked and test application can't receive enough packets
during the test.
Change:
Disable Link Speed/Link Aware/Airplane Power Mode and avoid setting PHY
trim registers
while in external loopback test. Made the change for 5761 as well
Impact:
None
4. Problem:
IPSec related failures with newer DTM
Change:
Various dode changes to correct the failures.
Impact:
None
5. Problem:
CQ36558 - IBM requesting non-Fiber name for the 5714S (already have 4 part
match)
Change:
Updated the infs.
Impact:
None
Enhancements:
=============
1. Request:
Added support for Mazama LSI
Change:
Extensive code changes to support this new device
Impact:
None.
2. Request:
CQ36164 - Add 4 part ID support for specific OEM
Change:
Added IDs
Impact:
Resolve CQ36164.
3. Request:
CQ36432 - Add 4 part ID support for specific OEM
Change:
Added IDs
Impact:
Resolve CQ36432.
4. Request:
Add 2 part IDs for 5761S/5761SE in 11.7 release
Change:
Make inf change to add 2 part IDs for 5761S/5761SE.
Impact:
None
5. Request:
Restore IPSEC functionality support for 5761/5761E/5761S/5761SE
Change:
Changed the infs to enable IPSec.
Impact:
None
6. Request:
OEM requesting non-Fiber name for the 5714S
Change:
Make inf change to apply OEM's requirement.
Impact:
None
7. Request:
CQ36447 - OEM DT/MB :Add 4 parts ID to Windows driver for Hanks and Paltrow
Change:
Updated the infs.
Impact:
None
8. Request:
Add support for 5761S
Change:
Updated the infs.
Impact:
None
9. Request:
Need NVRAM access optimisations for 5761
Change:
Performed requested optimisations to minimize NVRAM wear.
Impact:
None
10. Request:
CQ36770 - Add 4 part ID for OEM systems
Change:
Updated the infs.
Impact:
None
2. Problem:
CQ35948: Bad TX performance BX630S2 W2K8
Cause: The Tx code path runs out of credit on some of the processors, so
aborts without
sending anything. This is occuring because a software timer
failed to schedule the DPC responsible for calculating this credit. The
DPCs were not
scheduled for more than 4 procs on x86 systems, and 8 procs on x64 systems.
This driver version fixes this problem
Impact:
None
3. Problem:
35447 - Windows 7 Inbox: Please Make INF Header consistent with NXII
Driver INF.
Cause:
Change:
Changed the inbox inf as requested.
Impact:
None.
4. Problem:
35449 - Windows 7 Inbox: Incorrect "Provider" String under [Version) in
Driver INF.
Cause:
Change:
Changed the inbox inf as requested.
Impact:
None.
5. Problem:
35450 - Windows 7 Inbox: The Default Setting for Flow Control Should be
Disabled per MSFT
Requirements.
Cause:
Change:
Changed the inbox inf as requested.
Impact:
None.
6. Problem:
35464 - Windows 7 inbox: Power Management Feature (WOL) Not Disabled in
the INF per MSFT Requirement
Requirements.
Cause:
Change:
Changed the inbox inf as requested.
Impact:
None.
2. Problem:
CQ35234 - 5784M/5764M will not assert Wake signal one the first Wake magic
packet received.
Cause:
When device is connected to particular switch with specific PHY at 1G bps,
with wol speed
set to lowest speed, driver will program GPHY to advertise 10M bps support
and restart
auto-negotiation while system is going from S0 to S3/S4/S5. In the
meantime, 100tx or 1000t
idle sent from the link partner can confuse the local 10M bps polarity
state machine, which
in turn can corrupt the first 10Mbps packet received.
Change:
Make driver workaround to reset link porlarity state machine and restart
auto negotiation.
Impact:
Resolve CQ35234.
3. Problem:
CQ35297 - Soledad GPHY scripts.
Cause:
GPHY WAR applied to 5784 need to be applied to the 5761 and 5761E.
Change:
Implemented the WAR.
Impact:
None.
2. Problem:
CQ34764 - DASH - B5761-B0 failure to wake from an interesting packet and
Magic
packet when DASH enabled.
Cause:
DASH behaviors is different with ASF for WOL. So driver need to handle an
interesting
packet and magic packet like no ASF. Also there was a bug when restoring
DASH setting
after reset which caused WOL was not enable.
Change:
handling interesting packet and magic packet as no ASF for DASH. The boot
code v3.53
or later are required for this fix.
Impact:
Resolve CQ34764.
3. Problem:
CQ35436 - add changes for cq35021 and cq35105 to 11.4 branch.
Cause:
The changes were made to the 11.0b branch for this OEM. The request is to
propagate
the same changes to the 11.4 (main) branch.
Change:
Inf changes made.
Impact:
None.
4. Problem:
CQ35315 - WinFwUpg: Fail to upgrade iSCSI firmware in 5761E/5761..
Cause:
A programming error in the driver NVRAM routine was causing NVRAM
corruption.
Change:
Corrected the affected routine.
Impact:
None.
5. Problem:
CQ35313 - WinFwUpg: Failed to upgrade PXE firmware in 5761E/5761
Cause:
A programming error in the driver NVRAM routine was causing NVRAM
corruption.
Change:
Corrected the affected routine.
Impact:
None.
6. Problem:
CQ35311 - WinFwUpg 5761E/5761 corrupt NVRAM. System restart will fail to
boot
Cause:
A programming error in the driver NVRAM routine was causing NVRAM
corruption.
Change:
Corrected the affected routine.
Impact:
None.
2. Problem:
CQ35339 - B5761-NDIS6.0 driver upgrade and disable will blue screen with
10.95.0.0
Cause:
There is a code error while driver is trying to acquire/release APE GRC
reset mutex
before/after issueing a device GRC reset.
Change:
Correct the code error.
Impact:
Resolve CQ35339.
2. Problem:
CQ35105 - INF Service section is incorrect for specific OEM system.
Cause:
There is a typo in INF Service section for one OEM system.
Change:
Make inf change to correct services section string.
Impact:
Resolve CQ35105.
3. Problem:
CQ34822 - Network traffic drops after SUT wakes up from S3/S4 while WOL is
disabled.
Cause:
The reason why device doesn't pass traffic after system resuming from S3
(with
"Allow computer to turn off xxx" is unchecked) is because the upper layer
doesn't use
the OID_OFFLOAD_ENCAPSULATION OID to set the task offload encapsulation
settings
of an underlying miniport, and this makes our driver fails to send certain
packets
which need driver/device to take care of checksum offload tasks.
Change:
Make driver to cache/restore the OID_OFFLOAD_ENCAPSULATION parameters
across suspend/resume.
Impact:
Resolve CQ34822.
4. Problem:
CQ34959 - Modify NDIS 6.0 driver WoL behaviour when the "allow the computer
to turn off
the device to save power" box is unchecked
Cause:
When driver's halt handler is called, driver enables device magic packet
wol function according
to nvram wol setting.
Change:
Make driver to take advantage of a HaltAction flag in the halt handler,
then driver can use this
flag to determine the reason why it's Halt handler is called and behave
accordingly.
Impact:
Resolve CQ34959.
5. Problem:
CQ34904 - B57Vista: DASH FW stops responding when the Windows driver is
disabled
Cause:
The MacCtrl register is not programmed correctly when
the driver transitions to S3/D3.
Change:
Program the MacCtrl correctly.
Impact:
None.
6. Problem:
CQ35107 - In BACS enabling ASF and adjusting Speed&Duplex setting
at the same will cause link loss
Cause:
The link detect timer was not restarted after BACS called
T3_OID_DIAG_SUSPEND/T3_OID_DIAG_RESUME
Change:
Restart the link detect timer.
Impact:
Resolve CQ35107.
7. Problem:
CQ35060-FJ - low chariot RX through is observed on the release 11.0b Vista
amd64 driver,
but not on previous driver
Cause:
The changes which caused low performance was only for 5788(NON-DAC) and
there was a CQ35248
for it. The LM_IsAsicBondId5788 define was not correct which caused 5786
saw the problem.
Change:
Correct LM_IsAsicBondId5788 define.
Impact:
Resolve CQ35060.
8. Problem:
CQ34659- ndis6: Remove LSO option in driver property for 5703 and 5704
but not on previous driver
Cause:
The NDIS6 driver does not implement LSO for these chips, so there is no
need to have the
option in the driver advanced property page
Change:
Removed the LSO option from the infs for these chips.
Impact:
None.
9. Problem:
CQ34743 - MTU size needs to be 4 bytes larger with Management FW enabled
Cause:
The MtuSize register needs to be programed with a value larger by 4 bytes.
We need this change to allow the firmware to process max size VLAN packets
while the driver is running.
Change:
Increased the MtuSize register by 4 bytes.
Impact:
No impact.
10. Problem:
DASH processor stalls when the driver applies a GRC reset
while the DASH processor is also accessing the GRC reset register
Cause:
A LSI bug is causing this behavior. This driver implements the LSI
recommended workaround.
Change:
The workaround requires the driver to acquire a mutex register before
issuing the GRC
reset. The driver also waits 10us before releasing the mutex after the GRC
reset
Impact:
DASH firmware 0.96 or later is required for this fix to work.
11. Problem:
CQ35248 - OEM system has a RX performance issue w/ 32bit Vista driver
v10.62.1.2.
Cause:
5788 does not support dual address cycles and it cannot transmit a 64-bit
address to a target
device. So driver has a workaround to allocate DMA buffers under 4G for
5788. However, the
cache type driver using for memory allocation is incorrect and this causes
performance drop.
Change:
Make driver to use correct cache type while doing memory allocation.
Impact:
Reseolve CQ35248.
12. Problem:
CQ33869 - 5704C has poor performance in WinPE 2.0 in a system with > 4
cores
Cause:
There are some scenarios, we can be asked to send continuously without
having a chance to
cleaning up the transmitted queue hence we are running out of UM_PACKET.
Change:
Clean up the tx queue if we see no UM_PACKET in the send path if we see no
UM_PACKET
instead of giving up
Impact:
Reseolve CQ33869.
Enhancements:
=============
1. Request:
CQ34665 - Add 4 part ID support for specific OEM
Change:
Added IDs
Impact:
Resolve CQ34665.
2. Request:
CQ34272 - Change device reference name for specific OEM system.
Change:
Change device reference name specified by OEM.
Impact:
Resolve CQ34272.
1. Problem:
BSOD on IA64 with OEM specific teaming implementation and MMA (no CQ).
Cause:
There was an infinite loop in the driver's handling of this NDIS OID.
Change:
Fixed the looping code.
Impact:
None
2. Problem:
The fix for CQ34762 had a bug.
Cause:
passed a wrong parameter to IsSoledadAbove().
Impact:
The fix is required for boot code v3.50.
2. Problem:
1c_ndisrequestcov may crash on newly added OIDs for new devices.
Cause:
Buffer size is incorrectly determined.
Change:
Change the driver to correctly detect the buffer size for affected
OIDs.
Impact:
Fixed the BSOD on 1c_ndisrequestcov.
2. Request:
CQ34724 - Add 2 part ID for 5761e, 5761 on 11.4 release
Change:
Make inf change to add 2 part ID for 5761/5761E.
Impact:
None
2. Problem:
CQ34086 - B5761-A2 fails to wake from an interesting packet
Cause:
The latest 5761 NIC has a rework which swaps GPIO0 and GPIO2.
Change:
For 5761 NIC only, swap GPIO0 and GPIO2 while switching adapter to
auxiliary power.
Impact:
Resolve CQ34086.
3. Problem:
Need to use new DDK to compile the driver.
Change:
Use W2k8 RTM 6001.18000 DDK with Microsoft's patch kit to compile the
driver
Impact:
Met Microsoft's requirement.
4. Request:
CQ33891 - Add 4 part ID support for specific OEM
Change:
Added IDs
Impact:
Resolve CQ33891.
Enhancements:
=============
1. Request:
CQ34305 - Remove Soledad two-part ID's for 11.0b
Impact:
Resolve CQ34305.
2. Request:
CQ34060 - WOL speed and RSS default options are incorrect for OEM system.
Change:
Make inf changes to have LSA option as the default and RSS enabled for OEM
system.
1. Request:
CQ34298 - Product version string for 4.4 should be 12.4.0 for NX1 NDIS6.0
and NDIS 5.x.
Change:
Changed the product version
2. Problem:
CQ31990 - 5761/5761E Missing EPA support for NDIS 6 amd64 driver
Cause:
The WOL speed setting for 5761/5761E is set to Auto in previous released
driver.
Change:
Change WOL speed to "Lowest Speed Advertised" for EPA support.
Impact:
Resolve CQ31990.
3. Problem:
CQ34001 - BSOD when VLAN enabled in iSCSI boot in W2k8
Cause:
VLAN is not supported for iSCSI boot.
Change:
This problem is fixed after sync up the code to 10.7.
Impact:
None.
4. Problem:
CQ32759 - BSOD when loading NDIS6 driver on IA64 systems
Cause:
Bugs in the macros the driver uses for register accesses are causing
illegal bus accesses. The macros were also incorrect for
x64 platforms.
Change:
Fixed the macros
Impact:
None.
5. Problem:
CQ34146 - Remove 5723 2 part ID from 11.0b branch upon SW Lockdown
Cause:
Change:
Removed the ID.
Impact:
None.
6. Problem:
Replace the RxMtu keyword with *JumboPacket in OEM specific infs to
conform to MSFT guidelines.
Cause:
Change:
Made the replacement
Impact:
None.
7. Problem:
CQ34267 - OID_GEN_MAXIMUM_FRAME_SIZE is returning a value of 1514
after changing default *JumboPacket mtu
Cause:
Mtu size for Jumbo packets in inf is changed to including Ethernet
header.
Change:
Adjust the Mtu size accordingly.
Impact:
Resolve CQ34267.
Enhancements:
=============
1. Request:
CQ33581 - NX1: implementing NDIS_ENCAPSULATION_IEEE_802_3_P_AND_Q_IN_OOB
Impact:
None.
2. Request:
CQ33775 - VLAN ID maximum range should be 4094.
Change:
Limit VLAN ID maximum range to 4094
Impact:
Resolve CQ33775.
3. Request:
CQ33981 - IPSec offloading option should be removed in driver for release
11.0b.
Change:
Remove IPSec offload options for 5761/5761E.
Impact:
There is no IPSec offload support for 5761/5761E in this release.
4. Request:
CQ34060 - Add 4 part ID support for specific OEM
Change:
Added IDs
Impact:
Resolve CQ34060.
5. Request:
CQ34019/CQ34041 - Disable LSO support for specific OEM system
Change:
Make inf change to disable LSO for specific OEM system.
Impact:
Resolve CQ34019/CQ34041
2. Problem:
CQ33947 - Change *JumboPacket default MTU size to 1514
Cause:
The OEM is requesting that we default our mtu size for *JumboPacket to 1514
and not 1500. Note that our driver has already 'raised' the mtu size to
1514
when it sees 1500
Change:
Made the corresponding inf change to raise the default to 1514.
3. Problem:
CQ32554 - Need NX1 ia64 driver parameters to comply with MSFT standards for
NDIS6
Cause:
There is a discrepancy between the MSFT and Broadcom naming convention as
applied
to the *FlowControl keyword.
Change:
Changed the BRCM naming convention to match the one MSFT mandates.
4. Problem:
CQ32379 - Add 4 ID checking for new HP_BCS ia64 platforms
Cause:
Add new OEM ID to the IA64 infs.
Change:
Added new IDs.
2. Request:
Remove CQ33808 driver workaround for 5784M/5764M/5723.
Cause:
Change needs to be implemented before driver loads.
Change:
Remove driver workaround added in previous release.
Impact:
Bootcode v3.31 & selfboot patch v2.18 have the workaround to fix CQ33808.
3. Request:
CQ33925 - add four part IDs for 5764M
Cause:
New IDs
Change:
Change appropriate INF files to reflect new four part IDs.
Impact:
Resolve CQ33925
4. Request:
Merge 5761/5761E code from NDIS5.1 driver.
Cause:
NDIS6 driver must support full capabilities of the chip.
Change:
Add support for A.P.E. and BMAPI to NDIS6 driver.
Impact:
Completing support for 5761/5761E.
5. Request:
Repair bugs found during 5761/5761E merge from NDIS5.1 driver.
Cause:
Changes were pended until merge was completed.
Change:
Have NDIS6 driver initialize 5761/5761E and perform runtime tests for
actions required to support the chip the same as done in NDIS5.1 driver.
Impact:
Support for 5761/5761E NDIS6 and NDIS5.1 drivers is properly
synchronized.
Version 10.76.0.0 February 15, 2008
----------------------------------------
Enhancements:
=============
1. Request:
CQ33091,CQ33511,CQ33512,CQ32698,CQ33814,CQ33539 - Add new IDs for OEM.
Cause:
New IDs
Change:
Add new IDs
Impact:
Resolve CQ33091,CQ33511,CQ33512,CQ32698,CQ33814,CQ33539.
2. Request:
CQ33710 - Set WOLSpeed to LowestSpeedAdvertise for specific OEM EPA
enabled systems
Change:
Change inf files for specific OEM systems.
Impact:
Resolve CQ33710.
Enhancements:
=============
1. Request:
CQ33328 - Disable RSS by default for specific OEM systems.
Change:
Change inf files to disable RSS for specific OEM systems.
Impact:
Resolve CQ33328.
2. Request:
Remove CQ33752 driver workaround.
Change:
Remove driver workaround added in v10.74.0.0
Enhancements:
=============
1. Request:
Add GPHY APD and GPHY DLL Auto-Power Down for 5764M/5784M/5723 B0.
Change:
Driver needs to read the share memory to determine how the GPHY Auto Power
Down
feature is enabled/disabled by the user.
2. Request:
The GPHY workaround needs to be applied with the GPHY DLL Auto-Power Down
Bit set.
Change:
Set GPHY DLL Auto-Power Down Bit before applying GPHY workaround and then
restore
GPHY DLL Auto-Power Down Bit to original value.
Impact:
This is for 5764M/5784M/5723 B0 only.
Enhancements:
=============
1. Request:
CQ33328 - Add 4 part ID support for specific OEM
Change:
Added IDs
Impact:
Resolve CQ33328.
2. Request:
Disable Link Speed/Link Aware/Airplane Power Mode while running MAC
Loopback Test for 5764M B0.
Change:
Make driver to disable Link Speed/Link Aware/Airplane Power Mode while
running MAC loopback Test.
3. Request:
Implement CQ31680/CQ32765 CLKREQ workaround for 5764M/5723 Ax revision.
Change:
Clear bit_16 of register 0x7d00 and clear bit_29 of register 0x68A4.
4. Request:
Enable IPV6 LSO support for 5764M/5784M/5723
Change:
Make driver to advertise IPV6 LSO capability for 5764M/5784M/5723.
5. Request:
GPHY earl-wake-dac mode must be enabled before MAC 10mb rx only mode is
enabled.
Change:
Whenever driver issues a reset to the GPHY, GPHY early-dac-dac mode will be
disabled.
Driver needs to disable CPMU 10mb rx only mode before resetting GPHY. Then
later
driver can re-enable the 10mb rx only mode. It's for 5764M/5784M/5723 B0
only.
6. Request:
Implement new GPHY Workaround for 5784M/5764M/5723 B0.
Change:
Driver reads workaround parameters from OTP Memory and then configures GPHY
accordingly.
7. Request:
Enable IPV6 RX Checksum Offload for 5764M/5784M/5723
Change:
Make driver to advertise IPV6 RX Checksum Offload capability for
5764M/5784M/5723.
2. Problem:
CQ32991 - 5761 fails 1c_registry in ndistest 6.0 (test stops at testing
*SpeedDuplex).
Cause:
During 1c_registry test, the registry key *RSS is replaced with
random/invalid data and this
makes driver unable to be unloaded and 1c_registry can't start the next
test *SpeedDuplex.
Change:
Adding boundary check to protect driver from using invalid registry key
values.
Impact:
Resolve CQ32991 issue.
3. Problem:
CQ32886 - Ndis6: SUT locks up when running cable analysis test while
passing chariot traffic
Cause:
System hung while driver was trying to acquire a spin lock in
UM_CheckForHang(). Driver was
making two continuous main lock acquisitions. The first one came from
UM_QueryInformation(),
when BACS passed T3_OID_DIAG_SUSPEND to driver during the test. The second
one came from
UM_CheckForHang(), which was called by NDIS every two seconds.
Change:
Make driver doesn't acquire main lock in UM_CheckForHang while cable
analysis is still running.
Impact:
Resolve CQ32886 issue.
4. Problem:
CQ30853 - Soledad fails 1c_kernelcalls test script
Cause:
DbgBreakPoint() is used in free build driver
Change:
Remove DbgBreakPoint() from free build driver
Impact:
Resolve CQ30853 issue.
5. Problem:
CQ30850 - Soledad fails 1c_wmicoverage test script
Cause:
The WMI method that ndistest is using does NOT return any class derived
from Win32_PerfRawData class.
It only returns ��normal�� WMI classes. However, the WMI class we provided
is derived from Win32_PerfRawData
class and it's used for graphing driver data to perfmon.exe along with some
OS��s provided perf data.
Change:
Create a registry key to control driiver to enable/disable WMI perf counts.
Impact:
Resolve CQ30850 issue.
Enhancements:
=============
1. Request:
Change the Copyright information to include 2008 for all SW modules
Change:
Change the Copyright information to include 2008 in related files.
2. Request:
Implement driver workaround for 5764M GPHY related issues.
Change:
Add code changes for the workaround.
2. Problem:
CQ32692 - BSOD in Vista with driver while running common scenario stress
Cause:
Driver incorrectly cleans 5764M RX return ring producer index during system
suspend/resume
from sleep. This makes driver get stuck when OS is trying put system into
sleep again.
While OS is telling driver to put device into D3, driver can't complete IRP
(IRP_MJ_POWER
/ IRP_MN_SET_POWER) and this causes system BSOD with Bug check -
DRIVER_POWER_STATE_FAILURE.
Change:
Make driver to behave correctly - not clean 5764M RX return ring producer
index during
system suspend/resume from sleep.
Impact:
Resolve CQ32692.
3. Problem:
CQ33072 - NDIS6 driver fails infTest in WLK 1.1
Cause:
Inf strings under [ParamsNT8021p] section are non-localizable.
Change:
Replaced hardcoded text with localizable strings.
Impact:
Resolve CQ33072.
4. Problem:
CQ33122 - NDIS6 driver fails 2c_mini6rsssendrecv in Ndistest 6.0 of WLK 1.1
Cause:
There is a logical error in code and it makes driver can't disable RSS as
ndistest
expected while doing RSS disabling test with zero "Hash Function
Information" and
non-zero "Indirection Table Size".
Change:
Correct the logical error to make driver disable device RSS function
successfully.
Impact:
Resolve CQ33122.
5. Problem:
CQ32886 - Ndis6: SUT locks up when running cable analysis test while
passing chariot traffic
Cause:
NDIS may returns rx packets later under heavy traffic and driver will still
insert the returned
packets into rx producer ring after state machines have been halted. This
make driver falsely
think it's missing some rx packets and make driver fall into a waiting
loop. Besides, this also
causes driver to mess up it's rx producer index.
Change:
Collect rx packets from producer ring and insert them back to rx free list.
Impact:
Resolve CQ32886.
Enhancements:
=============
1. Request:
CQ32277, 32378, 32379 - Add 4 part ID support for specific OEM
Cause:
Added IDs
Change:
Added IDs
Impact:
Resolve CQ32277, 32378, 32379 issues.
2. Request:
CQs: 32719 - Add 4 part ID for specific OEM.
Cause:
Change:
Resolve CQ32719
3. Request:
Add support for 5764M A2 devices.
Change:
Make driver to keep all SW A0/A1 workarounds for A2
2. Problem:
CQ32128 - Bacs3: 5755 fails Cable Analysis and causes bacs to hang
Cause:
Some codes added for debugging purpose makes driver falsely report device
hange to OS.
Then OS makes calls driver's Um_Reset() to reset device during Cable
Analysis test.
Change:
Remove the codes that is for debugging purpose originally.
Impact:
Resolve CQ32128
3. Problem:
CQ32396 - 5723 - Add 2 part ID support on all INF files
Cause:
Missing 2 part ID.
Change:
Added the requested 2 part ID.
Impact:
Enhancements:
=============
1. Request:
Add support for 5764M A1 devices.
Change:
Make driver to keep all SW A0 workarounds for A1
2 Request:
Disable Link Speed Mode and Link Aware Mode while running MAC Loopback Test
for 5764M A0 & A1.
Change:
Make driver to disable Link Speed and Link Aware mode while running MAC
loopback Test.
3. Request:
For CQ31702 - SW needs to Configure LED Mode default to MAC Mode instead of
GPHY Mode
Change:
Configure LED Mode default to MAC Mode for 5764M A0 & A1.
CQs: 31811,31923 - Add 4 part ID for specific OEM & Enable Estar feature.
Cause:
Change:
Added new ID / Estar functionality
Enhancements:
=============
1. Request:
CQ31815 - Blue screen on boot if no network cable attached.
Change:
Remove codes that enables GPHY APD (Auto Powerdown) in driver. The GPHY APD
is now handled by
the CPMU when Link Aware is enabled.
2. Request:
CQ31619 - 5784M A0 failed DMA Write Engine Lock Up when Link Speed Mode
Enabled with
10Mb Traffic and Core clock is 1.5MHz
Change:
Slow down the core clock to 6.25Mhz in 10mb, Link Aware Mode or 10mb Link
Speed Mode for 5784M A0.
CQs: 31811,31923 - Add 4 part ID for specific OEM & Enable Estar feature.
Cause:
Change:
Added new ID / Estar functionality
Change:
Merged 5761 support code from 5761 branch.
Merged unified driver support code from 5761 branch.
2. Enhancement request
CQs: 31633 - Add 4 part ID for specific OEM & Enable Estar feature.
Cause:
Change:
Added new ID / Estar functionality
3. Enhancement request
Support 5784 controllers.
Change:
Merged 5784 support code from branch.
Cause:
CQ 27832 change should not be done when in loopback mode.
Change:
Avoid setting PHY trim registers when in gigabit loopback mode.
Cause:
Change:
Fixed the NT services section in the INF file for a specific OEM.
Add 4 part ID for specific OEM / Enable Estar feature for the following
CQs: 31104, 30937, 31070, 30668, 31097, 30650, 30652, 31098 , 30666
Cause:
Change:
Added new ID / Estar functionality
2. Bug Fix:
CQ 31277 - Bus type was reported as PCI-X instead
of PCI-E for certain adapters.
Cause:
The code path reading PCI bus capability was not correct for certain
adapters.
Change:
corrected the code path logic to read the correct PCI bus capability.
---------------------------------
1. Bug Fix
CQ31091: Some INFs for NDIS 6 Using Incorrect Registry
Value for 1 Gb Full Setting
Cause:
Non-contigious values in NDIS6 implementation
Fix:
Changed three '5's to '6' in INF files
---------------------------------
1. Enhancement
CQ29991 Allow selection of 1Gbps full duplex
Cause:
Change in mappings with NDIS 6 doesn't allow NDIS 5 implementation
to work.
Change:
Changed all 8200 to 6 (1Gbps Full Duplex) in infs. Change driver to
map NDIS 6 value of 6 to 8200 (0x2008), our internal value.
---------------------------------
1. Bug fix
Cause:
Enabling RSS actually reduces performance in some scenario.
This is seen for example during performance tests with only
a few TCP connections. This is also seen on competing
products.
Change:
The previous fix removed support for RSS completely for some
platforms which is not desired. In this version, RSS is only
disabled, and can be re-enabled if needed.
2. Bug Fix
CQ31064: Unable to select 10/100Mbps speeds for 5714c & 5703c chips
Cause:
Non-sequential numbers in ParamsC registry key
Change:
Numbers resequenced.
---------------------------------
1. Enhancement
CQ29991 - Changed media type from 8 to 8200 to be consistent with
previous values. Eliminate registry key deletion.
2. Bug Fix
Remove HKR,,RequestedMediaType under [DelReg.ParamsC] section.
Added Missing MSI supported entries.
---------------------------------
1. Enhancement
CQ29991 - Need the option to limit Auto-Negotiation speed to 1 Gig.
Change:
Added feature for requested two part IDs
2. Enhancement
CQ30180 - Add new part
Change:
Added new part for specific OEM
3. Enhancement
CQ30832 - Inhibit behavior for specific OEM part
Change:
Changed inf to set flag to zero to inhibit behavior in driver
---------------------------------
1. Enhancement
CQ30670 - disable LowPower mode for a requested 4part ID, when WOL is
disabled and ASF is not present.
Cause:
For the 5787M, when ASF is not present and WOL is disabled, on entering S3,
driver will allow bootcode to put the LOM into IDDQ
LowPower Mode.
An OEM request that IDDQ LowPwr mode be disabled for one selected
platform.
Change:
Prevent the bootcode from putting our LOM into IDDQ LowPwr mode on
entering S3 for the requested platform.
---------------------------------
1. Bug fix
Cause:
Change:
Enabled missing EPA functionality
---------------------------------
1. Bug fix
Cause:
Enabling RSS actually reduces performance in some scenario.
This is seen for example during performance tests with only
a few TCP connections. This is also seen on competing
products.
Change:
The previous fix removed support for RSS completely for some
platforms which is not desired. In this version, RSS is only
disabled, and can be re-enabled if needed.
2. Bug fix
Cause:
Change:
EPA enabled
----------------------------------------
1. Enhancement request
----------------------------------------
1. Enhancement request
Cause:
Change:
2. Bug fix
Cause:
Enabling RSS actually reduces performance in some scenario.
This is seen for example during performance tests with only
a few TCP connections. This is also seen on competing
products.
Change:
Disabled RSS on some platforms where RSS is unlikely to be
useful.
3. Bug fix
CG29916: Disable hardware fix that causes MAC loopback test to fail
frequently when tested at 10Mbps (full or half duplex).
4. Enhancement request
5. Bug Fix
CQ29927: Machine appears to freeze for several seconds when driver loads.
Cause: Trying to allocate 640KB for LSO coalesce buffers can fail and
retrying by reducing each attempt by 64KB will give the appearance that
the system is not running properly.
----------------------------------------
Bug Fix
Cause:
Change:
----------------------------------------
1. Bug Fix
CQ29868 10.43.0.0B Vista x86 fails chkinf test in DTM
Cause:
Change:
Fixed typo in the inf.
----------------------------------------
1. Bug Fix
CQ29810 - 5756ME Missing RSS, IPv6 Checksum Offload and IPv4/IPv6 LSO v2
in
NDIS 6 drivers
Cause:
Change:
Restored the RSS, IPV6 and offload capability for this device
2. Bug Fix
Cause:
Change:
3 . Bug Fix
we discovered that CO for IPV6 and LSO-V2 for IPV4 are missing for
5754 - 167A
5755M - 1673
5756M - 1674
5754M - 1672
5787 -169b
Cause:
Change:
Cause:
fw_tcpseg.h was checked into VSS and not PerForce.
Change:
Copy fw_tcpseg.h to PerForce projects for NDIS3-5 and NDIS6.
Cause:
More issues to fix
Change:
Fixed the reported missing implementation
2. Enhancement request
CQ28488 PnP product_version entry needs to be greater than current umbrella
version
Cause:
Change:
Changed Release ID tp 10.5.0
Change:
Fixed the reported missing implementation
2. Enhancement Request
CQ29625 2-part ID Match for 5756ME Missing from INF for NDIS 4/5/5.1/6
Cause:
Change:
Added new ID
3. Enhancement Request
CQ 29677 add 4 part ID for new 5787M with NVIDIA chipset
MCP73PV for release 10.4c
Cause:
Change:
Added new ID
4. Bug fix
CQ29405 upgrading from Vista inbox driver to 10.4 release shows un-wanted
parameters
in advanced properties
Cause:
Incomplete implementation
Change:
Fixed the reported missing implementation
5. Bug fix
CQ29152 NDIS6.0 - Enable the EPA feature for FJ 5906M 4part ID
Cause:
Incomplete implementation
Change:
Fixed the reported missing implementation
Version 10.40.0.0C May 22, 2007
----------------------------------------
1. Bug fix
CQ29484 HP_WS: 10 Mbps WoL EPA Enhancement. Missing Msi support
Cause:
Change:
Added Added Msi support
Change:
Added support for 5787 parts
Change:
Added the OEM suggested DelReg keys
2. Enhancement Request
CQ29410,CQ29314 Add OEM 4 part ID
Cause:
Change:
Added OEM 4 part ID
2. Enhancement Request
CQ29484 HP_WS: 10 Mbps WoL EPA Enhancement
Cause:
Change:
Enabled EPA for 4-part ID
4. Enhancement Request
CQ29193 Enable EPA feature to support link negotiation for WoL to the
lowest advertised speed ( ie first 10 MBPS then 100 MPBS )
Cause:
Change:
Enabled EPA for 2-part IDs
Change:
Added OEM 4 part ID
2. Enhancement Request
CQ29103 Add 4 part ID for OEM system on 10.4 project
Cause:
OEM has requested the addition of a 4 part ID
change:
Added the requested 4 part ID
3. Problem:
CQ29148 INF check failure.
Cause:
A typo in the x64 version INF file.
change:
Fixed the typo.
2. Problem:
CQ28192 - Sending large pings leads to long round trip times on 5788.
Cause:
The interrupt service routine was not handling this device
properly.
Change:
Modified the interrupt service routine to handle the 5788 correctly.
Impact:
None.
3. Enhancement Request:
CQ28816 Add "L1 ASPM debounce" feature.
Cause:
There is an interoperability issue between the Broadcom
LAN controllers and the Intel ICH7/8 that may cause the
Rx-performance at 100 Mbps to be lower then expected when
L1 ASPM is enabled along with system CPU C3E, or C4, or C4E
or higher state.
Change:
Along with the device driver change here, that will drive
the PCI-E link less aggressively into L1 ASPM during
network stress, the user must enable the feature
by setting a configurable option inside the LAN
controllers NVRAM.
Impact:
There is no known impact from enabling this
feature. As a matter of fact, enabling this
feature will increase the power savings in
case the system has disabled 'L1 ASPM' due to
the interoperability issue described above.
2. Enhancement Request:
Add PCI 4 part Device ID to OEM specific
INF installation files. Please refer to
CQ28493,28495, 28505, 28506.
Cause:
OEM request.
Change:
Added new 4 part OEM PCI ID support in OEM specific
NDIS INF files.
Impact:
Resolve requested Enhancement Request.
3. Enhancement Request:
Add PCI 4 part Device ID to OEM specific
INF installation files. Please refer to
CQ28506.
Cause:
OEM request.
Change:
Added new 4 part OEM PCI ID support in OEM specific
NDIS INF files.
Impact:
Resolve requested Enhancement Request.
4. Problem:
Fixed minor errors in implementing fix for CQ28493 and CQ28506.
Cause:
Wrong friendly name, and missing registry keys.
Change:
Fixed the friendly name (CQ28506), and added the requested
registry key (CQ28493).
Impact:
None.
5. Problem:
CQ28458 - System hang when running BACS/Diagnostics Test
Cause:
There is a potential for a race condition to occur between the
LAN controller's Interrupt Service Routine (ISR) and its
scheduled Deferred Procedure Call (DPC) when running the Broadcom
Diagnostics utility (BACS). The affected code segment
responsible for the problem is only executed when running BACS.
Due to the fact that this issue requires a very specific timing
between the ISR and the DPC this problem it is rather intermittent,
or may not surface at all on particular systems.
Nevertheless, when this condition occurs an ISR-storm gets triggered
what will cause the LAN controller to saturate the system CPU and
hang the system.
Change:
Modified specific code segments inside the device driver that
get executed when running BACS in order to not enable interrupts
inside the LAN controller twice what will prevent ISR-storms to occur.
Impact:
All BRCM chips are affected by the problem equally. There are no
known side effects from fixing this issue.
6. Problem:
5755/5756 Bugcheck D1 on LH Server with 8 or more CPUs if RSS is
enabled.
Cause:
The driver doesn't always calculate the correct receive ring index
in the case of system's number of CPUs is greater than the number of
receive rings.
Change:
Modified specific code segments so that the driver can correctly
calculate the receive ring number.
Impact:
There is no known side effect from fixing this issue.
2. Enhancement Request:
CQ28429 Add PCI 4 part Device ID to OEM specific
INF installation files.
Cause:
OEM request.
Change:
Added new 4 part OEM PCI ID support in OEM specific
NDIS INF files.
Impact:
Resolve CQ28429 Enhancement Request.
2. Problem:
When the ndis driver loads on a 5755M, 5787M or 5752M with the cable
unplugged. The GPHY DLL was not being powered down.
Cause:
Corner case in the GPHY DLL power down code.
Change:
Corrected GPHY DLL power down code to properly handle the corner case.
Impact:
None.
3. Problem:
LH-6001 checked build assert.
Cause:
Corner case in the failure of allocating shared memory
for coalescing pool.
Change:
Freed allocated resources when OS failed to return
shared memory at initialization.
Impact:
None.
4. Problem:
PreFast warnings (DDK 6000).
Cause:
DDK 6000 introduces new PF warnings.
Change:
Suppress some of warnings. No CODE change.
Impact:
None.
5. Problem:
Add support for OEM platforms.
Cause:
Please refer to CQ#28081 for details.
Change:
Added PNP IDs to inf files.
Impact:
None.
2. Problem:
CQ27874 5906 -remove LSO support from sys and INF file
(just like for 5906m)
Cause:
Refer to the CQ for more information
Change:
Modified the ndis driver and inf file to not report this
feature to the operating system during ndis driver initialization.
Impact:
None.
3. Problem:
CQ27832 5755M failing IEEE compliance on certain OEM platforms.
Cause:
The phy trim registers needed to be modified by the ndis device driver.
Change:
Modified the ndis driver to program the phy trim registers per
recommendation from phy engineering team.
Impact:
None.
4. Problem:
CQ#27795 remove "interrupt moderation" from
"advanced driver properties" for OEM platforms.
Cause:
Refer to the CQ27795 for more information
Change:
For affected platforms, we want to hide the "interrupt moderation"
option inside the driver advanced properties.
Impact:
None.
2. Problem:
Low throughput performance on DosXX-5906M with ASPM enabled.
Change:
The low performance we are seeing is due to a design flaw
in the ASIC. This flaw causes the PCI-e latency during DMA
transfer to become unecessarily large, and leads to a lower
throughput. The only way to get around this problem, is to
coalesce every tx packets for the the 5906, which this Windows
driver version does.
Impact:
Possibly higher CPU utilization with this version.
3. Problem:
Adding WOL support for 5715S, for Tyan S3997, 5715S A3
Change:
Added an entry for this device in the generic win32 and x64
infs.
Impact:
None.
4. Problem:
CQ#27722 - new 4 part ID support for oem platforms.
Change:
INF update.
Impact:
None.
2. Problem:
None
cause:
None.
Changes:
Integrated changes from ndis5x driver from v10.19 to v10.20.
The changes are described below (Problem 3,4,5).
Impact:
none.
3. Problem:
CQ27551, CQ27500, CQ27498 EnergyStar WOL feature does not work.
Cause:
The code for did not configure the phy properly when dropping
the feature was enabled.
Change:
Corrected the EnergyStar feature to configure the phy correctly.
Impact:
None.
4. Problem:
CQ27588, EnergyStar feature should be enabled by default for
devices that require the feature.
Cause:
Feature request.
Change:
Changed the default behavior to enabled for devices that require
the feature.
Impact:
None.
5. Problem:
CQ27536, Remove Large Send Offload feature from 5906M.
Cause:
Feature request.
Change:
Removed Large Send Offload feature from 5906M.
Impact:
None.
2. Problem:
CQ27281 link down after reboot with Vista Drivers on
OEM system
- Unable to resume and pass traffic when the 5752M,
5755M or 5787M is initialized with the Ethernet cable
Unplugged and subsequently plugged in after driver has
Finished initialization.
Cause:
Similar to CQ27241, CQ27280 in NDIS5x drivers,
A coding error in the power saving enhancement for 5752M, 5755M and
5787M controllers was powering down the GPHY DLL during
controller initialization.
Change:
Modified the Ndis driver to not power down the GPHY DLL
during controller initialization.
Impact:
Resolve CQ27281.
3. Enhancement Request:
CQ27259 Add support to fallback to lowest advertised link speed
for S3/S4.
Cause:
New feature request.
Change:
Added WOL speed configuration option. Added peer link partner
capabilities check if fallback is enabled.
Impact:
Resolve CQ27259 Enhancement Request.
4. Problem:
None
cause:
None.
Changes:
Integrated changes from ndis5x driver from v10.11c to v10.15.
Impact:
none.
2. Problem:
PCIe link gets reset upon system crash which is not desirable.
cause:
Upon system crash, the driver reset the PCIe link along with
the MAC core which causes other bugchecks.
Change:
Don't reset PCIe link for PCIe devices upon bugcheck.
Impact:
none.
2. Problem:
CQ#26857 - NDIS 6: 1c_mini6rssoids test script failed.
cause:
The new test kit requires driver to verify RSS settings.
Change:
Add code to verify RSS settings before applying.
Impact:
none.
3. Enhancement Request:
CQ#27184 - Remove support for 5906, 5906m, 5722 and 5756ME for
NDIS 6.0 RC driver for 9.7v.
Cause:
This is a requirement for R9.7.
Change:
Remove device IDs: 1712,1713,1674.
Impact:
None.
2. Enhancement Request:
CQ#27025 - Vista driver do not have vlan tagging support.
Cause:
In Windows Vista, Microsoft states the only correct way to
support VLAN is using IM driver to set VLAN ID in NBL OOB.
After discussed with MSFT, we added the VLAN ID registry
setting as a temporarily solution for customers who want
to support VLAN without an IM driver.
Change:
Added editable keyword "VLAN ID" in INF. Driver tags packets
according to the current 801.1P/Q and VLAN ID settings.
Impact:
None.
3. Enhancement Request:
CQ#26977 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#26977 Enhancement Request.
4. Problem:
CQ#27045 - NDIS6 driver should specify its physical medium as
NdisPhysicalMedium802_3.
cause:
New requirement in latest DTM.
Change:
Changed to report 802.3 as medium type at initialization.
Impact:
none.
5. Problem:
CQ#27100 Vista - Network address does not work.
DUT only shows permanent MAC.
cause:
The registry key controlling the LAA is not up to the latest
WDK document and OS. The ndis function to read the LLA registry
key doesn't not work.
Change:
INF update. Changed the LAA key from *NetworkAddress to
NetworkAddress.
Impact:
none.
2. Problem:
Need to Sync to latest NDIS5x driver to pickup fixes
between v9.74b to v10.11c.
Cause:
Enhancement request.
Change:
Sync to latest NDIS5x.
Impact:
Fixed the problem as described above.
3. Problem:
Need to pick up enhancements and changes made to the RC_1
branch.
Change:
Sync to 9.20.0.5. Enhanced the way the driver handles Pause
reset, and set power.
Impact:
None.
2. Problem:
5704 won't send on system with 16GB of memory.
Cause:
H/W limitation on RDMA request crossing 4*N GB address boundary. This
also applies to any devices before 5755.
Change:
Coalesce send fragments when detecting any fragment in a
send packet meet such condition.
Impact:
Fixed the problem mentioned above. Performance impact is not
observed.
3. Enhancement Request:
CQ#26537 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#26537 Enhancement Request.
4. Enhancement Request:
Remove 5906/5906M for 9.7 release.
Cause:
Release requirement.
Change:
Removed 5906/5906M support.
Impact:
5906/5906M will not load.
5. Problem:
Interrupt coalescing doesn't work.
Cause:
One line of code in tigon3.c was removed by the diff tool
while syncing up to the XP source code.
Change:
Added the missing code back.
Impact:
Fixed the problem.
2. Problem:
CQ26371 - System Under Test with 5756ME NIC encounters BSOD
during MS PCI Compliance Test
Cause:
See detailed report attached to the CQ.
Change:
1. Needs to check the state of bit 12 at 0xDC before programming the
Clkreq Enable Bit and the PLLPowerDownL1_Disable Bit if bit 12 of DC
is 1 then Write 1 to the Clkreq Enable Bit and Write 0 to the
PLLPowerDownL1_Disable Bit else if bit 12 is clear then Write 1
to the PLLPowerDownL1_Disable Bit.
Version 9.21.0.0 Aug 08, 2006
----------------------------------------------------------------------
1. Problem:
Need to Sync to latest NDIS5x driver to pickup fixes and 5906
support.
Cause:
Enhancement request.
Change:
Sync to latest NDIS5x.
Impact:
Fixed the problem as described above.
2. Enhancement Request:
CQ#26184,26263,26147,24352,26146,26261,26262,26196,25620,26197.
Add PNP IDs to Vista INF file.
Cause:
Requirement for Vista support.
Change:
Added new IDs to INF file.
Impact:
Resolve CQ enhancement Requests.
2. Problem:
AUT stops passing traffic in Chariot Stress test when LsoV2
is enabled on capable NICs such as 5755/5754/5787.
Cause:
Driver would prematurely clear the MSS in the LSO NBL information
structure when the driver is running out of SBD and pushes the
NetBufferList back to the send queue. The driver would not see
the MSS information when resending the netbufferlist after SBDs
become available.
The logic of setting LSO completion is carried from old code.
This problem was in the driver since day one but it doesn't
expose until we test it with RC1 build+LsoV2.
Change:
Modify the code to setup LSO completion information after
the LSO packet was actually transmitted.
Impact:
Fixed the problem as described above.
2. Problem:
Need to merge OEM and BRCM generic INF.
Cause:
This is a Vista RC 1 and RTM requirement.
Change:
OEM and BRCM generic INFs are merged.
Impact:
All IDs from these infs (based on b57win 9.52B) are included
in the inbox INF file.
3. Enhancement Request:
CQ#25620 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM. (mobile)
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#25620 Enhancement Request.
2. Problem:
CQ#25391 - 1c_KernelCalls IoGetAttachedDeviceReference
Cause:
This is introduced while implementing a workaround for beta 2
NDIS.sys not being able to access PCI configuration space at
MiniportAddDevice callback. Miniport driver hence need to get
access to the device stack. But NDIS driver can not call
IoGetAttachedDeviceReference.
Change:
Remove the IoGetAttachedDeviceReference since the driver doesn't
really need reference to the topmost device object while accessing
the PCI bus driver.
Impact:
Fixed CQ#25391.
2. Problem:
CQ#25320 NDIS6: InterruptModeration test failure
Cause:
Driver does not return BytesWritten.
Change:
Return buffer size properly.
Impact:
Fixed CQ#25320.
3. Problem:
Driver BSODs when there are more than 32 CPUs installed.
Cause:
Driver assumed the max number of CPUs is 32 and allocated
a static array of 32 elements for per-CPU data. It causes
memory overrun when the number of active CPUs is more than 32.
Change:
Instead of using hardcoded number, the driver gets number
of active CPUs through newly added kernel API and allocates
memory from non-paged pool for per-processor slot data.
Impact:
Driver will not crash when number of CPU is greater than 32.
4. Problem:
Driver initialization causes newer Vista check build to assert.
Cause:
Driver didn't properly clean up the RSS attribute pointer while
registering generic attributes with ndis.
Change:
Change made to the initialization code to clean up the RSS
attribute pointer if the chip does not support RSS.
Impact:
Fixed the assert in newer Vista check build.
2. Enhancement Request:
CQ#24456 Remove 4 ID device match for new OEM project.
Cause:
Old 4 ID device match support request by OEM. (mobile)
Change:
Removed new 4 ID device match for OEM project.
Impact:
Resolve latest requirement for CQ#24766
2. Enhancement Request:
Use in-stack spinlock to improve performance in performance critical
Path.
Cause:
Enhancement.
Change:
Use in stack spinlock to improve performance in performance critical
Path.
Impact:
Enhance spinlock performance.
3. Problem:
Interrupt coalescing doesn't work and CPU usage is high under heavy
traffic.
Cause:
Driver disables interrupt at ISR and invoke DPC. DPC will continuously
check status block update and process send and receive events until
a) no more status block update event b) DPC has executed more than
10 ms c) DPC loop count has been reached. When DPC is running, no
interrupt is generated hence the interrupt count is very low. The
interrupt coalescing logic believes the device is not generating
many interrupts/events and won't kick in.
Change:
change made to the DPC to increment the interrupt count when it detects
a new status block update so that the interrupt coalescing logic will
engage to coalesce the host-attention events.
Impact:
Reduced CPU utilization under heavy traffic and improve PEI.
2. Enhancement Request:
CQ#24584 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24584 Enhancement Request.
3. Enhancement Request:
CQ#24186 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project. Removed
reference to 5788 section.
Impact:
Resolve CQ#24186 Enhancement Request.
2. Enhancement Request:
CQ#24352 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24352 Enhancement Request.
3. Enhancement Request:
CQ#24351 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24351 Enhancement Request.
4. Enhancement Request:
CQ#24104 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24104 Enhancement Request.
5. Enhancement Request:
CQ#24186 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24186 Enhancement Request.
2. Enhancement Request:
CQ#24192 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24192 Enhancement Request.
3. Enhancement Request:
CQ#24190 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24190 Enhancement Request.
4. Enhancement Request:
CQ#24189 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24189 Enhancement Request.
5. Enhancement Request:
CQ#24186 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24186 Enhancement Request.
6. Enhancement Request:
CQ#24017 Add 4 ID device match for new OEM project.
Cause:
New 4 ID device match support request by OEM.
Change:
Added new 4 ID device match for OEM project.
Impact:
Resolve CQ#24017 Enhancement Request.
2. Problem:
Vista 5308 Network Connection displays 1Gb while adapter is
initialized with a 10/100Mb link.
Cause:
NDIS in this build assumes the link speed to be the Max Speed
the driver has advertised at initialization without sending
OID to query current link speed.
Change:
The Link Done Timer routine will test the current link speed
if the link is active. It compares the current speed against
the Max Speed advertised at initialization time, it indicates
link speed change event to NDIS if current link speed does not
equal to Max Link Speed.
Impact:
Network connection correctly shows link speed.
3. Enhancement Request:
CQ23713 Add new 5789 device ID's for OEM customer.
Cause:
New OEM project IDs requested.
Change:
Added new PCI ID support in NDIS INF files.
Impact:
Resolve CQ23713 Enhancement Request.
4. Enhancement Request:
CQ23712 Add new 5789 device ID's for OEM customer.
Cause:
New OEM project IDs requested.
Change:
Added new PCI ID support in NDIS INF files.
Impact:
Resolve CQ23712 Enhancement Request.
2. Problem:
CQ23551 Disable GPHY DLL power-down on 5752M, 5754M,
5755M, and 5787M Devices.
Cause:
Same problem as CQ23438 would occur for the listed devices.
A non recoverable Read DMA error occurs in this test scenario,
due to NIC's internal core clock being automatically slowed down
by logic in the device when the GPHY DLL is automatically powered
down when CAT 5 cable is disconnected.
The GPHY DLL automatically gets powered down and NIC's internal
core clock gets slowed down when the CAT 5 cable disconnected,
this is an intended design power saving feature.
Unfortunately, the slowed down of the core-clock causes Read DMA
error, which resulted in the system failed to acquire the IP address
via DHCP.
Change:
Modified driver code to Not Enable the GPHY DLL Auto-Power-Down
feature of hardware for all 5752M, 5754M, 5755M, 5787M Devices.
Impact:
Higher power consumption on these devices when the device is
enabled, but the network link is down.
Resolve CQ23551 issue.
3. Problem:
NDIStester 6.5 Offloadchecksum failure on 5715/14/80 devices.
Cause:
The driver mistakenly enables pseudo header checksum on
5714/5715/5780 devices.
Change:
Made change to the code so that 5714/5715/5780 devices will
not calculate pseudo header checksum on TX path.
Impact:
Passed NDIStestv6.5.
2. Problem:
1502715 Broadcom: b57nd60a.sys: v9.5.0.0: X64_0xD1_W_b57nd60a!
MM_IndicateRxPackets+32b: miniport is indicating packets
up when OID_GEN_CURRENT_PACKET_FILTER is not set
Cause:
The UM_Restart routine turns on the OkToIndicate flags without
testing the current packet filter. NDIS clears packet filter
when pausing a miniport. When Miniport gets restarted, NDIS does
not expect miniport to indicate any RX packet until it turns on
the packet filter.
Change:
Do not set OkToIndicatePackets when restarting miniport.
Impact:
Resolved MSFT reported 1502715 on CTP release.
3. Problem:
1513694 Broadcom: b57nd60x.sys "\Network Interface(*)\Bytes Sent/sec"
counter 0 for Broadcom NetXtreme 57xx Gigabit Controller (NDIS6.0).
Cause:
Driver doesn't fully support OID_GEN_STATISTICS.
Change:
Implemented OID_GEN_STATISTICS as required.
Impact:
Resolved MSFT reported 1513694 on CTP release.
2. Problem:
Halting adapter BSOD.
cause:
While fixing RSS shutdown crash on suspend, there is a bug
being introduced causing NON-RSS devices to leave RX BDs in
RX return ring. This effectively messed up the RX resource
accounting.
Change:
Fix in LM_Abort to make sure non-RSS nics correctly collect
RX BDs in RX return ring before returning.
Impact:
Halting non-RSS adapter won't BSOD.
1. Problem:
Broadcom driver reports MTU of 1514 in NDISMSetMiniportAttribute ?
MTU should not include header and should report 1500. TCP then add 14 to
the MTU;
causing IPSec to interpret this as a corrupted packet
cause:
Incorrectly report MTU size at initialization.
Change:
Report MTU size correctly, MTU should not include header.
Impact:
Resolve reported issue.
2. Problem:
Use DDK-5287 to build the driver.
cause:
Feb CTP release requirement.
Change:
No source code change required.
Impact:
Resolve reported issue.
2. Enhancement Request:
CQ14643 Add new PCI ID support for OEM customer.
Cause:
New OEM project.
Change:
Added new PCI ID support in OEM installation INF file.
Impact:
Resolve C14643 Enhancement Request.
Overall:
This initial release of BRCM NetExtreme NDIS 6.0 Driver was tested to
perform the best with Microsoft Longhorn (Vista) Beta build version 5270,
and all tests were performed using MSFT NDIS Test 6.0.6.
Although this version (9.0) of BRCM NetExtreme NDIS 6.0 Driver had
encountered
some problems during testing, but we believe most of the problems are MSFT
Longhorn (Vista) OS and/or NDIS Test tool related.
BRCM is actively engaged with MSFT regarding the "known issues", and are
working with MSFT in driving the resolutions.
This BRCM NetExtreme NDIS 6.0 Driver support BRCM NetExtreme chip family
starting from BCM5703, 5704, CIOB-E, 5705, 5751, 5752, 5754, 5755, 5787,
5714, 5715, HTLE and derivatives. This NDIS 6.0 Driver removed the support
for BCM 5700, 5701 and 5702 chips.
Known issues:
CQ13764: DPC timeout -- LH 5216.vbl_ndt_netio DPC watchdog timeout with
b57xp32 on the stack (reported by MSFT).
CQ22245: DPC timeout -- 5751C1 freezes OS when IPV6 Chariot traffic is
applied
CQ22290: DPC timeout -- Running Chariot IPV6 stress traffic causes OS to
lock-up when LSO is disabled
CQ22305: DPC timeout -- 5787mA1 cannot complete NDIS6 tester
2c_mini6Performance.wsf test script
CQ22468: NDIS 6 LSO for IPv4 Does Not Appear to Work Based on Performance
over CPU Utilization Measurements
Under investigation.
CQ14642: NDIS6 wake on LAN does not work for any sleep states
This is an OS issue.