Ubuntu ships madwifi in the package linux-restricted-modules of the restricted component, which is enabled in the default install. Madwifi chipsets should therefore ‘just work’.
In case you did a manual install, try installing linux-restricted-modules-$(uname -r) and that’s it.
Madwifi and Linux-Restricted-Modules
If you decide you absolutely need to compile madwifi from SVN, then you must stop the linux-restricted-modules package from providing the madwifi module ath_hal, via its so called volatile module mechanism. Do so by adding ath_hal to the list of DISABLED_MODULES in /etc/default/linux-restricted-modules-common.
# This file is sourced from the linux-restricted-modules-common init # script and is used to disable the link-on-boot feature, one module # at a time. This can be useful if you want to use hand-compiled # versions of one or more modules, but keep linux-restricted-modules # installed on your system, or just to disable modules you don't use # and speed up your boot process by a second or two. # # Use a space-separated list of modules you wish to not have linked # on boot. The following example shows a (condensed) list of all # modules shipped in the linux-restricted-modules packages: # # DISABLED_MODULES="ath_hal fc fglrx ltm nv" # # Note that disabling "fc" disables all fcdsl drivers, "ltm" disables # ltmodem and ltserial, and "nv" disables both the nvidia drivers. # You can also name each module individually, if you prefer a subset. DISABLED_MODULES="ath_hal"
7.04 Feisty Fawn
Feisty has the madwifi-tools package available in the universe repository or download for your architecture at http://packages.ubuntu.com/feisty/net/madwifi-tools.
6.10 Edgy Eft Server and 6.06 Dapper Drake Server
6.10 Edgy Eft
Edgy now includes the new madwifi-ng drivers in the linux-restricted-modules package, however you will need to download and install the madwifi-tools package from debian's testing branch at http://packages.debian.org/cgi-bin/search_packages.pl?keywords=madwifi-tools&searchon=names&subword=1&version=testing&release=all as they haven't included the wlanconfig tool. Alternatively, a deb backported from Feisty is available at https://launchpad.net/+builds/+build/327859/madwifi-tools
6.06 Dapper Drake
There appears to be a bug in the udevplug madwifi-ng scripts, which causes a large delay on startup; This will be fixed in the release soon, and there is a fix here, for now: https://launchpad.net/distros/ubuntu/+source/udev/+bug/46048
The included version of madwifi with the linux-restricted-modules-$(uname -r) package is dated. If you need to install a newer version (madwifi-ng) you will need to follow a few special instructions. If you can, remove the linux-restricted-modules package. This package contains the nvidia-glx and ati fireglx modules, so this may not be feasible for some. If you elect to keep them, first you must remove the installed version that comes with the restricted modules.
cd /lib/modules/$(uname -r) sudo rm -rf net sudo rm -rf madwifi sudo rm -rf madwifi-ng
Descend into your madwifi-ng source directory.
cd ~/madwifi-ng (example) sudo make clean sudo make sudo make install
Assuming you have no errors, next we need to remove the existing loaded modules if you have any.
Check for the existence of any wlan, ath_hal, ath_pci, new_ath_hal, new_ath_pci, etc entries. Remove each of these via the following:
sudo rmmod (moduleName)
Some of these are dependent on other running modules so you'll have to fiddle with it to get the sequence correct, but make sure that they are all removed prior to moving on.
Next, insert your card into your computer.
Check to see if the card and driver were properly initalized. If you see errors about ACPI, you may need to do as I did and have to unload all of ACPI with the following:
sudo /etc/init.d/acpi-support stop
Remove and reinsert your card and check if the module loaded properly
dmesg ifconfig iwconfig etc...
If you have an ath0 and a wifi0 interface active now in ifconfig then you are golden. This will not stick on a reboot and the process must be repeated.
TO DO: Please update the wiki to show how to automate this.
5.10 Breezy Badger
Package for breezy is here: http://packages.ubuntu.com/breezy/misc/linux-restricted-modules-2.6.12-10-386
French: pour une installation pas à pas détaillée de WPA (l'authentification sécurisée) en français : http://doc.ubuntu-fr.org/installation/wpa?s=madwifi
Get the latest madwifi-ng source code and untar itwget http://snapshots.madwifi-project.org/madwifi-ng-current.tar.gz tar xzf madwifi-ng-current.tar.gz
Prepare your station to buildapt-get install build-essential bin86 gcc-3.4 linux-headers-$(uname -r); cp /boot/config-$(uname -r) /usr/src/linux-headers-$(uname -r)
Build madwifi-ngcd madwifi-ng-r<tab for directories>; make clean KERNELPATH=/usr/src/linux-headers-$(uname -r) CC=/usr/bin/gcc-3.4 make KERNELPATH=/usr/src/linux-headers-$(uname -r) CC=/usr/bin/gcc-3.4 make install KERNELPATH=/usr/src/linux-headers-$(uname -r) CC=/usr/bin/gcc-3.4 depmod -a #the excellent make file does this already, but a good practice all the same modprobe ath_pci
5.04 Hoary Hedgehog
In the package “linux-restricted-modules”.
Goto: System → Administration → Networking and then click on the card and choose properties.
4.10 Warty Warthog
madwifi drivers for Warty are here: http://packages.ubuntu.com/warty/misc/linux-restricted-modules-18.104.22.168-3-386