IBM T60p - No Device Found for ipw3945 WiFi card on FC5 most recent kernel

Rick Stevens rstevens at vitalstream.com
Thu Aug 3 18:54:58 UTC 2006


On Thu, 2006-08-03 at 00:18 -0700, interp01 at sevenbelow.com wrote:
> I need some insight as to what Im doing wrong with the IPW3945 Wifi card
> not being found. Im really lost as to what Im doing wrong and yes I have
> cponfirmed that the wireless card is enabled in the BIOS :)
> 
> Ont to my novel of what I have already tried....  PLEASE HELP!!!!  I
> really dont want to tun this laptop into wall arter :)
> 
> Here is what I have done to date:
> 
> I have been able to compile necesary drivers using RPMs for my kernel
> (2.6.17-1.2157_FC5smp.  The driver module is being located and loaded
> without errors in dmesg, dmesg | less shows:
> 
> ieee80211_crypt: no version for "struct_module" found: kernel tainted.
> ieee80211_crypt: registered algorithm 'NULL'
> ieee80211: 802.11 data/management/control stack, 1.1.14
> ieee80211: Copyright (C) 2004-2005 Intel Corporation
> <jketreno at linux.intel.com>
> ipw3945: Intel(R) PRO/Wireless 3945 Network Connection driver for Linux,
> 1.1.0-pre2d
> ipw3945: Copyright(c) 2003-2006 Intel Corporation
> 
> When I do an lsmod the drivers are present and are being used by the
> ieee80211 modules.
> 
> An lsmod shows the modules being loaded:
> 
> ipw3945               190888  0
> ieee80211              33224  1 ipw3945
> ieee80211_crypt         9984  1 ieee80211

Wrong.  The above display shows that ipw3945 is USING ieee80211, not
the other way around.

> 
> 
> When I look in the Network Configuration, the hardware tab does show the
> ipw3945 as being present, but it states the status as configured.

Hmmm, it shows it as configured?  Really?  What does "ifconfig" show?

> I can load the modules without any error but when I try to bring up the
> interface I get the following error:
> 
> ipw3945 device eth1 does not seem to be present, delaying initialization

No.  I suspect that the ipw3945 driver doesn't recognize your card.
Remember that the driver is looking for the manufacturer and product IDs
of your card.  If the IDs aren't ones that the driver recognizes, it
won't talk to the card.

Do an "lspci" and identify the bus ID of the card, then do an "lspci -n"
and look at the manufacturer and product IDs for the device with that
bus ID.  For example, on my Broadcom:

[root at golem2 root]# lspci
<snip>
03:02.0 Network controller: Broadcom Corporation BCM4318 [AirForce One
54g] 802.11g Wireless LAN Controller (rev 02)
<snip>

[root at golem2 root]# lspci -n
<snip>
03:02.0 0280: 14e4:4318 (rev 02)
<snip>

Therefore, the driver I use must recognize 14e4:4318 as a device it can
control.  I suspect that this isn't the case with your driver.  The only
way to tell for sure is to look at the source code.  I don't have the
source for that driver handy, but the other ipwXXXX drivers have the
stuff embedded in the "ipwXXXX.c" file, e.g. for the ipw2200, in the
ipw2200.c file, you'll see lines like:

	{PCI_VENDOR_ID_INTEL, 0x1043, 0x8086, 0x2701, 0, 0, 0},

indicating that the driver will talk to devices with the Intel mfg.
ID (0x8086) and a device ID of 0x1043 (among others).  Grab the device
ID from the "lspci -n" data (number after the colon), go into the source
for the driver and do "grep -r <value> *".  If you get a line that looks
like it should recognize the card, the driver should work.


> I thought this maybe was the result of an IRQ conflict, but when I changed
> the the IRQ to one that wasnt being used under cat /proc/interrupts, I
> still get the same error.
> 
> I thought this was maybe caused by a firmware issue.
> the ipw3945.Ucode Microcode is located under my /lib/firmware, but there
> is no .fw file in there, just the ipw3945.ucode file.
> 
> I dont have the file /etc/hotpulg/firmward.agent file so is it possible
> the firmware isnt being loaded???  The directory /etc/hotplug isnt even
> there.
> 
> I found an article on the net that described the configuration for the
> modprobe.conf file, and this is what I have in there:
> 
> alias eth1 ipw3945
> install ipw3945 /sbin/modprobe --ignore-install ipw3945 ; sleep 0.5 ;
> /sbin/ipw3945d --quiet
> remove ipw3945 /sbin/ipw3945d --kill ; /sbin/modprobe -r --ignore-remove
> ipw3945
> 
> It also stated that I need to add the following line to my rc.local file
> /sbin/ipw3945d --quiet
> 
> 
> Im really at an end here and Im not even sure what I can try next....  Its
> as if the hardware isnt being recognized.  Any thoughts on what I should
> try next would be greatly appreciated.

----------------------------------------------------------------------
- Rick Stevens, Senior Systems Engineer     rstevens at vitalstream.com -
- VitalStream, Inc.                       http://www.vitalstream.com -
-                                                                    -
-    Working with Linux is like wrestling with a worthy opponent.    -
-   Working with Windows is like picking on an annoyed child with a  -
-                            loaded handgun.                         -
----------------------------------------------------------------------




More information about the Redhat-install-list mailing list