Linksys WPC54GX on Fedora 8
From Notes
The Linksys WPC54GX uses the following chipset:
- Airgo Networks Inc AGN100 802.11 a/b/g True MIMO Wireless Card (rev 03)
Pre-requisites
- Ndiswrapper 1.51
- Linux Kernel (obtained from Fedora source RPM and recompiled) 2.6.23.9-85.ditree.fc8
- Fedora 8
- WPC54GX Driver obtained from Linksys, version 2.0.
- Disable NetworkManager - I was not able to get it to work with my setup, although I am biased toward not using it.
This guide assumes the use of Ndiswrapper and the NETANI.INF driver that comes from Linksys, along with a kernel compiled with a greater than 4k stack (# CONFIG_4KSTACKS is not set).
Prep Work
- Download ndiswrapper and the linksys driver, keep them somewhere safe.
- Follow this guide from the Fedora project to download and recompile the Linux kernel.
- Note that the only change required is to comment out CONFIG_4KSTACKS in the SOURCES/config-x86-generic file.
- (Compile with option baseonly or it will take forever.)
- Boot into the newly compiled kernel.
Setup Ndiswrapper
- Setup Ndiswrapper -- I created an RPM because I don't typically install anything without using a package.
- Un-tar the package, copy the spec file into your SPECS rpmbuild location, and copy the original tgz into the SOURCES directory.
- Build ndiswrapper with
rpmbuild -ba ndiswrapper.spec
- Install ndiswrapper and the associated kernel modules:
-
sudo rpm -ivh RPMS/i386/ndiswrapper*.rpm -
sudo rpm -ivh RPMS/i386/kernel-module-ndiswrapper*.rpm
-
Setup the Linksys Driver
- Un-zip the archive in it's own location
- mkdir wpc54gx && cd wpc54gx
- mv WPC54GX%2C0.zip ./
- unzip WPC54GX%2C0.zip
Combining Ndiswrapper and the Linksys Driver
- Now use ndiswrapper to import the NETANI.INF driver file:
-
sudo ndiswrapper -i NETANI.INF
-
- Load the ndiswrapper module:
-
sudo modprobe ndiswrapper
-
- Now test the configuration with the following command:
-
sudo ndiswrapper -l
-
[josh@tertiary wpc54gx_2c0]# ndiswrapper -l
netani : driver installed
device (17CB:0001) present
If you received anything but the above message, I don't know what to tell you, it worked for me on the first try and every subsequent time.
Connect to your wireless network
Now that everything is working, configure wpa_supplicant to work with your network settings and make sure NetworkManager is disabled. I am using WPA personal in the following example.
-
chkconfig NetworkManager off
Now configure wpa_supplicant, my config files look like the following:
#/etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=wheel
network={
ssid="DownTheRabbitHole"
scan_ssid=1
key_mgmt=WPA-PSK
psk="reallysecret"
proto=WPA
}
#/etc/sysconfig/wpa_supplicant INTERFACES="-iwlan0" DRIVERS="-Dwext" OTHER_ARGS="-u -f"
Restart wpa_supplicant:
-
/etc/init.d/wpa_supplicant restart
You should now be able to connect to your network, although you'll have to configure DHCP or a static IP from here.
