===========================================================
Lucent Technologies                              June, 2000
Linux Driver Source/Library for WaveLAN/IEEE CARD,
                                   Variant 1, Version: 6.02
===========================================================

This text file includes update information, installation
instructions, limitations to the current version of the
product, and suggestions to solve known issues or problems.


TABLE OF CONTENTS.

1.  SOFTWARE DESCRIPTION
2.  SYSTEM REQUIREMENTS
3.  NEW IN THIS RELEASE
4.  INSTALLATION NOTES
5.  TECHNICAL CONSTRAINTS
6.  KNOWN ISSUES
7.  TECHNICAL SUPPORT
        
-----------------------------------------------------------
1.  SOFTWARE DESCRIPTION

1.1 Description 

    This software is officially released and supported
    software of Lucent Technologies Inc.

1.2 Software Components

    This software for the WaveLAN IEEE Turbo 11 Mb PC Card
    is distributed in a compressed archive:
    * wavelan2_cs-6.02.tar.gz

    To fit the 8.3 name format of the CDROM, the archive
    wavelan2_cs-6.02.tar.gz is renamed to:
    * wlli602.tgz

    This archive contains driver source files and a 
    library. You can use these files to build and install a
    WaveLAN/IEEE PC Card driver for your specific Linux 
    kernel. 

    The current set of driver source files supports Linux 
    kernel versions 2.0.x through 2.2.x for the Intel 
    architecture, as included (for example) with the
    following Linux Distributions:
    * Red Hat version 5.2, 6.0, 6.1, 6.2
    * Suse    version 6.1, 6.3

    The included HCF library implements an interface to the
    Lucent Technologies 802.11 MAC Controller, used in the 
    WaveLAN/IEEE environment.

    Designed for the WaveLAN/IEEE Turbo 11 Mb PC Cards, you
    can also use this software to install and operate 
    previous versions of WaveLAN/IEEE PC Cards, like the:
    * Standard White & Bronze label PC Cards
    * Turbo Bronze label PC Cards
    * Silver Label PC Cards

1.3 Software Versions

    The following software is included with this 
    WaveLAN/IEEE distribution:
   
    General information:
    * README.wavelan2_cs          This file
    * LICENSE.wavelan2_cs         License
    * wavelan2_cs.mk              Top level Makefile

    Driver source and HCF library:
    * clients/wavelan2_cs.mk      Driver Makefile
    * clients/wavelan2_cs.c       Driver source (v6.02)
    * include/hcf/debug.h         Driver debug support
    * include/hcf/libhcf.h        HCF interface definition
    * lib/libhcf-i386.a           HCF library (v4.6a)

    Driver online manual page:
    * man/wavelan2_cs.4           Driver manual page

    PCMCIA configuration update:
    * etc/wavelan2_cs.conf        Add-on config file
    * etc/wavelan2_cs.mk          config update Makefile
    * etc/wavelan2_cs.patch       config update patch file

-----------------------------------------------------------
2.  SYSTEM REQUIREMENTS

2.1 Operating System

    This software can be compiled and installed on systems 
    running a Linux kernel versions 2.0.x through 2.2.x for
    the Intel architecture.

2.2 Free Disk Space

    To compile the software you will need to have the full
    set of Linux kernel source files installed. Depending 
    on the exact version of the kernel, you will need 
    approximately 65 MB of free disk space.
    Once compiled, the driver will use approximately 38 KB.

-----------------------------------------------------------
3.  NEW IN THIS RELEASE

Version 6.02  -  June 13, 2000

    * Renamed from version 6.01 (Beta)
      Usage of the PCI adapter has positive results on 
      several PCI PCs. 

Version 6.01 (Beta) -  April 19, 2000

    * Changed interrupt enable/disable code to support PCI
      Interrupts, thanks to David Hinds and feedback from
      the Linux community.
    * Solved redefinition of spinlock_.. and capable on
      2.0.x kernel in combination with PCMCIA package
      3.1.13 and higher.

Version 6.00  -  March 2, 2000

    * Corrected setting of mac_address parameter on 
      pre-2.1.0 kernels
    * Corrected number of IO Ports (=0x40)
    * Corrected dbm() function
    * Added support for Microwave Oven Robustness
    * Added iwspy support, thanks to Dan Forsberg and 
      Jim Binkley
    * Added support for 3.3/5 Volt cards
    * Added etc/wavelan2_cs.conf

Version 4.00  -  July 2, 1999

    * Added support for WEP encryption
    * Corrected string transfer of private ioctls used by 
      the Wireless extensions.
    * Support for signal levels in dBm; reported by the 
      Wireless extensions.
    * Support for CFG_DRV_IDENTITY moved from HCF to MSF.
    * Validate module parameters by default. This was only
      enabled in debug mode in the previous versions.
    * Fixed Card Power Management bug. 
      Version 3.10 did not enable PM on standard (2 Mbit/s)
      cards with STA firmware 2.00, when configured to 
      enable PM.
    * Corrected module parameter type of irq_mask 
      (h = short) and irq_list (1-4b = 1-4 bytes).

Version 3.10  -  April 28, 1999

    * Changes to allow for the module parameter differences
      between Linux 2.0 and Linux 2.1. 
      Linux 2.0 only allowed for 32-bit integer parameters,
      the 2.1 or later kernels allow for 8, 16 and 32 bit 
      parameters.
    * Added BSD clause to the GPL license.
    * Added support for Linux Wireless extensions.
    * Fixed the setting of the network_name and 
      station_name when the name was empty or set to ANY
      for network_name.
    * The user can now enable Card Power Management:
      PLEASE NOTE: This function should not be enabled 
                   until software that supports Card Power
                   Management will be installed on both:

                   - PC Card  (Use Station Functions 
                               firmware v2.00 or higher) and 

                   - WavePOINT-II Access Point 
                               (use AP software v2.03 or
                                higher) ,

                  In case you enable Card Power Management
                  without having updated the firmware to 
                  version levels listed above, the driver
                  will not effectuate Card Power Management.
    * Added support for transmit timeout handling.
    * Re-added channel parameter.
    * Renamed parameter receive_all_multicast to 
      receive_all_multicasts
    * Changed the values of the parameters 
      card_power_management and receive_all_multicasts 
      to 'Y' for Enable and 'N' for Disable. 

Version 1.27 (Beta-2) - March 2, 1999

    First Source/Library distribution.
    * Changed module parameters names to better conform
      to the PCMCIA and 802.11 naming conventions.

Version 1.20 (Beta-1) - February 9, 1999

    Binary only version for Slackware 3.6 (linux 2.0.35)
    and RedHat 5.2 (linux 2.0.36).

-----------------------------------------------------------
4.  INSTALLATION NOTES

    The driver files for the Linux driver are not "ready" 
    for direct installation onto any Linux computer.
    To build and install the driver you will need some 
    expertise on the Linux operating system in general and
    the type and version installed of the kernel installed
    on your computer. 
    With this knowledge you can use the driver source files
    provided to build your own Linux driver for your 
    specific computer and kernel.

4.1 Before you start

    1) Determine the type and version of the Linux kernel
       of your computer and check whether it meets the 
       system requirements listed in section 2 of this
       README.

    2) Read the Linux PCMCIA-HOWTO by David Hinds. This
       document is probably provided on a CD-ROM of your
       Linux distribution. You can download the latest
       version from: http://pcmcia.sourceforge.org

       Please read the section titled "Prerequisites and
       kernel setup" of the PCMCIA-HOWTO.

4.2 Build the WaveLAN/IEEE Driver

    1) Obtain a copy of the Linux PCMCIA package from a 
       CD-ROM of your Linux distribution or download the
       latest version from: http://pcmcia.sourceforge.org

    2) Unpack the Linux PCMCIA package.
       % tar xzvf pcmcia-cs-3.1.8.tar.gz

    3) Extract the WaveLAN/IEEE distribution archive on top
       of the Linux PCMCIA package.
       % cd pcmcia-cs-3.1.8
       % tar xzvf ../wavelan2_cs-6.02.tar.gz

       Note: If you use the archive supplied on the CDROM,
       use archive name "../wlli602.tgz" instead of 
       "../wavelan2_cs-6.02.tar.gz".

    4) Build and install the PCMCIA package as described in
       the PCMCIA-HOWTO.
       % make config
       % make all
       % su
       ..
       # make install

4.3 Configure your WaveLAN/IEEE PC Card

    1) To configure the WaveLAN/IEEE PC Card, please refer
       to:
       * The WaveLAN/IEEE manual page (wavelan2_cs.4)
         % man wavelan2_cs
       * The network adapter sections of the PCMCIA
         documentation. 
         % more PCMCIA-HOWTO

    2) Use an editor to configure the module parameters:
       # vi /etc/pcmcia/config.opts

       For example:
       a) To connect your computer to an Ad-Hoc workgroup
          of wireless computers
          enter the following in the config.opts file:

          module "wavelan2_cs" opts "port_type=3"

          This is the typical setting for connecting
          individual computers to a peer-to-peer network,
          in environments without a dedicated access point.

       b) To connect your computer to a wireless 
          infrastructure that includes access points 
          such as the Lucent Technologies WavePOINT-II, 
          you will need to identify the network name of 
          the wireless infrastructure.

          For example if your infrastructure uses the 
          network name "My Network", edit the config.opts 
          file to include the following:
   
          module "wavelan2_cs" opts "network_name=My\ Network"
   
          Notice that the space character needs to be 
          escaped with a backslash.
  
       c) Optionally you can also include a "Station Name" 
          value that can be used to indentify your computer 
          on the wireless network.

          For example if you wish to name your computer 
          "Wave1" when connecting it to a wireless 
          infrastructure,  edit the config.opts file to 
          include the following:
   
          module "wavelan2_cs" opts "network_name=Ocean station_name=Wave1"

    3) Use an editor to modify the network options for your
       adapter. 
       # vi /etc/pcmcia/network.opts

       The parameters need to be correct for the connected
       network. Check with your system
       administrator for the correct network information. 
       Refer to the PCMCIA-HOWTO for more configuration 
       information.

       For example:
            *,*,*,*)
                IF_PORT=""
                BOOTP="n"
                IPADDR="10.0.0.5"
                NETMASK="255.255.255.0"
                NETWORK="10.0.0.0"
                BROADCAST="10.0.0.255"
                GATEWAY="10.0.0.1"
                DOMAIN="domain.org"
                DNS_1="dns1.domain.org"
                ;;

    4) Restart the PCMCIA services.
       # /etc/rc.d/rc.pcmcia restart
         or
       # /etc/rc.d/init.d/pcmcia restart


    For a more detailed description about the various 
    configuration options and definitions, please consult
    the 'Getting Started Guide' that was provided on the
    WaveLAN Software CD-ROM in Adobe's Acrobat PDF. 

    WaveLAN User documentation is also available in 
    electronic format on the WaveLAN Web Site.
    (http://www.wavelan.com).
    You can download the documentation in Adobe's Acrobat
    Portable Document Format (PDF). To view or print PDF
    files you will need the freeware Acrobat Reader that 
    can be downloaded from the Adobe Web Site 
    (http://www.adobe.com/acrobat)

4.4 Troubleshooting

    When the WaveLAN/IEEE PC Card is inserted, the card 
    manager will emit beeps in different tones to indicate
    success or failure of particular configuration steps.
      a) Two high beeps
         - The card was identified and configured 
           successfully.
      b) One high beep followed by a low beep
         - The card was identified, but could not be 
           configured.
         - Examine the system log (dmesg) for PCMCIA error
           or warning messages.
      c) One low beep
         - The card could not be identified.
         - Execute "cardctl ident" to display the adapter 
           PnP information.
           Verify the PnP information matches an entry in 
           the PCMCIA configuration file 
           (/etc/pcmcia/config).
         - Examine the system log (dmesg) for PCMCIA error 
           or warning messages.

    The WaveLAN/IEEE PC Card has two LEDs that indicate the
    state of the adapter and network.
      * Power LED (toward the middle of the adapter)
        - This LED indicates power has been applied, and
          the card is functional. In normal operation mode
          with Card Power Management disabled, it will be 
          steady-on. With Card Power Management enabled, it
          will blink rapidly (several times per second).
      * Transmit/Receive LED (closer to the edge of the 
        adapter)
        - This LED will flash when it detects transmit or 
          receive packets.

      * Both LEDs blink at the same time every 10 seconds.
        - The adapter was unable to make contact with the
          named wireless network. Verify the network_name,
          in the config.opts file matches the network name
          of the access point.
      * LEDs indicate normal operation with the Power LED
        steady-on or blinking rapidly and Transmit/Receive
        LED flashing, but no traffic.
        - If the network is operating in normal mode (ie.
          port_type = 0 or not specified), and a 
          network_name has been specified, verify the
          workstation network parameters (ifconfig, route,
          etc.) are correct for the wireless network.
        - If the network is operating in Ad-Hoc (peer-to-
          peer) mode (ie. port_type = 3), the adapter needs
          another workstation/adapter to communicate with.
          Verify the network parameters on both of the
          workstations (ifconfig, route, etc.) are correct.

    Refer to WaveLAN/IEEE manual page for additional 
    configuration, feature and support information.
       % man wavelan2_cs 
         or
       % man 4 wavelan2_cs 
         or
       % nroff -man wavelan2_cs.4 | more

4.5 Wireless extensions

    This driver has some support for the "Wireless
    Extensions". This interface allows the "Wireless Tools"
    to get statistics from the driver and allows to change
    the configuration of the driver on the fly.

    For more information, refer to the following WEB pages:
    http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html
    http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html

4.6 Identifying the software

    This section explains how to identify the version of
    this software once it is unpacked or installed.

    The Linux Driver Source/Library distribution consist of
    two main components, the driver source and the HCF 
    library. 

    * To quickly identify the wavelan2_cs.c source, type: 

      % grep wavelan2_cs.c wavelan2_cs.c
      "wavelan2_cs.c 6.02 06/13/2000 11:30:00 (Lucent Technologies)";

    * To identify the revision of the HCF library, type:

      % strings libhcf-i386.a | grep Revision
      HCF$Revision:   4.6

    To identify a compiled wavelan2_cs.o driver, go to the
    directory where the driver is located. Installed drivers
    are normally located in: 
    /lib/modules/<kernel-version>/pcmcia

    * To retrieve the version of the source used to 
      compile the driver, type:

      % strings wavelan2_cs.o | grep wavelan2_cs.c
      wavelan2_cs.c 6.02 06/13/2000 11:30:00 (Lucent Technologies)

    * To retrieve the revision of the HCF library used
      to compile the driver, type:

      % strings wavelan2_cs.o | grep Revision
      HCF$Revision:   4.6

-----------------------------------------------------------
5.  TECHNICAL CONSTRAINTS

    At the time of release of this software, the following 
    constraints are identified:

5.1 Using the WaveLAN/ISA adapter

    Description: The WaveLAN/IEEE solution was designed
                 as a one-card solution, providing the same
                 PC Card type for operation in standard 
                 Type II PC Card slots of either:
                 * laptop computers or 
                 * Lucent Technologies WavePOINT-IIs.

                 To allow operation in desktop computers
                 Lucent also provides an optional ISA bus
                 to PC Card adapter (also referred to as 
                 "swapbox").

                 This WaveLAN ISA Adapter can be configured
                 for two different I/O Address values:
                 * 3E2 (factory-set default)
                 * 3E0  

    Impact:      By default the i82365 module of the Linux
                 pcmcia package will only probe at 3E0. 

    Action:      1) Read the manual page on the probing 
                    of the i82365 module, by typing the 
                    command:

                    man i82365

                 2) Apply one of the two following options:

                    a) Change the I/O address strapping of
                       the ISA card by replacing the jumper
                       on the ISA board.
                       The correct jumper setting is 
                       pictured in Figure C-1 of Appendix C
                       in the electronic user's guide 
                       provided on the WaveLAN Software 
                       CD-ROM. This guide is provided in
                       Adobe's Acrobat PDF format.

                     b) Alternatively, you can load the 
                        i82365 module with the 
                        "extra_sockets" parameter set to 1.

                        On a RedHat 5.x or 6.x system, put
                        this in the file 
                        "/etc/sysconfig/pcmcia":
                        PCMCIA=yes
                        PCIC=i82365
                        PCIC_OPTS="extra_sockets=1"
                        CORE_OPTS=
                        CARDMGR_OPTS=
                    
                        For other Linux distributions, 
                        you are advised to consult
                        the "PCMCIA-HOWTO" notes for 
                        information about changing the
                        I/O Address probing.


5.2 Using the WaveLAN PCI Adapter

    Description: The WaveLAN/IEEE solution was designed
                 as a one-card solution, providing the same
                 PC Card type for operation in standard
                 Type II PC Card slots of either:
                 * laptop computers or
                 * Lucent Technologies WavePOINT-IIs.

                 To allow operation in desktop computers
                 Lucent also provides an optional PCI bus
                 to PC Card adapter (also referred to as 
                 "swapbox").

                 For correct interrupt assignment, the
                 system should support PCIBIOS 2.2.
                 It is recommended to use PCMCIA package
                 version 3.1.14 or higher.

                 The default configuration of the interrupt
                 routing method of the PCI Adapter's TI 
                 CardBus Controller is incorrect.

    Action:      1) Read the manual page on the "Options
                    specific for TI CardBus Controllers"
                    of the i82365 module, by typing the
                    command:

                    man i82365

                 2) Load the i82365 module with the 
                    "irq_mode" parameter set to 0.

                    On a RedHat 5.x or 6.x system, put this 
                    in the file "/etc/sysconfig/pcmcia":
                    PCMCIA=yes
                    PCIC=i82365
                    PCIC_OPTS="irq_mode=0"
                    CORE_OPTS=
                    CARDMGR_OPTS=
                    
                    For the location of the PCMCIA scripts
                    on other Linux distributions, you are
                    advised to consult the "PCMCIA-HOWTO",
                    "Notes about specific Linux
                    distributions".

5.3 Station functions compatibility

    Description: This driver supports cards with Station
                 Functions firmware version 4.x and higher.

    Impact:      The driver will abort and generate the
                 following error message in the system
                 log file (/var/log/messages):

                 eth0: WaveLAN/IEEE, HCF failure: "Primary
                 functions are compatible, station
                 functions are not"

    Action:      You are advised either to:
                 a) Use the WaveLAN Station firmware Update
                    utility (for example WSU10430.exe) on a
                    Windows system with a WaveLAN driver.
                 
                 b) Or revert to version 4.00 of this
                    driver (wavelan2_cs-4.00.tar.gz).

5.4 Building a bridge or router

    Description: The Linux driver uses the Station Functions
                 firmware programmed in Flash memory on the
                 WaveLAN/IEEE card.

                 On an IEEE 802.11 Station you can not
                 build a MAC-layer Transparent Bridge.

                 This is not a restriction of WaveLAN/IEEE
                 only; it is an architectural restriction
                 of IEEE 802.11. As such it is specified
                 in the 802.1D Bridge Standard (1998 
                 Edition):
                 A Bridge to an 802.11 LAN shall connect to
                 an 802.11 Portal, which in turn connects
                 to an 802.11 Distribution System.
                 As the Distribution System is part of the
                 AP (and not of the STA), you need an AP to
                 build a Bridge.

                 The major cause for this is the MAC-layer
                 Acknowledgement. A Transparent Bridge will
                 have to Ack frames destined for multiple 
                 destinations (everything that is not in
                 the cell itself). An AP can do this; a STA
                 can not; by definition.

    Action:      It is possible to build a router using
                 this driver.

-----------------------------------------------------------
6.  KNOWN ISSUES

    At the time of release of this software, no problems
    are known.

-----------------------------------------------------------
7.  TECHNICAL SUPPORT

7.1 Finding Information

    On the WaveLAN Web Site you can find the most recent
    device drivers, bridge firmware, software updates and
    user documentation.

    World Wide Web:    HTTP://WWW.LUCENT.COM/ORiNOCO    or
                       FTP://FTP.WAVELAN.COM/PUB

7.2 Contact Technical Support

    If you encounter problems when installing or using this
    product, or would like information about our other
    WaveLAN products, please contact your local Authorized
    WaveLAN Reseller or Lucent Technologies Sales office.
    You can find their address on the ORiNOCO website at:

    HTTP://WWW.LUCENT.COM/ORiNOCO/CONTACT

    When contacting Technical Support, please use the
    Problem Report Form and send it to us by Fax or E-Mail.
    The Problem Report Form 'REPORT.TXT' (Plain text format)
    is included on the disk. Alternatively, you can download
    the Problem Report Form from the WaveLAN Web Site.

    Include Product Name, Serial Number and software
    version number with each request to help the Support
    Group helping you.

===========================================================
                          END OF FILE
