Broadcom Corporation 10/100/1000 NetXtreme Ethernet DOS/OS2 NDIS2 driver. ===================================================================== NDIS2 DOS / OS2 Drivers package from the Broadcom Drivers Software CD Release 6.8.2. CONTENTS -------- 1.0 Overview 2.0 Change History 3.0 Installation and Configuration 4.0 Web Sites and Support Phone Number 5.0 Trademarks and Notices 6.0 License and Disclaimer 1.0 Overview _____________ This package includes the NDIS2 DOS/OS2 drivers version 6.47 for NDIS2 DOS / OS2 support for all IBM Broadcom 570x-based Gigabit Ethernet, including 22P7801 adapter option. NDIS2 DOS and OS2 are supported. This package is created by PackageForTheWeb, which allows users to be able to extract all files and directories into either the default destination provided or any drive destination the users wish to specify. 2.0 Change History ____________________ 08/07/03 v6.47 - Added code to driver init routines to enable hardware fixes in 5704 B0 silicon. - Fixed problem where NDIS2 DOS driver causes divide over flow if IRQ is disabled in BIOS. - Fixed problem where NDIS2 OS2 driver causes system to idle approximately 1 minute after NDIS2 OS2 driver banner shows when binding with IBM IEEE 802.2 protocol. - Fixed problem where, when OS2 is boot up from floppy, the NDIS2 OS2 driver causes the system to trap when it is connected to CISCO Catalyst 3550 switch. - Fixed problem where the NDIS2 driver uses same MAC address for both ports on 5704 NIC when reads it from NVRAM. 06/25/03 v6.46 - Fixed intermittent DOS related problem where RPL test failed using 5702 NIC. - Added NoTagStatus Keyword in the PROTOCOL.INI to set Driver NOT to utilize the default method Tag Status of handling interrupts for non 5700 NIC. 06/23/03 v6.45 - Fixed OS2 related problem where the APPC conversation failed during OS2 APING stress test. - Fixed OS2 related problem where system crashed using IBM TCP/IP ping with large packet size (14500 bytes). 05/21/03 v6.44 - Fixed problem where, When connected to a hub, a momentary disconnect will cause you to lose the network connection until the driver is reloaded. - Changed driver to perform Auto-negotiation when LineSpeed is set to 1000. 05/11/03 v6.43 - Fixed problem where OS2 system crashes when uses 5700 Ax and Bx or FullSize mode. - Fixed intermittent problem BCM5704 Serdes/CIOBE Serdes perform slowly. - Fixed intermittent problem where link detection fails when ASF is enabled. - 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. - Fixed a problem where driver would reports the forced LineSpeed when there is no cable detected. 04/29/03 v6.42 - Expanded the lockup detection and recovery code to 5703, 5704, and 5705. Also changed the driver to do a PHY reset on link down. - Modified donwload firmware's length for OS2. - Fixed problem where driver cannot detects link change status when driver first initialized without cable attached. - Reduced the amount of time it takes to re-establish a link after disconnecting and reconnecting a cable. 04/25/03 v6.41 - Fixed intermittent problem where 5704S Fiber NICs cannot pass traffic when connect 3COM SuperStack 4900sx after a system-soft reset. - Added support for dynamic 10/100 or 10/100/1000 phy auto-neg advertising for certain platforms. 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 problem of identifying the second 5704 on the same system. Fixed loss of connection during file copy with 5700 in 10MB. Removed 5704 fiber support. Fixed problem with forced LineSpeed and Duplex of new PXE's LM. Updated with PXE's LM v6.0.3 and have following fixes: 1) Fix bug in Transmit routine that caused 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. Added key word NodeAddress in Protocol.ini. Resolved duplicate name if driver loaded more than once to support multiple adapters. Add Set Station Address function. Support multiple adapters by recognize the previously loaded driver(s). Fix a Tx/Rx HW race condition. EOI before handle own interrupt. Correction releasing transmission resources logic. Fix a Tx/Rx HW race condition where only Tx was reported. Added Fast Ethernet Banner, and enable ClockRun support for 5705. 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. Back off Tagged Status. It causes intermittent problem when running with Netbeui. Fix problem with Network disconnection. 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). Handle 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. 3.0 Installation and Configuration ____________________________________ CUSTOM KEYWORDS in driver in protocol.ini: BusNum DevNum FuncNum or PortNum LineSpeed Duplex NodeAddress FullSize NoTagStatus BusNum: This decimal parameter, range from 0-255, specifies the PCI bus number on which the ethernet controller is located. DevNum: This decimal parameter, range from 0-31, specifies the PCI device number assigned to the ethernet controller. FuncNum or PortNum: This decimal parameter, range from 0-7, specifies the PCI function or port number assigned to the ethernet controller. LineSpeed: This decimal parameter, 10/100/1000, specifies the speed of the network connection. Note: According to IEEE specifications, line speed of 1000 can not be forced and its only achievable by auto negotiation. For simplicity the driver will performs auto negotiation when LineSpeed = 1000. Duplex: This string parameter, HALF/FULL, specifies duplex mode on the ethernet controller. The Linespeed parameter must be set when this keyword is used. If neither the Duplex nor the Linespeed paramaters are specified the ethernet controller will default to autonegotiate mode. NodeAddress: This string parameter specifies the network address used by the the ethernet controller. If Multicast Address or Broadcast Address was specified, the default MAC Address will be used. FullSize: This string parameter sets driver in "Full Size" mode where the driver will use additional of 48KB. Not applicable for 5705, 5901, and 5788. NoTagStatus: This string parameter sets driver NOT to utilize the default method Tag Status of handling interrupts for none 5700 NIC. This helps stabilize on certain platforms when using with protocol such as Netbeui and RPL. Note: The first three keywords are used concurrently and have been included for manufacturing purposes. Do not use them unless you are familiar with PCI device configuration. These three keywords are needed if multiple NetXtreme boards are on a system and (a) specific NetXtreme adapter/s need to be loaded in specific order. Example of the use of these key words in the protocol.ini: [B57] DriverName = "B57$" BusNum = 3 DevNum = 14 PortNum = 2 LineSpeed = 1000 Duplex = Full NodeAddress = "001020304050" To add more adapter(up to 4) repeat the below entry, where n can be from 2 to 4. [B57_n] DriverName = "B57n$" BusNum = DevNum = Example of using addition entries to load more than one adapter in the protocol.ini: [B57] DriverName = "B57$" BusNum = 3 DevNum = 10 [B57_2] DriverName = "B572$" BusNum = 3 DevNum = 11 [B57_3] DriverName = "B573$" BusNum = 3 DevNum = 12 [B57_4] DriverName = "B574$" BusNum = 3 DevNum = 13 NOTE: RPL boot up when using v1.13 and earlier and when use with keyword "fullsize", 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 ~ NOTE: In some cases due to memory constraints the command NET START may not function properly. For these situations NET START BASIC is recommended. 4.0 WEB Sites and Support Phone Number ________________________________________ IBM Support Web Site: http://www.pc.ibm.com/support IBM Marketing eserver Web Site: http://www.pc.ibm.com/us/eserver/xseries If you have any questions about this update, or problems applying the update go to the following Help Center World Telephone Numbers URL: http://www.ibm.com/planetwide. 5.0 Trademarks and Notices ____________________________ The following terms are trademarks of the IBM Corporation in the United States or other countries or both: IBM OS/2 eserver xSeries Broadcom and NetXtreme are trademarks or registered trademarks of Broadcom Corporation Other company, product, and service names may be trademarks or service marks of others 6.0 License and Disclaimer ___________________________ THIS DOCUMENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. IBM DISCLAIMS ALL WARRANTIES, WHETHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE AND MERCHANTABILITY WITH RESPECT TO THE INFORMATION IN THIS DOCUMENT. BY FURNISHING THIS DOCUMENT, IBM GRANTS NO LICENSES TO ANY PATENTS OR COPYRIGHTS. Note to U.S. Government Users -- Documentation related to restricted rights -- Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp.