Difference between revisions of "Ipw3945"

From ThinkWiki
Jump to: navigation, search
m (Linux WiFi driver)
 
(34 intermediate revisions by 17 users not shown)
Line 1: Line 1:
__NOTOC__
+
{{WARN|This project has been deprecated by Intel in favor of the newer open-source [[Iwlwifi]] driver. The information below is old and should no longer be relied upon.}}
{| width="100%"
+
|style="vertical-align:top" |
+
<div style="margin: 0; margin-right:10px; border: 1px solid #dfdfdf; padding: 0em 1em 1em 1em; background-color:#F8F8FF; align:right;">
+
=== Intel PRO/Wireless 3945ABG Mini-PCI Express Adapter ===
+
This is a Mini-PCI Express WiFi Adapter
+
  
=== Features ===
+
The most recent revision of the Intel [[Centrino]] platform utilizes a new generation of wireless networking device connected to the system via '''PCI-E''', and not PCI (like the [[ipw2200]]-line used to do). Therefore, a new driver must be used.  As of February 26, 2008, the project's code ([http://downloadfinder.intel.com/scripts-df-external/detail_desc.aspx?ProductID=2259&DwnldID=10315&agr=Y Stable Release 1.2.0]) depends on a '''binary-only, proprietary''' user-space-daemon communicating with the driver via sysfs. It is '''not possible''' to operate this device with Free Software exclusively at the moment. The license-terms the daemon is released under prohibit reverse-engineering of the communication-protocol; this will hopefully not hold developers outside the US, where clauses like this one are not enforceable, from re-implementing a free variant of some sort.
* Chipset: Intel WM3945AG
+
* IEEE Standards: 802.11a, 802.11b, 802.11g
+
* PCI ID: 8086:4227
+
</div>
+
|style="vertical-align:top" |
+
[[image:3945abg.jpg|Mini-PCI WiFi Adapter]]
+
|}
+
=== IBM Partnumbers ===
+
41A4068 (From [http://www.ibm.com/pc/support/site.wss/document.do?sitestyle=lenovo&lndocid=MIGR-62764 Wireless & networking accessories - ThinkPad T60/p])
+
  
{{NOTE| Only the IBM Parts will work, any other parts will give an 1802 error on Post because the sub-vendor PCI ID is different, see [[Problem with unauthorized MiniPCI network card]] for more details}}
+
== External Discussion ==
 +
This issue already sparked [http://lkml.org/lkml/2006/2/24/266 discussions] on the [http://lkml.org/ Linux Kernel Mailing List].
  
=== Also known (in IBM literature) as.... ===
+
There is also a very revealing [http://kerneltrap.org/node/6650 interview] with the author of the OpenBSD driver for the 3945, in which it comes out that Intel has lied (at least by omission) about the purpose of the "regulatory daemon".
* From [http://www.ibm.com/common/ssi/rep_ca/8/897/ENUS106-068/ENUS106-068.PDF announcement letter 106-068], 'Intel PRO/Wireless 3945ABG8 wireless connection'
+
  
=== Hardware switch ===
+
== History ==
 +
The [[ipw2200]]-drivers in kernel 2.6.15 (and possibly later) do '''not''' work with this adapter. The [[Ipw|Intel binary driver]] is available, but has attracted its fair share of critics from the open source community.
  
Some ThinkPads have a hardware switch that must be in the '''on''' position for the radio to work, regardless of driver state:
+
== Comments ==
 +
A Spanish summary, but easy to understand about how to install:
 +
[http://www.esdebian.org/forum/viewtopic.php?forum=18&showtopic=69543 esDebian Forum], maxim_o message (longer)
  
[[Image:Wireless-switch.png|(ThinkPad R60 radio switch in the ON position)]]
+
Thinkpad topic: on ThinkPads like the Z60 that have one. remember to put the wireless switch in the on state! But you will not be able to enable the Wireless LED with Fn+F5, it is not a problem.
  
=== Packages ===
+
One more comment: if you want monitor mode (e.g for use with Kismet or other network sniffers), you need to uncomment CONFIG_IPW3945_MONITOR=y line from ipw3945-1.1.0 Makefile.
 +
 
 +
== Packages ==
 
*{{Fedora}}  
 
*{{Fedora}}  
 
** Packages: http://www.atrpms.net/dist/fc5/ipw3945
 
** Packages: http://www.atrpms.net/dist/fc5/ipw3945
Line 34: Line 25:
 
** ATrpms yum repo rpm: http://atrpms.net/dist/common/atrpms/atrpms-67-1.at.noarch.rpm.html
 
** ATrpms yum repo rpm: http://atrpms.net/dist/common/atrpms/atrpms-67-1.at.noarch.rpm.html
 
** '''NOTE:''' The T60p uses the smp kernel which the ipw3945 yum install does not provide.  You will need the smp kernel for your architecture found at http://www.atrpms.net/dist/fc5/ipw3945.  Remove the non-smp kernel and replace it with the appropriate smp kernel.  Wireless works great for me... --[[User:Herlo|Herlo]] 18:06, 22 June 2006 (CEST)
 
** '''NOTE:''' The T60p uses the smp kernel which the ipw3945 yum install does not provide.  You will need the smp kernel for your architecture found at http://www.atrpms.net/dist/fc5/ipw3945.  Remove the non-smp kernel and replace it with the appropriate smp kernel.  Wireless works great for me... --[[User:Herlo|Herlo]] 18:06, 22 June 2006 (CEST)
 +
*CentOS
 +
** Packages: ipw3945d (i386 [http://apt.sw.be/redhat/el5/en/i386/dag/RPMS/] or x86_64 [http://apt.sw.be/redhat/el5/en/x86_64/dag/RPMS/]), ipw3945-firmware.noarch, dkms-ipw3945.noarch
 +
** '''NOTE:''' Add to /etc/modprobe.conf: alias eth1 ipw3945
 
*{{Mandriva}}  
 
*{{Mandriva}}  
** Mandriva's kernel comes with the ipw3945 module (since at least 2006.0 Update One)
+
** In Mandriva releases 2007.0-2007.1, the kernel came with the ipw3945 module, while a possibly updated driver was provided as DKMS source and binary packages; since release 2008.0 this module is provided only as separate DKMS (per-kernel) binary and source packages, and module [[Iwlwifi]] replaced it in kernel
** dkms package (dkms-ipw3945) can be found in contrib (currenlty cooker only, thus will probably be in 2007.0)
+
** dkms package (dkms-ipw3945) can be found in contrib since release 2007.0
** Additional Packages: ipw3945d and ipw3945-ucode, both either available in the commercial distribution (or club) or from http://plf.zarb.org/
+
** Additional Packages: ipw3945d and ipw3945-ucode are available in the (public) 'non-free' media since Mandriva 2007.1, previously they were available either for paying users, or in (non-Mandriva) PLF repositories
 
*{{Gentoo}}
 
*{{Gentoo}}
 
** The net-wireless/ipw3945 package contains everything you need
 
** The net-wireless/ipw3945 package contains everything you need
 
*{{Debian}}
 
*{{Debian}}
 +
** Debian Stable (lenny) check the [http://wiki.debian.org/iwlwifi Debian wiki] for installation instructions
 +
** Debian Unstable (Sid) only needs the package "firmware-iwlwifi", as the new iwl3945 is integrated into Kernel 2.6.24
 
** The ipw3945 microcode is available in the [http://packages.debian.org/testing/admin/firmware-ipw3945 firmware-ipw3945] package (currently in testing and unstable (same versions)).
 
** The ipw3945 microcode is available in the [http://packages.debian.org/testing/admin/firmware-ipw3945 firmware-ipw3945] package (currently in testing and unstable (same versions)).
 
** The ipw3945 regulatory daemon is available in the [http://packages.debian.org/testing/net/ipw3945d ipw3945d] package (currently in testing and unstable (same versions)).
 
** The ipw3945 regulatory daemon is available in the [http://packages.debian.org/testing/net/ipw3945d ipw3945d] package (currently in testing and unstable (same versions)).
 
** The ipw3945 module source is available in the [http://packages.debian.org/testing/net/ipw3945-source ipw3945-source] package (currently in testing and unstable (same versions)).
 
** The ipw3945 module source is available in the [http://packages.debian.org/testing/net/ipw3945-source ipw3945-source] package (currently in testing and unstable (same versions)).
** '''DEPRECIATED:''' Unofficial packages are available from [http://ace-host.stuart.id.au/russell/files/debian/sarge/ipw3945/ Russell Stuart], [http://kanotix.com/files/debian/pool/contrib/i/ Stefan Lippers-Hollmann], and [http://www.joachim-reichel.de/debian/sid/ Joachim Reichel].
+
** '''DEPRECATED:''' Unofficial packages are available from [http://ace-host.stuart.id.au/russell/files/debian/sarge/ipw3945/ Russell Stuart], [http://kanotix.com/files/debian/pool/contrib/i/ Stefan Lippers-Hollmann]
 
* [[OpenBSD]]
 
* [[OpenBSD]]
 
** Supported with the [http://www.openbsd.org/cgi-bin/man.cgi?query=wpi wpi] driver in 4.0.
 
** Supported with the [http://www.openbsd.org/cgi-bin/man.cgi?query=wpi wpi] driver in 4.0.
 
* [[Ubuntu]]  
 
* [[Ubuntu]]  
** Works out of the box in edgy. Requires ''restricted'' repository.
+
** Works out of the box in Ubuntu 8.04 - 9.10, but does '''not''' work with 10.04, see bugs [http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2216] and [http://bugzilla.intellinuxwireless.org/show_bug.cgi?id=2213]. These issues are likely to be on all distributions with a kernel more recent than 2.6.31 (Ubuntu 2.6.31-21).
 +
*[[ArchLinux]]
 +
** [http://wiki.archlinux.org/index.php/Wireless_Setup Wireless Setup for ArchLinux]
  
=== Linux WiFi driver ===
+
== See also ==
The most recent revision of the Intel Centrino platform utilizes a new generation of wireless networking device connected to the system via '''PCI-E''', and not PCI (like the [[ipw2200]]-line used to do). Therefore, a new driver must be used. A sourceforge-project supporting the new cards is available at [http://ipw3945.sourceforge.net/ http://ipw3945.sourceforge.net/]. However, as of today, the project's code ([http://downloadfinder.intel.com/scripts-df-external/detail_desc.aspx?ProductID=2259&DwnldID=10315&agr=Y Stable Release 1.2.0]) depends on a '''binary-only, proprietary''' user-space-daemon communicating with the driver via sysfs. It is '''not possible''' to operate this device with Free Software exclusively at the moment. The license-terms the daemon is released under prohibit reverse-engineering of the communication-protocol; this will hopefully not hold developers outside the US, where clauses like this one are not enforceable, from re-implementing a free variant of some sort.
+
* [[Iwl3945]]
 
+
There is a new project called [http://intellinuxwireless.org/ Intel Wireless WiFi Link Drivers] which seems to also implement a driver for the 3945. Those drivers are called "iwl" instead of "ipw". The iwl3945 driver already works to some extend but it still in early stage. It is full open source without binary user space things. Just a firmware blob is needed. Full documentation including source can be found on the mentioned web-page.
+
 
+
Since kernel 2.6.22 the new WLAN subsystem mac80211 appears. All the newer WLAN-drivers will use it.
+
 
+
==== External Discussion ====
+
This issue already sparked discussions on the [http://lkml.org/ Linux Kernel Mailing List], accessible via [http://lkml.org/lkml/2006/2/24/266 http://lkml.org/lkml/2006/2/24/266].
+
 
+
There is also a very revealing [http://kerneltrap.org/node/6650 interview] with the author of the OpenBSD driver for the 3945, in which it comes out that Intel has lied (at least by omission) about the purpose of the "regulatory daemon".
+
 
+
==== Current State ====
+
The [[ipw2200]]-drivers in kernel 2.6.15 (and possibly later) do '''not''' work with this adapter. There is '''no mainline-kernel support''' at the moment, and without a change in the license of the required user-space-daemon, or mechanics of the code itself, '''probably''' will never be any.
+
 
+
==== Some comments ====
+
ipw3945 works with [http://ipw3945.sourceforge.net/ http://ipw3945.sourceforge.net/] drivers.
+
A Spanish summary, but easy to understand about how to install:
+
[http://www.esdebian.org/forum/viewtopic.php?forum=18&showtopic=69543 esDebian Forum], maxim_o message (longer)
+
 
+
Thinkpad topic: on ThinkPads like the Z60 that have one. remember to put the wireless switch in the on state! But you will not be able to enable the Wireless LED with Fn+F5, it is not a problem.
+
 
+
One more comment: if you want monitor mode (e.g for use with Kismet or other network sniffers), you need to uncomment CONFIG_IPW3945_MONITOR=y line from ipw3945-1.1.0 Makefile.
+
  
=== ThinkPads this card may be found in ===
+
[[Category: Drivers]]
* {{T43}}, {{T43p}} as an external ExpressCard
+
* {{R60}}
+
* {{T60}}, {{T60p}}
+
* {{X60}}, {{X60s}}, {{X60t}}
+
* {{Z61e}}, {{Z61m}}, {{Z61t}}, {{Z61p}}
+
* Lenovo 300 {{N100}}
+
[[Category:Components]]
+

Latest revision as of 18:27, 12 July 2010

ATTENTION!
This project has been deprecated by Intel in favor of the newer open-source Iwlwifi driver. The information below is old and should no longer be relied upon.

The most recent revision of the Intel Centrino platform utilizes a new generation of wireless networking device connected to the system via PCI-E, and not PCI (like the ipw2200-line used to do). Therefore, a new driver must be used. As of February 26, 2008, the project's code (Stable Release 1.2.0) depends on a binary-only, proprietary user-space-daemon communicating with the driver via sysfs. It is not possible to operate this device with Free Software exclusively at the moment. The license-terms the daemon is released under prohibit reverse-engineering of the communication-protocol; this will hopefully not hold developers outside the US, where clauses like this one are not enforceable, from re-implementing a free variant of some sort.

External Discussion

This issue already sparked discussions on the Linux Kernel Mailing List.

There is also a very revealing interview with the author of the OpenBSD driver for the 3945, in which it comes out that Intel has lied (at least by omission) about the purpose of the "regulatory daemon".

History

The ipw2200-drivers in kernel 2.6.15 (and possibly later) do not work with this adapter. The Intel binary driver is available, but has attracted its fair share of critics from the open source community.

Comments

A Spanish summary, but easy to understand about how to install: esDebian Forum, maxim_o message (longer)

Thinkpad topic: on ThinkPads like the Z60 that have one. remember to put the wireless switch in the on state! But you will not be able to enable the Wireless LED with Fn+F5, it is not a problem.

One more comment: if you want monitor mode (e.g for use with Kismet or other network sniffers), you need to uncomment CONFIG_IPW3945_MONITOR=y line from ipw3945-1.1.0 Makefile.

Packages

  • Fedora
  • CentOS
    • Packages: ipw3945d (i386 [1] or x86_64 [2]), ipw3945-firmware.noarch, dkms-ipw3945.noarch
    • NOTE: Add to /etc/modprobe.conf: alias eth1 ipw3945
  • Mandriva
    • In Mandriva releases 2007.0-2007.1, the kernel came with the ipw3945 module, while a possibly updated driver was provided as DKMS source and binary packages; since release 2008.0 this module is provided only as separate DKMS (per-kernel) binary and source packages, and module Iwlwifi replaced it in kernel
    • dkms package (dkms-ipw3945) can be found in contrib since release 2007.0
    • Additional Packages: ipw3945d and ipw3945-ucode are available in the (public) 'non-free' media since Mandriva 2007.1, previously they were available either for paying users, or in (non-Mandriva) PLF repositories
  • Gentoo
    • The net-wireless/ipw3945 package contains everything you need
  • Debian
    • Debian Stable (lenny) check the Debian wiki for installation instructions
    • Debian Unstable (Sid) only needs the package "firmware-iwlwifi", as the new iwl3945 is integrated into Kernel 2.6.24
    • The ipw3945 microcode is available in the firmware-ipw3945 package (currently in testing and unstable (same versions)).
    • The ipw3945 regulatory daemon is available in the ipw3945d package (currently in testing and unstable (same versions)).
    • The ipw3945 module source is available in the ipw3945-source package (currently in testing and unstable (same versions)).
    • DEPRECATED: Unofficial packages are available from Russell Stuart, Stefan Lippers-Hollmann
  • OpenBSD
    • Supported with the wpi driver in 4.0.
  • Ubuntu
    • Works out of the box in Ubuntu 8.04 - 9.10, but does not work with 10.04, see bugs [3] and [4]. These issues are likely to be on all distributions with a kernel more recent than 2.6.31 (Ubuntu 2.6.31-21).
  • ArchLinux

See also