============================ R E L E A S E N O T E S ============================ Broadcom NetXtreme Gigabit Ethernet Driver For Windows Vista (Longhorn ) 32/64 bit versions Copyright (c) 2000-2006 Broadcom Corporation All rights reserved. Version 10.9.0.0i *** INF Update *** April 03, 2007 ---------------------------------------- 1. Problem: CQ28995 - Add 4 part ID for specific OEM Cause: OEM Enhancement Request. Change: Added 4 part ID Impact: Resolve CQ28995 issue. Version 10.9.0.0h ** Inf Update Only ** March 28, 2007 ---------------------------------------- 1. Enhancement Request: CQ28839 - Correct OEM Friendly Name CQ28753 - Correct Device Advanced Properties Options Cause: OEM request. Change: Corrected affected devices to display the correct name and options. Impact: Resolve requested Enhancement Request. Version 10.9.0.0g ** Inf Update Only ** March 20, 2007 ---------------------------------------- 1. Enhancement Request: Modify EnergyStar add registry sections to be consistent with Ndis5.1 implementation. Cause: OEM request. Change: Modified EnergyStar add registry section to be consistent with Ndis5.1 implementation. Impact: Resolve requested Enhancement Request. Version 10.9.0.0f ** Inf Update Only ** March 20, 2007 ---------------------------------------- 1. Enhancement Request: CQ28493 - Add EPA support for OEM. Cause: OEM request. Change: Added registry key entries to enable EPA support for OEM platforms. Impact: Resolve requested Enhancement Request. 2. Enhancement Request: CQ28495, CQ28775, CQ28776, CQ28753, CQ28839, CQ28775, CQ27776, CQ28753 - Add Requested OEM ID's Cause: OEM request. Change: Added requested product ID's Impact: Resolve requested Enhancement Request. Version 10.9.0.0e ** Inf Update Only ** March 7, 2007 ---------------------------------------- 1. Enhancement Request: CQ28726 - Add EPA support for OEM. Cause: OEM request. Change: Added registry key entries to enable EPA support for OEM platforms. Impact: Resolve requested Enhancement Request. Version 10.9.0.0d ** Inf Update Only ** Feb 23, 2007 ---------------------------------------- 1. 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. Version 10.9.0.0c ** Inf Update Only ** Feb 21, 2007 ---------------------------------------- 1. 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. Version 10.9.0.0b ** Inf Update Only ** Feb 16, 2007 ---------------------------------------- 1. Enhancement Request: Apply EPA settings to certain OEM designs. Please refer to amended CQ28493,28495 descriptions Cause: OEM request. Change: Applied EPA settings to affected OEM platforms. Impact: Resolve requested Enhancement Request. Version 10.9.0.0a ** Inf Update Only ** Feb 15, 2007 ---------------------------------------- 1. 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. Version 10.9.0.0 Feb 8, 2007 ---------------------------------------- 1. Problem: CQ28164 - 5721/5751/5752 fails phy loopback test. Cause: Change for CQ26645 is not compatable with phy loopback mode. Change: Modified the phy loopback code to disable Auto-Mdix when phy loopback is enabled. Impact: None. 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: CQ28412 - Low power mode in 5755M does not work under Vista. Cause: The Ndis driver was halting the embedded cpu when Wake Up Frame is enabled when the driver is being unloaded. Change: Modified the Ndis driver to only halt the embedded cpu when the system is transitioning to S3/S4 and Wake Up Frame is enabled. Impact: None. 6. 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. Version 10.8b ** Inf Update Only ** January 9, 2007 ---------------------------------------- 1. Problem: CQ#27306 - Adding WOL support for 5715S, for Tyan S3997, 5715S A3. Cause: WakeOnTbi should be applied to BCM5714SWol install section. Change: Change the WOL option from ParamsWoL to ParamWakeOnTbi in the BCM5714SWol install section of the inf files. Impact: None. Version 10.8a ** Inf Update Only ** January 8, 2007 ---------------------------------------- 1. Problem: CQ28059 Missing friendly strings in inf file. Cause: Changes ported over from release 9.7 were not complete. Change: Added missing friendly strings into the inf file. Impact: None. Version 10.8 December 18, 2006 ---------------------------------------- 1. Problem: CQ27896 System CPU busy after finishing CPU test in BACS. Cause: The driver clears the status tag in host memory whem resuming the driver. This causes problem if MSI is active because MSI will not de-assert if the latest tag is not written to interrupt mailbox to ack the interrupt. The re-generated MSI interrupt doesn't associate with a status block update. One-shot MSI implemented on newer chips would solve this problem but it's not available to older PCIe chips. Change: Modify the driver not to clear the status tag after finishing diagnose. Impact: None. Version 10.7 December 14, 2006 ---------------------------------------- 1. Problem: CQ27776 5906 intermittently fails BACS Phy Loopback test. Cause: The 5906 phy auto-mdix feature needs to be disabled during phy loopback test. Change: Modified the ndis driver to disable auto-mdix during phy loopback on 5906. 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. Version 10.6 December 8, 2006 ---------------------------------------- 1. Problem: CQ27759 5906 fails WHQL packet filter test. Cause: The 5906 uses a different mechanism to filter broadcast packets from previous controllers. Change: Modified the ndis driver to properly filter broadcast packets on 5906. Impact: None. Version 10.5 December 4, 2006 ---------------------------------------- 1. Problem: CQ#27413 - implement restrictive AutoNeg in NDIS6 driver. Cause: The feature hasn't been populated from the NDIS5x driver because MSFT make the auto neg standardized keyword. Change: Modify driver translated non-standardized values to recognize restrictive auto negotiation settings. 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. Version 10.4 November 27, 2006 ---------------------------------------- 1. Problem: CQ00027621 - Cannot Select Box to Allow AUT to wake up Computer in Pwr Mgmt Tab with NDIS 6 v10.3. Cause: In the v10.3 release, there is a requirement to remove certain advanced settings for some oem platforms, hence the driver's inf was changed to remove some registry settings before starting up the installation in order to clean up the registry keys. However, the OS installer seems to defer deleting registry at a point after these keys were re-populated back to the HKR location. Hence, the driver would not be able to read the settings. Change: Limited the keys to delete for the affected OEM platforms, only delete keys that are not used by the affected OEM platforms. Impact: None. Version 10.3 November 22, 2006 ---------------------------------------- 1. Problem: Need to clean up stale registry keys left by the inbox driver. Cause: For certain new devices, the inbox driver does generic 2-part matching during installation. For such new devices, the generic 2-part installation section contains advanced features and settings which is not required by some OEMs for their new platforms. In these new platforms, 4-Part ID is used to specify the installation section with simplified settings which contains less configurable parameters in the advanced pages. However, the upgrade driver process does not clean up the advanced settings left by the inbox driver hence those undesired settings still accessible through the advanced property page. Change: Delete all advanced settings before install or upgrade driver. 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. Version 10.2.0.0 Nov 16, 2006 ---------------------------------------------------------------------- 1. Problem: Need to apply EPA setting on certain OEM platforms. Cause: Enhancement request please refer to CQ#27190. Change: Applied EPA setting on certain OEM platforms. Impact: none. 2. Enhancement Request: CQ#27410 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#27410 Enhancement Request. 3. Problem: None cause: None. Changes: Integrated changes from ndis5x driver from v10.16 to v10.19 excluding iSCSI boot and 5906 lso/clkreq related changes. Impact: none. Version 10.1.0.0 Nov 09, 2006 ---------------------------------------------------------------------- 1. Problem: CQ#27231 Network Address property is displayed twice in Advanced Tab of Network Properties with the latest driver 9.34 on only 5703. The problem is not seen with the In-box driver, v 9.20.03 and not seen on 5755, 5705, 5714, 5751. Cause: A bug in the INF file that doesn't clean up stale registry keys for certain devices. Change: Modify the INFs to clean up registry keys before installation. Impact: Resolve CQ#27231. 2. Problem: 5705 NDIStestv6.5 RC_2 DTM LSO test failure. Cause: The cert test failed at packet size = 7268B MSS=904 at 10M/H. Fix for CQ27281,27241,27280 introduced a bug that long burst mode is mistakenly enabled for 5705 device when it's configured at 10M/H 6.25mhz core clock which will cause RDMA read FIFO overrun. Change: 1. Do not enable long burst for 5705 in the GPHY power down code introduced in the GPHY power down fix. 2. Set RDMA mode to "FIFO available" when the device is on 6.25 mhz core clock. Impact: Fixed cert failure. Version 10.0.0.0a Nov 02, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#27190 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#27190 Enhancement Request. Version 10.0.0.0 Nov 02, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#27248 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#27248 Enhancement Request. 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. Version 9.40.0.0 Oct 30, 2006 ---------------------------------------------------------------------- 1. Change: Restore IDs for 5906, 5906M which had been removed from v9.33. Impact: none. Version 9.35.0.0 Oct 25, 2006 ---------------------------------------------------------------------- 1. Problem: CQ#27253 - NDIS6: 1c_mini6send test script failure CQ#27221 - Interface hangs while running NSlicer and Netperf at the same time cause: A coding error was introduced in v9.33 that UP code gets executed on MP system. Change: Fixed the typo to make sure MP system is correctly detected and setup. Impact: none. Version 9.34.0.0 Oct 23, 2006 ---------------------------------------------------------------------- 1. Problem: CQ#27167 - wake up capabilities settings set to magic packet only will not show link when system is in sleep state cause: OS doesn't behave right when MAGIC WOL is enabled alone. Change: Over-advertised WOL caps. 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. Version 9.33.0.0 Oct 20, 2006 ---------------------------------------------------------------------- 1. Problem: CQ#26855 - NDIS 6: 2c_oidsndisrequest and Stats test script failed. cause: The MAC doesn't collect UC/MC/BC byte status. Change: Add code in the driver to collect UC/MC/BC byte counts in both send and receive path. Impact: May have minor performance impact. 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. Version 9.32.0.0 Oct 12, 2006 ---------------------------------------------------------------------- 1. Problem: CQ#27003 - Remove DbgBreakPoint calls in NDIS6 v9.31 driver. cause: A hardcoded breakpoint was left in free build causing DTM failure. Change: Removed the hardcoded BP. 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. Version 9.31.0.0 Sep 29, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#26873 NDIS6: string name enhancements in order to warrant "unified INF file" for Vista Cause: Please refer to CQ#26873. Change: Renamed the OEM references in the generic INF files. 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. Version 9.30.0.0a Sep 22, 2006 Same driver binary files as prior v9.30 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: The latest Vista v9.24.0.0 INF-file differs from the INBOX-INF-file as to where it cross-references certain OEM's. This will break the "unified INF-file" approach taken for the INBOX-INF-file v9.20.0.1. Change: Renamed all OEM specific references in the INF files. Impact: Resolve Enhancement Request. No impact. Version 9.30.0.0 Sep 21, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#26196, 26530, 26537, 26697,26739 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 Enhancement Request. Version 9.24.0.0 Aug 31, 2006 ---------------------------------------------------------------------- 1. Problem: NDIS5.1 and NDIS6.0 driver can not coexist on Vista if system has mixed of 5703 and newer device and 5700/01/02 devices. Cause: NDIS51 and NDIS60 INF use same service displayname. Os installer will not allow difference services with identical display name. Change: Changed NDIS6 inf file to use display name different from ndis51 INF file. Impact: Vista can load NDIS5.1 and NDIS6.0 driver on the same machine at the same time. 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. Version 9.23.0.0A Aug 29, 2006 Same driver binary files as prior v9.15 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: Remove StanfordME support for 9.7 release. Cause: Release requirement. Change: Removed 5906/5906M support. Impact: StanfordME support will not load. Version 9.23.0.0 Aug 25, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#26523 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#26523 Enhancement Request. 2. Enhancement Request: CQ#26530 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#26530 Enhancement Request. 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. Version 9.22.0.0 Aug 16, 2006 ---------------------------------------------------------------------- 1. Enhancement request: Need to merge OEM 4-part IDs into generic inf for Vista. Change: Added OEM 4-part IDs into generic inf for Vista. Impact: none 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. Version 9.20.0.2 Aug 04, 2006 ---------------------------------------------------------------------- 1. Problem: Driver cannot be unloaded after running 2c_loadunload in a loop overnight. It usually happens after running the script for 4 hours. Cause: At UM_Halt, driver disables interrupt on the h/w then calls NDIS function to disconnect interrupt from operating system. There is a window that a pending DPC for Isr has been queued but OS has not called NDIS's DPC for Isr when driver made call to disconnect interrupt from IDT. NDIS will in turn a) deallocate interrupt object. b) NdisMDeregisterInterruptEx immediately return without waiting for pending DPC to complete. When system calls NDIS's Dpc for Isr later, NDIS will not call driver's Dpc for Isr routine. It leaves driver pending DPC count non-zero, hence, the halt function will wait until it goes to zero which will never happen. Change: Driver waits for pending DPC to complete after disabling interrupts on h/w. It only call NdisMDeregisterInterruptEx when pending DPC count is clear (zero). Impact: Fixed the problem as described above. 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. Version 9.20.0.1 Jul 20, 2006 ---------------------------------------------------------------------- 1. Problem: Driver sometimes experience linked list corruption which leads to different problems such as hang, data corruption etc. Cause: The function s_list_pop_head does not terminate the linked-list by setting the "next" field to null. If we subsequently add the removed entry to other linked list, it would add more entries than it's supposed to and the value in "cnt" field doesn't match the number of entries in the link list obviously. XP driver doesn't have this problem because it doesn't use any of functions from listq.h Change: Nullify the "next" field after the entry was removed from queue. Impact: None. Version 9.20.0.0 Jun 13, 2006 ---------------------------------------------------------------------- 1. Problem: NDIS6 driver for Vista RC 1 needs to implement new offload interface. Cause: This is a Vista RC 1 and RTM requirement. Change: Implemented changes to comply with the new offload interface. Implemented Group Keyword for TCPIP offload settings. Modified the code to comply with latest NDIStester tools. Impact: Driver passes RC 1 NDIStest on a patched 5452 build. 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. Version 9.18 Jun 24, 2006 ---------------------------------------------------------------------- 1. Problem: Resume take 2 seconds longer if the ethernet cable is connected. Cause: NDIS6 driver does not complete a set power request timely if link is up before going into low power mode. The driver will wait for the link to come up at DPC level for seconds. This prevent other thread from running. Change: Driver completed the set power without waiting the link to go up. Driver does not indicate link status to OS during link setup right in the case of resuming from low power mode. It schedules a link check timer to finally report the link status if there is a change. This is to ensure driver doesn't mistakenly indicate a link down and indicate link up again. Impact: Fixed the problem as described. 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. Version 9.17 Jun 15, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: Enable private OID support for Vista. Cause: LH NDIS wrapper will failed OIDs sent to any NDIS6 driver if the OIDs has not been included in the supported OID list. If NDIS6 driver returns private OIDs in the support list, IOCTLCoverage will throw random data through the advertised OID. The driver does not validate the contents in the input buffer that cause random behavior while handling private OID. Change: Modify the driver to include private OIDs in the supported OID list. An input buffer header was added to each private. The header contains signature setup by the calling application. Driver always validate the signature before process a private OID. Changes are also made to BMAPI. Impact: Driver now can passed IOCTLCoverage test with private OID support. BACS can talk to NDIS6 driver through the modified BMAPI. 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. Version 9.16 Jun 12, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#24438 - Need to support MSI in NDIS 6 driver on MSI capable devices. Cause: The NDIS 6 driver for 57xx devices does not currently support MSI on *any* device, even devices that are capable of supporting MSI. It is a MSFT Vista logo requirement that all PCI-E devices supoort MSI, and thus the driver for PCI-E devices should support MSI. So the driver needs to be modified to support MSI for Shasta Cx step devices, and all later PCI-E devices including Baxter, Stanford, Jade, and Caeser. The driver should not support MSI on Shasta A/B steps due to known HW errata regarding MSI in those devices. At this time the driver is not required to support MSI on non PCI-e devices. Change: Added code support MSI in ndis6 driver. Change INF to enable OS to assign MSI resources for devices newer than Shasta. The driver implemented code to filter out MSI resources and roll back to INTX for Shasta A/B steps based on chip rev read from PCI config 0x68. Impact: MSI now is supported on Shasta CX and up. Version 9.15b May 19, 2006 Same driver binary files as prior v9.15 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: Keep NDIS60 INF in sync with XP's INF. Change: Synced to 9.52B XP inf. Impact: None. Version 9.15a May 17, 2006 Same driver binary files as prior v9.15 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ#24766 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#24766 Enhancement Request. 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 Version 9.15.0.0 May 12, 2006 ---------------------------------------------------------------------- 1. Problem: CQ#24741 INF Scrub for Vista Inbox Driver Revealed Missing Support for Some Chips and Invalid 4-part IDs. Cause: Some 2-Part IDs are missing and invalid 4-Part IDs. Change: Added required 2-Part IDs and removed invalid 4-Part IDs. Impact: Fixed CQ#24741. 2. Problem: Need to sync-up to XP driver to pickup latest fixes. Change: Manually merge files from XP driver. Impact: Picked up latest changes, fixes to the XP driver. Version 9.14.0.0 May 5, 2006 Merged from 9.4.2.9 ---------------------------------------------------------------------- 1. Problem: There are multiple synchronization problems in code paths, such as the Pause/Restart, Reset, Halt, PowerManagement, interrupt and DPC handling etc. Cause: Vista OS appears to be more asynchronous which would trigger some race conditions in the some code inherent from the old design. Change: Make disabling/enabling interrupt synced with ISR, ensure no pending DPC after interrupt has been disabled. Re-write RX code so that is clean and easy to sync with other operations such as reseting, pausing, restarting, switching between power modes. Driver can not be safely reset in most case so the reset code has been changed to asynchronous. Impact: Fixed many race conditions reported by MSFT during their internal test and deployment. 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. Version 9.13.0.0 May 5, 2006 ---------------------------------------------------------------------- 1. Enhancement Request: CQ#24456 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#24456 Enhancement Request. 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. Version 9.12c.0.0 April 20, 2006 Same driver binary files as prior v9.5 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ#24401 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#24401 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. Version 9.12b.0.0 April 10, 2006 Same driver binary files as prior v9.5 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ#24099 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#24099 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. Version 9.12a.0.0 March 31, 2006 Same driver binary files as prior v9.5 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ#24099 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#24099 Enhancement Request. Version 9.12.0.0 March 24, 2006 ---------------------------------------- 1. Problem: NDIS6 driver need to pick up latest changes from XP driver. Cause: Merge of NDIS5.x driver changes is required. Change: Synced files upto 03/06/2006 from b57xp32 v9.20. Impact: None. 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. Version 9.6.0.0 March 3, 2006 ---------------------------------------- 1. Problem: CQ23438 System with 5752M fails to get DHCP address on boot if LAN cable was disconnected during OS boot and later connected after user log on to Windows. Cause: 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 5752M Devices. Impact: Higher power consumption on these devices when the device is enabled, but the network link is down. Resolve CQ23438 issue. 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. Version 9.6 March 3, 2006 Merged from 9.4.1.x branch ---------------------------------------------------------------------- 1. Problem: 1516254 Broadcom: b57nd60a / b57nd60x: 0x9F during stress: DRIVER_POWER_STATE_FAILURE (9f) 1523492 Broadcom: b57nd60a/b57nd60x: drivers fails to send complete packets causing multiple issues. Cause: A race conditions in LM_EnableInterrupt and UM_Reset enables interrupt twice. It causes interrupt being re-enabled after DPC had disabled it. Change: Have the LM_EnableInterrupt sync with ISR and test if interrupt is unmasked before enabling interrupt. Impact: Resolved MSFT reported 1516254 and 1523492 on CTP release. 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. Version 9.5C *** INF Update *** Feb 28, 2006 Same driver binary files as prior v9.5 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ#23332 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#23332 Enhancement Request. Version 9.5B *** INF Update *** Feb 14, 2006 Same driver binary files as prior v9.5 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ22775, 23125 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 CQ22775, 23125 Enhancement Request. Version 9.5A *** INF Update *** Feb 2, 2006 Same driver binary files as prior v9.5 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ14658,22946, and 22956 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 CQ14658,22946, and 22956 Enhancement Request. Version 9.5 January 31, 2006 ---------------------------------------------------------------------- 1. Problem: Assert during 2c_PMSleep.wsf. 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, then LM_SetPowerState waits at dispatch level. Change: Release main spinlock before calling LM_SetPowerState. Impact: 2c_PMSleep won't assert. 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. Version 9.4 January 21, 2006 ---------------------------------------------------------------------- 1. Problem: Fix in 9.3 breaks LSO on 5705, ndistester asserts. Cause: Boundary condition is not detected correctly. Change: Modified code to test chip ID range correctly. Impact: Fixed 5705 LSO. Version 9.3 January 21, 2006 ---------------------------------------------------------------------- 1. Problem: LSO Cert. failures on 5704 Cause: Need workround. Change: Disable LSO silently. We Will fix it later. Impact: LSO is disabled on 5704 and older chips. Version 9.2A *** INF Update *** January 20, 2006 Same driver binary files as prior v9.2 Driver Release ---------------------------------------------------------------------- 1. Enhancement Request: CQ14024 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 CQ22775 Enhancement Request. Version 9.2 January 20, 2006 ---------------------------------------- 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. Version 9.1 January 17, 2006 ---------------------------------------- 1. Problem: ECD13216 Implement ECD13216 for 5714S/5715S link detection problem. Cause: Hardware errata on 5714S/5715S Change: Modified init code to enable configuration bits to enable fix for ECD13216 in hardware. Modified link status code to read link status from tx status register. Impact: None 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. Version 9.0 January 10, 2006 ---------------------------------------- 1. Initial release. 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 Note: DPC timeout is an OS issue where the newly introduced DPC watchdog in Windows Vista mistakenly flags the driver 30 seconds timeout at DISPATCH level. MSFT is actively looking into this issue. CQ22282: NDIS6 tester exhibits runtime script error when 2c_mini6RSSSendRecv is executed This appears to be a test kit issue, MSFT is looking into this. It only affects 5755 devices. CQ22299: 5755A1 Receive Side Scaling (RSS) does not work This was caused the "indirection table" set by protocol stacks in the Longhorn (Vista) OS. 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.Download Driver Pack
After your driver has been downloaded, follow these simple steps to install it.
Expand the archive file (if the download file is in zip or rar format).
If the expanded file has an .exe extension, double click it and follow the installation instructions.
Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.
Find the device and model you want to update in the device list.
Double-click on it to open the Properties dialog box.
From the Properties dialog box, select the Driver tab.
Click the Update Driver button, then follow the instructions.
Very important: You must reboot your system to ensure that any driver updates have taken effect.
For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.