diff options
Diffstat (limited to 'drivers/staging/wlags49_h2/README.wlags49')
-rw-r--r-- | drivers/staging/wlags49_h2/README.wlags49 | 641 |
1 files changed, 641 insertions, 0 deletions
diff --git a/drivers/staging/wlags49_h2/README.wlags49 b/drivers/staging/wlags49_h2/README.wlags49 new file mode 100644 index 00000000000..7586fd09adc --- /dev/null +++ b/drivers/staging/wlags49_h2/README.wlags49 @@ -0,0 +1,641 @@ +============================================================================== +Agere Systems Inc. July 2004 +Readme for Linux Driver Source for Wavelan Version: 7.22-abg +============================================================================== + +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. DESCRIPTION +2. SYSTEM REQUIREMENTS +3. NEW IN THIS RELEASE +4. INSTALLATION NOTES +5. TECHNICAL CONSTRAINTS +6. KNOWN ISSUES +7. TECHNICAL SUPPORT + +------------------------------------------------------------------------------ +1. DESCRIPTION + + With this package, you can build and install a Wireless driver for a + specific Linux kernel. + + The driver in this package supports the network interface cards based on: + - WL60010, a.k.a. Hermes-II + - WL60040, a.k.a. Hermes-II.5 + + Although derived from the Hermes-I/II Linux driver, this release ONLY + Supports Hermes-II/II.5 chipsets. Hermes-I is no longer supported. + + The software is distributed in a compressed source file archive: + - wl_lkm_7_22_abg.tar.gz + + Because this release supports more than one Hermes CPU and bus + architecture, a naming convention is used for the resulting binaries that + can be built from this source code. Driver binaries are named as follows: + + wlags49_<hermes_type>_<bus_arch>.o + + where 'wlags49' denotes an Agere WaveLan Linux build, + + <hermes_type> is: 'h2' for Hermes-II, 'h25' for Hermes-II.5 + + <bus_arch> is: 'cs' for Card Services (PCMCIA, Compact Flash), PCI for + PCI or MiniPCI. + + For example, a driver built for Hermes-II Card Services (PCMCIA/Compact + Flash) is named wlags49_h2_cs.o, whereas a driver built for Hermes-II + MiniPCI is named wlags49_h2_pci.o. + The following software is included with this distribution: + + General information: + * README.wlags49 This file + * LICENSE.wlags49 License + * wlags49.mk Top level Makefile + * Build Script to build driver + * Install Script to install driver + + Driver source: + * wireless/ MSF source + * hcf/ HCF and F/W source + * wireless/wlags49_cs.mk Driver Makefile, PC Card + * wireless/wlags49_pci.mk Driver Makefile, PCI + * include/hcf/debug.h Driver debug support + * include/hcf/hcfcfg.h Header to configure HCF + * include/wireless/*.h Driver source headers + + Driver online manual page: + * man/wlags49.4 Driver manual page + + PCMCIA configuration update: + * etc/wlags49.conf Add-on config file + * etc/wlags49.mk config update Makefile + * etc/wlags49.patch config update patch file + + The driver is build up of 2 modules: + - a higher module called Module Specific Functions (MSF), which contains + the functions of the driver that are network driver interface and + Operating System specific. + - a lower module called Hardware Control Functions (HCF), which contains + the functions to interface to the Network Interface Card (NIC). The HCF + provides for all WaveLAN NIC types one standard interface to the MSF. + This I/F is called the Wireless Connection Interface (WCI) and is the + subject of a seperate document (025726). + + The HCF directory contains firmware images to allow the card to operate in + either station (STA) or Access Point (AP) mode. In the build process, the + files fw_h2.c and fw_h25.c are used for Hermes-II and Hermes-II.5 + respectively. The firmware images in this release are identified as: + - HII Station F/W: fw_h2.c.sta + - HII.5 Station F/W: fw_h25.c.sta + - HII AccesPoint F/W: fw_h2.c.ap + - HII.5 AccesPoint F/W: fw_h25.c.ap + To build a STA or AP mode driver, the suffix .sta or .ap must be removed. + The files as distributed by this release build STA drivers by default. + +------------------------------------------------------------------------------ +2. SYSTEM REQUIREMENTS + +2.1 Operating System + + This software can be compiled and installed with Linux kernel versions + 2.4.x. Although this driver should compile for other CPUs as well, as of + the date of this release, no CPU architectures other than x86 have been + verified. + + wl_lkm_7_22_abg is tested with the following Linux Distributions: + * Red Hat version 9.0 + * Suse version 9.0 + + If you're building for PC Card or Compact Flash, you need the Card Services + from David Hinds. + + wl_lkm_7_22_abg is tested with: + * pcmcia-cs-3.2.7.tar.gz + +2.2 Free Disk Space + + To compile the software you need to have the full set of Linux kernel + source files installed, as well as a sane build environment which includes + all tools necessary for compiling and linking code. Depending on the exact + version of the kernel, you need approximately 150 MB of free disk space. + Once compiled, the driver uses about 150-200 KB. Please note, this size is + approximate and can vary depending on which version of the driver is built. + In addition, adding debug tracing support increases this size. + +------------------------------------------------------------------------------ +3. NEW IN THIS RELEASE + +Version 7.22 abg - July 28, 2004 + +------------------------------------------------------------------------------ +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 + 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) If you're building for PC Card or Compact Flash, read the Linux + PCMCIA-HOWTO by David Hinds. This document is probably provided on the + CD-ROM of your Linux distribution. You can download the latest version + from: + + http://pcmcia-cs.sourceforge.net + + Please read the section titled "Prerequisites and kernel setup" of the + PCMCIA-HOWTO. + +4.2 Build the driver for PC Card / Compact Flash + + 1) Obtain a copy of the Linux PCMCIA package from a CD-ROM of your Linux + distribution or download the latest version. + For your convenience, the Agere Systems Wireless CD-ROM contains a copy of + the PCMCIA package in sub-directory: Xtras/Linux/PCMCIA + + 2) To unpack the Linux PCMCIA package, copy it to the current working + directory and type: + % tar xzvf pcmcia-cs-x.y.z.tar.gz + % mv pcmcia-cs-x.y.z pcmcia-cs + + Note: If you use the archive supplied on the CDROM, use archive name + "pc3_2_1.tgz" instead of "pcmcia-cs-3.2.7.tar.gz". + + Note: even though PCMCIA code exists in the kernel source tree, the PCMCIA + Card Services package needs to be unpacked locally to build drivers based + on it. + + 3) Extract the wlags49 distribution archive on top of the Linux PCMCIA + package. + % cd pcmcia-cs + % tar xzvf ../wl_lkm_7_22_abg.tar.gz + + 4) To build and install the driver, follow the procedure below: + % ./Configure + + Answer the presented questions. Usually the default answers are OK and + pressing "Enter" is enough. + On newer RedHat systems, however, you should specify "/usr/src/linux-2.4" + as the Linux source directory instead of the default "/usr/src/linux". + + For more detailed information on configuration, building and installing, + see the PCMCIA-HOWTO. + + To build the default drivers, which support Hermes-II in station mode, run + the Build script: + % ./Build + + This script determines whether your system uses in-kernel PCMCIA and either + builds the full PCMCIA package or just the driver. + + Before installing the driver with the Install script, you must become + 'root': + % su + .. + % ./Install + + This script determines whether your system uses in-kernel PCMCIA and either + installs the full PCMCIA package or just the driver. + + 5) If it becomes necessary to clean the build, issue the following + commands: + % make clean + % make -C lib clean + +4.3 Build the driver for PCI + + 1) Extract the wlags49 to the current working directory. + % tar xzvf wl_lkm_7_22.tar.gz + + Note: there is no need to unpack the driver source into a PCMCIA build + directory. + + 2) To build the PCI driver: + % make -f wlags49.mk wlags49_h2_pci + or + % make -f wlags49.mk wlags49_h25_pci + + 3) Install the driver. + % insmod ./wireless/wlags49_h25.o + + 4) If it becomes necessary to clean the build. + % make -f wlags49.mk pci_clean + +4.4 Configure your Wireless PC Card + + There are 3 ways to configure the driver + - module parameters (/etc/pcmcia/config.opts) + - wireless extension (/etc/pcmcia/wireless.opts) + - Agere configuration file (/etc/agere/iwconfig-eth#) + + +4.4.1 Configure through /etc/pcmcia/config.opts + + To use this method, make sure that /etc/pcmcia/wireless.opts file is either + absent or contains blank parameter values as shown below. + + *,*,*,00:60:1D:*|*,*,*,00:02:2D:*) + INFO="" + ESSID="" + MODE="" + KEY="" + ;; + + 1) To configure the Wireless PC Card, please refer to: + * The online manual page (wlags49.4) + % man wlags49 + * 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 + + a) To connect your computer to a wireless infrastructure that includes + access points such as the AP-1000 or AP-500, you 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 "<driver_name>" opts "network_name=My\ Network" + + Notice that the space character needs to be escaped with a backslash. + + b) To connect your computer to a Residential Gateway RG-1000, you need + to know the RG ID (=network_name) and the encryption key. You can find + the RG ID on a small label on the rear of the unit. + + For example if your RG-1000 has ID 225ccf and you did not change the + encryption key yet, edit the config.opts file to include the following: + + module "<driver_name>" opts "network_name=\"225ccf\" key_1=\"25ccf\" + enable_encryption=Y" + + If you changed your encryption key, you should specify this key as key_1 + on the parameter line. + + c) To connect your computer to a peer-to-peer network, in an environment + without access points, the IBSS mode is recommended. + + For example to connect to a peer-to-peer network called "My Network", + enter the following in the config.opts file: + + module "<driver_name>" opts "create_ibss=Y network_name=My\ Network" + + d) 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 "<driver_name>" opts "network_name=Ocean station_name=Wave1" + + e) To connect your computer to an Ad-Hoc workgroup of wireless + computers, enter the following in the config.opts file: + + module "<driver_name>" opts "port_type=3" + + Note that the "Ad-Hoc Demo Mode" is not the recommended mode for a + peer-to-peer network. The configuration of this non-interoperable mode + is only explained here for special applications (e.g. research, or + compatibility with other / previous WaveLAN/IEEE products). + + The IBSS mode described in c) is the preferred and interoperable mode + for creating a peer-to-peer network. + + 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" + ;; + + RedHat and Suse do not use the network.opts to configure the driver. + Instead RedHat uses a GUI-based tool called 'neat' ('net.cfg' in older + versions) and SuSE Linux uses 'YaST'. These tools creates scripts, like + ifcfg-eth0, in the directory /etc/sysconfig/network-scripts. Using the + default GNOME menu, you can start netcfg from: Programs->System->Network + Configuration. + + 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 Wireless documentation. + +4.4.2 Configure through /etc/pcmcia/wireless.opts + + This driver has 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. + + The latest versions of the PCMCIA package contain scripts that use the + wireless extension to configure the driver as an alternative to the + configuration through module parameters as described in section 4.4.1. + Read the /etc/pcmcia/wireless.opts file for the theory of operation. When + the driver is configured, go to section 4.4.1 step 3 to configure the + network parameters. + + 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.4.3 Configure through /etc/agere/iwconfig-eth# + + In addition to using either the module options or the wireless extensions + methods to configure a wireless device, this version of the software also + supports an Agere specific implementation. This was done because: + * Module options configures multiple devices the same. + * Wireless extensions parameters do not cover all of the available options + in the driver. + + For each wireless ethernet device (identified by eth<n>, where n is a + positive integer), a file /etc/agere/iwconfig-eth<n> can be created which + contains configuration information for a wireless device. For example, the + file /etc/agere/iwconfig-eth1 is the config file for eth1. This file should + contain Key/Value pairs in the format: + + <Key>=<Value> + + where <Key> is the parameter to configure and <Value> is the value to + assign it. For example, if the config file /etc/agere/iwconfig-eth1 + described above contains the following: + + DesiredSSID=some_network + EnableEncryption=Y + Key1=net01 + TxKey=1 + + this configures eth1 to associate to the ESSID 'some_network' with + encryption on, where the the first encryption key is 'net01' and the key to + use for encryption is Key 1. + + Note that this only works on Agere hardware which uses this driver. For + other wireless drivers, or non-wireless devices, this file can be present, + but has no effect. + + Please refer to the man page for more information on this configuration + file and the parameters that can be set. + + +4.5 Configuring your Wireless PCI card + + Note that the above method of configuring the card using + /etc/pcmcia/config.opts is only valid for PCMCIA/CF cards. For [mini]PCI + and CardBus cards, refer to your system's documentation on modules.conf to + load the driver with the proper options for a given wireless ethernet + interface. In addition, network configuration tools like 'netcfg', 'neat', + or 'YaST' (see Section 4.4.1, Step 3) can be used to configure the miniPCI + card. Lastly, the Agere configuration file described in Section 4.4.3 may + also be used for [mini]PCI and CardBus devices. + +4.6 Troubleshooting + + When the Wireless PC Card is inserted, the card manager 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 Wireless 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 is steady-on. With Card Power Management enabled, it + blinks rapidly (several times per second). + * Transmit/Receive LED (closer to the edge of the adapter) + - This LED flashes 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 the online manual page for additional configuration, feature and + support information. + % man wlags49 + or + % man 4 wlags49 + or + % nroff -man wlags49.4 | more + +4.7 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 module. + + * To quickly identify the version of the source, type: + % grep DRV.*VERSION include/wireless/wl_version.h + #define DRV_MAJOR_VERSION 7 + #define DRV_MINOR_VERSION 22 + + * To identify the revision of the HCF library contained in the driver, + type: + % grep HCF.Revision hcf/hcf.c + #define HCF_VERSION TEXT( "HCF$Revision: 1.8 $" ) + + To identify a compiled wlags49 driver, go to the directory where the driver + is located. Card Services drivers (wlags49_h2_cs.o and wlags49_h25_cs.o) + are located in: + /lib/modules/<kernel-version>/pcmcia + + PCI drivers (wlags49_h2.o) are located in: + /lib/modules/<kernel-version>/kernel/drivers/net + + * To retrieve the version of the source used to compile the driver, type: + % strings <driver_name>.o | grep Agere + <driver_name> v7.22-abg-Beta for PCMCIA + <driver_name> v7.22-abg-Beta for PCI + + * Likewise, to retrieve the revision of the HCF used to compile the driver, + type: + % strings <driver_name>.o | grep Revision + HCF$Revision: 5.15 + + At startup the wlags49 driver reports its version in the system log file + (/var/log/messages). + +------------------------------------------------------------------------------ +5. TECHNICAL CONSTRAINTS + + At the time of release of this software, the following constraints are + identified: + +5.1 Using the ISA adapter + + Description: To allow operation in desktop computers Agere also provides an + optional ISA bus to PC Card adapter (also referred to as "swapbox"). + + This 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 only + probes at 3E0. + + Actions: + 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 adapter by replacing the + jumper on the ISA adapter. The correct jumper setting is pictured in + the electronic "Wireless ISA Adapter, Getting Started Guide" provided + on the Wireless 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 thru 7.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 PCI Adapter + + Description: To allow operation in desktop computers Agere 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.2.7 or higher. + + The default configuration of the interrupt routing method of the PCI + Adapter's TI CardBus Controller is incorrect. + + Actions: + 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 thru 7.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". + +------------------------------------------------------------------------------ +6. KNOWN ISSUES + + This is the current list of known issues for this release, and will be + addressed in the near future: + + 1. This driver release contains a version of Hermes-II.5 firmware which + REQUIRES calibrated cards. If there is no calibration data present in the + PDA of the hardware, the firmware does not operate. + + 2. WDS is not yet supported. + + 3. DMA is not yet supported. + + 4. WPA is not yet supported. + + 5. 32-bits I/O is not yet supported. + + 6. The current Build script also builds the PCI drivers. + + 7. The current Install script also copies the PCI drivers to the lib + directory. + + 8. If F/W files are required from outside this release, the entry points + inside these F/W files have to be renamed from "ap" and "station" to + "fw_image" and they have to be renamed to fw_h2.c and fw_h25.c for + Hermes-II and Hermes-II.5. + +------------------------------------------------------------------------------ +7. TECHNICAL SUPPORT + +7.1 Finding Information + + On the Agere Systems Web Site you can find the most recent device drivers, + software updates and user documentation. + + World Wide Web: http://www.agere.com + +7.2 Contact Technical Support + + If you encounter problems when installing or using this product, or would + like information about our other "Wireless" products, please contact your + local Authorized "Wireless" Reseller or Agere Systems sales office. + + Addresses and telephone numbers of the Agere Systems sales offices are + listed on our Agere Systems web site. + + 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 Agere Systems web site. + + Include Product Name, Serial Number and software version number with each + request to help the Support Group helping you. + +============================================================================== + END OF FILE |