============================ R E L E A S E N O T E S ============================ Broadcom Gigabit Ethernet Driver for DOS/OS2 NDIS2 Copyright (c) 2002-2003 Broadcom Corporation All rights reserved. Version 6.44 May 21, 2003 ---------------------------- Fixes: ======== 1. Problem: (CQ #7839) (CQ #7840) When connected to a hub, a momentary disconnect will cause to lose the network connection until the driver is reloaded. Cause: The NIC does not generates PHY Change Interrupt after the PHY Reset when the link is first lost. Change: Driver preserves and restores Auto-negotiation advertisement register after the PHY Reset. Impact: None. 2. Problem: (CQ #7843) User try to force 1G. Cause: Driver allows parameter to be set. Change: Driver will performs Auto-negotiation when LineSpeed is set to 1000. Impact: None. Version 6.43 May 11, 2003 ---------------------------- Fixes: ======== 1. Problem: (CQ #7677) OS2 system crashes when uses 5700 Ax and Bx or FullSize mode. Cause: Driver provided incorrect Global Descriptor Table to OS2 when called to map to its Physical area. Change: Driver obtains correct Global Descriptor Table to OS2 when called to map to its Physical area during initialization. Impact: 5700 Ax & Bx or runs in FullSize Mode in OS2. 2. Problem: (CQ #7683) Intermittently slow with BCM5704 Serdes/ CIOBE Serdes. Cause: Firmware (v1.8.0) performs autonegotiation when link is up and hardware autonegotiation logic indicates AUTONEG is completed. Change: Changed the firmware (v1.9.0) so that it will not perform autonegotiation when link is up and hardware autonegotiation logic indicates AUTONEG complete. Impact: 5704 Serdes/CIOBE Serdes. 3. Problem: (CQ #7718) Link detection intermittently fails when ASF is enabled. Cause: Contention with ASF firmware polls for PHY registers during PHY reset routine with PHY lockup Work-Around. Change: Driver stops ASF firmware before accessing PHY during initialization. Impact: When ASF is enabled, link establishment will take twice as long when ASF is disabled. 4. Problem: (CQ #7648) Fixed a problem where dynamic 10/100 or 10/100/1000 PHY auto-neg advertising based on GPIO2 state might not work correctly and appears to take a long time to re-establish the link. Cause: This issue was introduced when the PHY lockup workaround was added. This problem only occurs on the platform where GPIO2 state is used for dynamic PHY auto-neg. Change: Changed the PHY lockup workaround code so that it restores AUTONEG configuration. Impact: None. 5. Problem: (CQ #7706) Fixed a problem where driver would reports the forced LineSpeed when there is no cable detected. Cause: Driver was not checking for link when LineSpeed and Duplex were forced. Change: Driver checks for link always. Impact: None. Version 6.42 April 29, 2003 ---------------------------- Fixes: ======== 1. Problem: The PHY lockup problem described in v6.35 Fix #1 below theoretically can affect other PHY cores in 5703 and 5705. Cause: Hardware bug in the PHY core. Probability of lockup is extremely small. Change: Expanded the lockup detection and recovery code to 5703, 5704, and 5705. Also changed the driver to do a PHY reset on link down. Impact: 5703 and 5704. 2. Problem: (CQ #7658) (CQ #7660) OS2 system crashes when uses 5703, 5703S and OS2 system cannot pass traffic with 5704, 5704S. Cause: Download Firmware's length was not set correct for OS2. Change: Set the Download Firmware's length accordingly. Impact: 5703, 5703S, 5704 and 5704S. 3. Problem: (CQ #7642) Driver cannot detects link change status when driver first initialized without cable attached. Cause: When driver initialized without cable attached, driver does not enable Link Change Status Interrupt. Change: Enable Link Change Status Interrupt when initialized even without cable. Impact: None. 4. Problem: (CQ #7648) When the cable is disconnected and reconnected, its takes longer than expected to re-establish link. Cause: When the cable is reconnected, driver runs Setup PHY with long delay. Change: Reduce the delay time in Setup PHY routine. Impact: None. Version 6.41 April 25, 2003 ---------------------------- Fixes: ======== 1. Problem: (CQ #6467) Intermittently, 5704S Fiber NICs cannot pass traffic when connect 3COM SuperStack 4900sx after a system-soft reset. Cause: Auto-Negotiation timing. Change: The fix was in the firm ware that gets download during initialization. Impact: 5704S Fiber. Enhancements: ============= 1. Request: Added support for dynamic 10/100 or 10/100/1000 phy auto-neg advertising for certain platforms. Change: Added a check for the state of GPIO2 during link change events and adjust auto-neg capability advertising accordingly. Impact: None. Notes: ======== 1. The code base for this version is from v6.40 with the 5704 PHY lock up work-around and zero MAC address fixes in v6.35. 2. The Lower Module is ported from PXE v6.2.4. Version 6.35 April 18, 2003 ---------------------------- Fixes: ======== 1. Problem: In some extremely rare situations, 5704/CIOBE copper NICs may not link up after a PHY reset. Cause: On some 5704/CIOBE PHY cores, there is a small probability of lock up after a PHY reset. Change: Added 5704/CIOB-E copper support. Added code to detect PHY lock up after a PHY reset and reset again if lock up is detected. Impact: 5704/CIOB-E copper. Notes: ======== 1. The code base for this version is from v6.34. Version 6.34 April 18, 2003 ---------------------------- Fixes: ======== 1. Problem: In some extremely rare situations, 5704/CIOBE copper NICs may not link up after a PHY reset. Cause: On some 5704/CIOBE PHY cores, there is a small probability of lock up after a PHY reset. Change: Removed 5704/CIOB-E copper support. Impact: 5704/CIOB-E copper. 2. Problem: Driver Intermittently using a MAC address of all zeros. Cause: In some rare timing related situations, the Firmware is behind in providing the MAC address for the Driver at the MAC Control Registers. Change: Driver will get the MAC address from NVRAM when the MAC address read from the MAC Control Registers is all zeros. Impact: Code size increased by 944 bytes. Notes: ======== 1. The code base for this version is from v6.33. 03/20/03 - v6.40- Added 5788, 5704 Fiber & 5700 supports. Support 5700 AX & BX using full size mode (48KB more-total 83KB). Added keyword FullSize. Added feature to detect and load on device that have cable first. No release for v6.34-v6.39 03/05/03 - v6.33- Removed 5700 support. 02/20/03 - v6.32- Fixed intermittent error in EMM386 introduced since v5.25. Fixed problem of identify the second 5704 on the same system. Fixed loss connection during file copy with 5700 in 10MB. Removed 5704 fiber support. 02/15/03 - v6.31- Fixed problem with forced LineSpeed and Duplex of new PXE's LM. 02/12/03 - v6.30- Updated with PXE's LM v6.0.3 and have following fixes: 1) Fix bug in Transmit routine that did not preserve EAX register causing intermittent problems when running with DOS-Extender Applications. 2) Fix passing traffic problem with 5700 B0&B2. 3) Fix "security flaw" in packet padding. 4) Make some "branding" changes. 5) Add recognition of new Device IDs for 5705/5901 A2/A3. 6) Merged source code with DOS and OS2. 02/05/03 - v6.29- Enabled 5704. No release for v5.29-v6.18. 01/28/03 - v5.28- Added key word NodeAddress in Protocol.ini. Resolved duplicate name if driver loaded more than once to support multiple adapters. 01/23/03 - v5.27- Add Set Station Address function. Support multiple adapters by recognize the previously loaded driver(s). No DOS release. 01/20/03 - v5.26- Fix a Tx/Rx HW race condition where only Tx was reported with forcing Status Block to update periodically (every 55ms). No OS2 release. 01/17/03 - v5.25- EOI before handle own interrupt. Correction releasing transmission resources logic. Fix a Tx/Rx HW race condition where only Tx was reported. No OS2 release. 01/02/03 - v5.24- Remove 5704, added Fast Ethernet Banner, and enable ClockRun support for 5705. No OS2 release. 12/13/02 - v5.23- Updated with PXE's LM v3.1.25 and have following fixes: 1) Firmware handles links negotiation for fiber. 2) Fix bug in ISR that will cause system to lockup when other device shared ISR don't have share-interrupt signature. This bug was introduced since v5.00. 3) Speed correction for 5705FE. 4) Add recognitions for 5702/3 A3 and 5782. 12/04/02 - v5.22- Back off Tagged Status. It causes intermittent problem when running with Netbeui. 11/25/02 - v5.21- Fix problem with Network disconnection. Used Tagged Status. 10/25/02 - v5.20- Updated with PXE's LM v3.1.18. Back off EOI before handle own interrupt. Fix performance issue. Fixed problem with forced LineSpeed and Duplex. Fixed problem with EMM386 for 5705. Fixed problem with system appeared to hang when cable was removed. No release for v5.01-v5.19. 10/09/02 - v5.00 - OS2 only Fixed problem with system appeared to hang when cable was removed. 09/24/02 - v5.00- DOS only Fixed problem with ASF enabled. Updated with PXE's LM v3.1.14. Fixed problem with RIS Client Installation. EOI before handle own interrupt. Added 5704 Fiber support. 08/13/02 - v3.07- Added 5705 & 5901 support. Used PXE v3.1.5 's LM. 08/13/02 - v3.06- Removed Alpha Driver Label. 08/01/02 - v3.06- Alpha Driver Fixed problem with EMM386. 07/24/02 - v3.05- Alpha Driver Used PXE's LM. 07/23/02 - v3.04- Alpha Driver Clean out NIC's Status Block during initialization to prevent spur-interrupt after initialization. 07/17/02 - v3.04- Alpha Driver Slim down Host memory used by adpater (dropped 48K memory foot print). Hanle Transmit Segment equal to 0 for OS2 Granite trap. 06/19/02 - v3.03- Fixed problem with the RPL boot up, the driver hangs while downloading file image. The Boot Block Configuration file *.cnf MUST specify in the DRV Type's second field the additional memory (53KB-60KB) used by the driver as follows: DRV BBLOCK\NDIS\B57.DOS ~ 53 ~ Block re-entrance during Interrupt handler loop in OS2 driver. 05/23/02 - v3.02- Fixed a low performance problem with BCM5701 Serdes LOMs with Copper Trace media. As in the PXE v2.1.2. 05/17/02 - v3.01- Port number correction. 05/15/02 - v3.00- Added support for 5704. 07/12/02 - v1.12- Fixed problem with the RPL boot up, the driver hangs while downloading file image. The Boot Block Configuration file *.cnf MUST specify in the DRV Type's second field the additional memory (53KB-60KB) used by the driver as follows: DRV BBLOCK\NDIS\B57.DOS ~ 53 ~ Block re-entrance during Interrupt handler loop in OS2 driver. Hanle Transmit Segment equal to 0 for OS2 Granite trap. Fixed a low performance problem with BCM5701 Serdes LOMs with Copper Trace media. As in the PXE v2.1.2. Port number correction. 05/10/02 - v1.11- Minor Modification to accommodate IBM IEEE 802.2 Protocol. 04/29/02 - v1.10- Drivers allocate system's memory for adapter use to reduce the file size. 04/22/02 - v1.09- Removed unused adapter's specific features. 04/19/02 - v1.08- 1. Latest LM from ODI16 v1.17 that have following fixes: a) DMA once bit with PCI-X b) LINK polarity bit for 5703/02. c) Removed the runt packet configuration setup. d) The PHY ADC Decimator fix. e) Additional delays are needed during PCI config B2B access. f) 40us delay after GPIO access. 3. Added PortNum Keyword. 4. New banner displays other NICS present in the system (up to 8). 5. Support up to 4 adapters. 6. Os2 Traps during Fibre Auto-Negotiation. 04/03/02 - v1.07- Removed debug statements conflict with retail OS/2 kernel. 03/27/02 - v1.06- Fixed inconsistent Fibre Auto-Negotiation. 03/25/02 - v1.05- Fixed high data rate Netbeui protocol's flowcontrol, Added Fiber LED control, and fixed locked up when cable is disconnected and re-connected during file transfer. 03/07/02 - v1.04- Added 16a6, 16a7, 164d device ids. Drivers utilized ODI16 v1.15's LM supports nic send bds and wirespeed. 02/25/02 - v1.03- Added LineSpeed, Duplex, and FuncNum keywords. 02/08/02 - v1.02- Fixed BusNum and DevNum keywords to pickup the assigned adapter when there are more than one adapter present. Utilized ODI16 v1.14's LM modules. 02/07/02 - v1.01- Add OS2 support. Current drivers does not support any Ax firm ware fixes. 02/06/02 - v1.00- First Engineering Release.