Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

Intel Wireless WiFi Link 1000 Adapter
Copyright (C) 2006-2009 Intel Corporation.  All rights reserved.

Microcode Package README.iwlwifi-1000-ucode

INDEX

1. OVERVIEW
2. INSTALLATION
3. LICENSE


1. OVERVIEW

The file iwlwifi-1000-3.ucode provided in this package must be 
present on your system in order for the Intel Wireless WiFi Link
AGN driver for Linux (iwlagn) to operate on your system.

The "-3" in the filename reflects an interface/architecture version number.
It will change only when changes in new uCode releases make the new uCode
incompatible with earlier drivers.

On adapter initialization, and at varying times during the uptime of 
the adapter, the microcode is loaded into the memory 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 iwlagn driver will look for the file iwlwifi-1000-3.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 iwlwifi-1000-3.ucode /lib/firmware

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

3. LICENSE

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

Copyright (c) 2006-2009, 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.