Intel PRO/Wireless 3945ABG Network Connection Adapter

Copyright (C) 2006 Intel Corporation.  All rights reserved.

Microcode Package README.ipw3945-ucode

INDEX

1. OVERVIEW
2. INSTALLATION
3. LICENSE


1. OVERVIEW

The file ipw3945.ucode provided in this package is required to be 
present on your system in order for the Intel PRO/Wireless 
3945ABG Network Connection Adapater driver for Linux (ipw3945) to be 
able to operate on your system.

On adapter initialization, and at varying times during the uptime of 
the adapter, the microcode is loaded into the RAM on the network 
adapter.  The microcode provides the low level MAC features including 
radio control and high precision timing events (backoff, transmit, 
etc.) while also providing varying levels of packet filtering which can 
be used to keep the host from having to handle packets that are not of 
interest given the current operating mode of the device.

2. INSTALLATION

The ipw3945 driver will look for the file ipw3945.ucode using the 
kernel's firmware_loader infrastructure.  In order to function 
correctly, you need to have this support enabled in your kernel.  When 
you configure the kernel, you can find this option in the following 
location:

        Device Drivers ->
                Generic Driver Options ->
                        Hotplug firmware loading support


You can determine if your kernel currently has firmware loader support 
by looking for the CONFIG_FW_LOADER definition on your kernel's 
.config.

In addition to having the firmware_loader support in your kernel, you 
must also have a working hotplug and udev infrastructure configured.  
The steps for installing and configuring hotplug and udev are very 
distribution specific. 

Once you have the firmware loader in place (or if you aren't sure and 
you just want to try things to see if it works), you need to install 
the microcode file into the appropriate location.

Where that appropriate location is depends (again) on your system 
distribution.  You can typically find this location by looking in the 
hotplug configuration file for your distro:

	% grep \"^FIRMWARE_DIR\" /etc/hotplug/firmware.agent

This should give you output like:

	FIRMWARE_DIR=/lib/firmware

If it lists more than one directory, you only need to put the 
microcode in one of them.  In the above example, installation is 
simply:

	% cp ipw3945.ucode /lib/firmware

You can now load the driver (see the INSTALL and 
README.ipw3945 provided with the ipw3945 package for 
information on building and using that driver.)

3. LICENSE

The microcode in this package (ipw3945.ucode) is provided under the 
terms of the following license (available in the file 
LICENSE.ipw3945-ucode):

Copyright (c) 2006, Intel Corporation.
All rights reserved.

Redistribution.  Redistribution and use in binary form, without 
modification, are permitted provided that the following conditions are 
met:

* Redistributions must reproduce the above copyright notice and the 
  following disclaimer in the documentation and/or other materials 
  provided with the distribution. 
* Neither the name of Intel Corporation nor the names of its suppliers 
  may be used to endorse or promote products derived from this software 
  without specific prior written permission. 
* No reverse engineering, decompilation, or disassembly of this software 
  is permitted.

Limited patent license.  Intel Corporation grants a world-wide, 
royalty-free, non-exclusive license under patents it now or hereafter 
owns or controls to make, have made, use, import, offer to sell and 
sell ("Utilize") this software, but solely to the extent that any 
such patent is necessary to Utilize the software alone, or in 
combination with an operating system licensed under an approved Open 
Source license as listed by the Open Source Initiative at 
http://opensource.org/licenses.  The patent license shall not apply to 
any other combinations which include this software.  No hardware per 
se is licensed hereunder.

DISCLAIMER.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, 
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND 
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, 
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS 
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE 
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH 
DAMAGE.

------------------------------
Copyright (C) 2005 - 2006, Intel Corporation

INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL PRODUCTS.  
EXCEPT AS PROVIDED IN INTEL'S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, 
INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL DISCLAIMS ANY EXPRESS OR 
IMPLIED WARRANTY RELATING TO SALE AND/OR USE OF INTEL PRODUCTS, INCLUDING 
LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, 
MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT, OR OTHER 
INTELLECTUAL PROPERTY RIGHT. 

This document is subject to change without notice. 

* Other names and brands may be claimed as the property of others.
