Linksys WPC54GX on Fedora 8

From Notes

Jump to: navigation, search

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.

Personal tools