Intel 345ABG wireless and CentOS 4.4

Issues related to hardware problems
AssafRahav
Posts: 9
Joined: 2006/09/16 15:41:13
Location: Greenbelt, Maryland, USA

Intel 345ABG wireless and CentOS 4.4

Post by AssafRahav » 2006/09/18 13:41:23

Hello forum :-)

I am pretty new to Linux but not to computers (i.e. a recovering MS junky).
Recently I have been tasked with installing Cent 4.4 on a laptop so that it dual boots XP,
the process was fairly painless except this issue with the wireless card.
Following the instructions in the readme that came in the intel driver, I proceeded to attempt
instaling the ieee80211 subsystem from http://ieee80211.sourceforge.net/, at which point
things started getting complicated.

[b]CentOS 4.4
Kernel: 2.6.9-42.0.2.ELsmp
lspci contains the card: 0b:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02)[/b]


When I try and run "make" I get the following output:

[code]
[root@nitya ieee80211-1.2.15]# make
Checking in /lib/modules/2.6.9-42.0.2.ELsmp for ieee80211 components...
make -C /lib/modules/2.6.9-42.0.2.ELsmp/build M=/root/Desktop/ieee80211-1.2.15 modules
make[1]: Entering directory `/usr/src/kernels/2.6.9-42.0.2.EL-smp-i686'
CC [M] /root/Desktop/ieee80211-1.2.15/ieee80211_module.o
In file included from /root/Desktop/ieee80211-1.2.15/ieee80211_module.c:52:
/root/Desktop/ieee80211-1.2.15/compat.h:51: error: redefinition of typedef 'gfp_t'
include/linux/gfp.h:133: error: previous declaration of 'gfp_t' was here
/root/Desktop/ieee80211-1.2.15/compat.h:73: error: redefinition of 'is_multicast_ether_addr'
include/linux/etherdevice.h:60: error: previous definition of 'is_multicast_ether_addr' was here
/root/Desktop/ieee80211-1.2.15/compat.h:80: error: redefinition of 'is_broadcast_ether_addr'
include/linux/etherdevice.h:65: error: previous definition of 'is_broadcast_ether_addr' was here
/root/Desktop/ieee80211-1.2.15/compat.h:87: error: conflicting types for 'kzalloc'
include/linux/slab.h:101: error: previous declaration of 'kzalloc' was here
/root/Desktop/ieee80211-1.2.15/compat.h:87: error: conflicting types for 'kzalloc'
include/linux/slab.h:101: error: previous declaration of 'kzalloc' was here
/root/Desktop/ieee80211-1.2.15/compat.h:97: error: redefinition of 'compare_ether_addr'
include/linux/etherdevice.h:109: error: previous definition of 'compare_ether_addr' was here
make[2]: *** [/root/Desktop/ieee80211-1.2.15/ieee80211_module.o] Error 1
make[1]: *** [_module_/root/Desktop/ieee80211-1.2.15] Error 2
make[1]: Leaving directory `/usr/src/kernels/2.6.9-42.0.2.EL-smp-i686'
make: *** [modules] Error 2
[/code]

In this forum I found a guide for installing the ipw2200 card. This does not directly work for the 3945,
but I used the RPMs [b]ieee80211.i386[/b] and [b]ieee80211-devel.i386[/b] mentioned in the guide to install the
ieee80211 subsystem via yum.
As far as I can determine it was installed successfully, but then I can't get the driver to compile,
it gives the following error:
[code]
[root@nitya ipw3945-1.0.0]# make

ERROR: ieee80211.h not found in '/lib/modules/2.6.9-42.0.2.ELsmp/include'.

You need to install the ieee80211 subsystem from http://ieee80211.sf.net
and point this build to the location where you installed those sources, eg.:

% make IEEE80211_INC=/usr/src/ieee80211/

will look for ieee80211.h in /usr/src/ieee80211/net/
[/code]

I run updatedb and then search ieee80211.h, the file is in /usr/include/ieee80211/net/ieee80211.h,
not where the intel driver is expectine it. No big deal, they do explain how to specify an alternate path
to the file... So I ran [b]make IEEE80211_INC=/usr/include/ieee80211/net/ieee80211.h[/b]
But I get the same error, except with the path I specified :-o
I am 100% sure the file is there, and I have no idea what to do next.
Do I need to do something after installing the ieee80211 subsystem via yum, or is it not really installed at all?

If anyone knows, I would be very greatful :-)

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

Re: Intel 345ABG wireless and CentOS 4.4

Post by Lenard » 2006/09/18 18:05:04

Install the ATrpms key and create and save a /etc/yum.repos.d/atrpm.repo file;

To install the ATrpms keyas root type something like;

rpm --import http://ATrpms.net/RPM-GPG-KEY.atrpms

Sample atrpms.repo file, create with any text editor and save it as root in the /etc/yum.repos.d directory;

-----------------------------------cut below this line--------------------------------------
[atrpms]
name=ATrpms rpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
enabled=1
gpgcheck=0
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms

-----------------------------------cut above this line--------------------------------------

When done as root type something like;

yum install ipw3945d ipw3945-ucode ieee80211

AssafRahav
Posts: 9
Joined: 2006/09/16 15:41:13
Location: Greenbelt, Maryland, USA

Re: Intel 3945ABG wireless and CentOS 4.4

Post by AssafRahav » 2006/09/18 19:12:50

Thanks for the quick response!

I now have the following related items installed ([i]"yum search 3945"[/i] and [i]"yum search 80211"[/i])
ipw3945d.i386 1.7.22-4.at installed
ipw3945-ucode.noarch 1.13-2.at installed
ieee80211.i386 1.2.15-14.el4.at installed
ieee80211-devel.i386 1.2.15-14.el4.at installed
ieee80211-kmdl-2.6.9-42.EL.i686 1.2.15-14.el4.at installed
ieee80211-kmdl-2.6.9-42.ELsmp.i686 1.2.15-14.el4.at installed

However, I only have eth0 and the corrosponding broadcom wired NIC (which works fine btw) in the network configuration panel, I do not see any sign that the OS is aware of the wireless NIC.
Am I missing a step?


P.S
The forum won't let me correct the header, it's an intel 3945ABG and not 345ABG card :-D

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

Re: Intel 3945ABG wireless and CentOS 4.4

Post by Lenard » 2006/09/19 01:36:58

Yea once somebody makes an addition to the thread what was before is 'set in stone' or so it seems.

Try rebooting and then use system-config-network (Administration-->Network from the menu) and add the new wireless device.

AssafRahav
Posts: 9
Joined: 2006/09/16 15:41:13
Location: Greenbelt, Maryland, USA

Re: Intel 3945ABG wireless and CentOS 4.4

Post by AssafRahav » 2006/09/19 13:57:45

Could you be a bit more specific?
In the network configuration applet, in the hardware tab, there is still only the one working NIC listed.
If I hit the "New"" button the list of available hardware does not include the 3945ABG.

Is there something else I need to do after installing all those packages? (re-compile the kernel ? - don't skip steps that are obvious to you since I'm an linux newb :-( )

Thanks for your help thus far :-)

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

Re: Intel 3945ABG wireless and CentOS 4.4

Post by Lenard » 2006/09/19 15:03:26

Yes you need to build the linux driver for the wireless device, sorry my fault I did not know that the Intel(r) PRO/Wireless 3945ABG Network Connection driver was not built for the RHEL at ATrpms.netL. Get the source rpm file (a direct download) as root from the console or xterm seesion type something like;

wget http://dl.atrpms.net/all/ipw3945-1.1.0-13.at.src.rpm

When done you should be able to type something like (and build the driver);

rpmbuild --recompile --rebuild ipw3945-1.1.0-13.at.src.rpm

Watch the output it will tell you where to install the binary driver from, maybe something like;

rpm -Uvh /usr/src/redhat/RPMS/i386/ipw3945*.rpm

If it fails try installing the already built driver for FC3 or FC4 instead, this is a direct install as root from the console or xterm session. You only need one of then not both try the FC3 version first, un-installing the FC3 version before installing the FC4 version. Either should work they should have been built from the same source;

rpm -Uvh http://dl.atrpms.net/all/ipw3945-1.1.0-13.fc3.at.i386.rpm
rpm -Uvh http://dl.atrpms.net/all/ipw3945-1.1.0-13.fc4.at.i386.rpm

To un-install if needed type something like; rpm -e ipw3945-1.1.0-13.fc3.at

You need to modify the /etc/modprobe.conf file also (any text editor will do) and add a line entry like;

alias wlan0 ipw3945

And you want to create a file in /etc/sysconfig/network-scripts named something like ifcfg-wlan0 which has for example;

ONBOOT=no
USERCTL=yes
IPV6INIT=no
PEERDNS=yes
TYPE=Wireless
DEVICE=wlan0
HWADDR=
BOOTPROTO=dhcp
NETMASK=
IPADDR=
DOMAIN=
ESSID=
CHANNEL=1
MODE=Auto
RATE=Auto

See your /etc/sysconfig/network-scripts/ifcfg-eth0 for an example also. You will need the wireless-tools rpm installed if not already.

Check to see if installed; rpm -qa wireless-tools

If not then; yum -y install wireless-tools

Once everthing is in-place you should be able to restart the network services and install the wireless driver;

service network restart
modprobe ipw3945

Bring the eth0 interface down and bring up the wireless interface;

ifdown eth0
ifup wlan0

And hopefully have a working wireless network access;

ifconfig wlan0

Example output (modifed a bit to hide private information);

[code]
$ ifconfig wlan0
wlan0 Link encap:Ethernet HWaddr 00:XX.XX.XX.XX.XX
inet addr:192.168.0.80 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:468695 errors:0 dropped:0 overruns:0 frame:0
TX packets:322891 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:534833979 (510.0 MiB) TX bytes:35889236 (34.2 MiB)
Interrupt:22 Memory:e2000000-e2002000

[/code]

AssafRahav
Posts: 9
Joined: 2006/09/16 15:41:13
Location: Greenbelt, Maryland, USA

Re: Intel 3945ABG wireless and CentOS 4.4

Post by AssafRahav » 2006/09/19 15:37:23

after running rpmbuild --recompile --rebuild ipw3945-1.1.0-13.at.src.rpm
[code]
[root@nitya Desktop]# rpmbuild --recompile --rebuild ipw3945-1.1.0-13.at.src.rpm
Installing ipw3945-1.1.0-13.at.src.rpm
error: line 1: Unknown tag: %kmdl ipw3945
[/code]


So I tryed the pre-built FC3/FC4 ones but get the following
[code]
[root@nitya Desktop]# rpm -Uvh ipw3945-1.1.0-13.fc3.at.i386.rpm
error: Failed dependencies:
ipw3945-kmdl-1.1.0-13.fc3.at is needed by ipw3945-1.1.0-13.fc3.at.i386

[/code]

I couldn't find ipw3945-kmdl-1.1.0-13.fc3.at anywhere, so I didn't really get very far :-)

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

Re: Intel 3945ABG wireless and CentOS 4.4

Post by Lenard » 2006/09/19 17:26:17

[quote]
AssafRahav wrote:
after running rpmbuild --recompile --rebuild ipw3945-1.1.0-13.at.src.rpm
[code]
[root@nitya Desktop]# rpmbuild --recompile --rebuild ipw3945-1.1.0-13.at.src.rpm
Installing ipw3945-1.1.0-13.at.src.rpm
error: line 1: Unknown tag: %kmdl ipw3945
[/code]
[/quote]

I suspected something like this might happen.............

[quote]
So I tryed the pre-built FC3/FC4 ones but get the following
[code]
[root@nitya Desktop]# rpm -Uvh ipw3945-1.1.0-13.fc3.at.i386.rpm
error: Failed dependencies:
ipw3945-kmdl-1.1.0-13.fc3.at is needed by ipw3945-1.1.0-13.fc3.at.i386

[/code]

I couldn't find ipw3945-kmdl-1.1.0-13.fc3.at anywhere, so I didn't really get very far :-)
[/quote]

This too......

What happens when you (as root) type; modprobe -v ipw3945

Does the module load??? if yes then skip the rpm package part and pick-up at the change to the /etc/modprobe.cong file.

AssafRahav
Posts: 9
Joined: 2006/09/16 15:41:13
Location: Greenbelt, Maryland, USA

Re: Intel 3945ABG wireless and CentOS 4.4

Post by AssafRahav » 2006/09/19 18:23:32

Unfortuantly I get a fatal error: module not found.

Lenard
Posts: 2283
Joined: 2005/11/29 02:35:25
Location: Indiana

Re: Intel 3945ABG wireless and CentOS 4.4

Post by Lenard » 2006/09/19 19:26:31

[quote]
AssafRahav wrote:
Unfortuantly I get a fatal error: module not found.[/quote]

OK, no biggie............. Hopefully you still have the ipw3945-1.1.0-13.at.src.rpm file so as root try from where the downloaded file resides try (you might need to have the kernel-devel rpm package installed);

rpm -ivh ipw3945-1.1.0-13.at.src.rpm
cd /usr/src/redhat/SOURCES
tar xzvf ipw3945-1.1.0-pre2.tgz
cd ipw3945-1.1.0-pre2
make
cp ipw3945.ko /lib/modules/$(uname -r)
depmod -a

This may not work because the INSTALL file from the extracted tar files states;

6. KERNEL REQUIREMENTS - 2.6.13+
-----------------------------------------------

The Intel PRO/Wireless 3945ABG Network Connection driver for Linux is
currently maintained only for 2.6.13+ versions of the Linux kernel,
but may work in older versions. We try (when possible) to provide
backward compatibility patches to the driver to keep it working for as
long as possible with legacy kernels.

If it does the try the modprobe command once more; modprobe -v ipw3945

Post Reply

Return to “CentOS 4 - Hardware Support”