NOTE: this page is for archival only, see the note at the end of the page.

ath5k

ath5k is a completely FOSS wireless driver for Atheros WLAN based chipsets. It is now part John's of wireless-2.6 git repository.

TableOfContents(1)

Hacking ath5k

ath5k is currently available through the 'everything' and 'ath5k' branches of wireless-2.6 git repository as well as the mm tree. The git repository has the latest and greatest so you should try that if you want the latest. If you don't want to work with git then try the mm tree but that will be a bit outdated. For now please use the everything branch as that has the new configure_filter API changes to mac80211.

Here is a quick primer on git you can use to start hacking on ath5k.

To get ath5k:

git-clone git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git
cd wireless-2.6
# Create a local "branch" called 'ath5k' based on John's remote 'origin/everything'
git checkout -b everything origin/everything

To get latest updates you can do:

# Go back to the local master branch
git-checkout master
git-pull
git-checkout everything
git-rebase origin/everything
# To review the changes last registered:
git-log
# To review the changes made to ath5k, with a diff:
git-log -p drivers/net/wireless/ath5k/*

To hack on stuff, you can create your own branch by doing:

git-checkout -b ath5k-fix-foo origin/ath5k
# hack hack hack
# To get a diff of your work:
git-diff > my_changes.diff
# Or if you just want to read them:
git-diff
# To revert to the original state of the branch:
git-checkout -f
# If instead you want to commit
git-commit -a
# To view local branches
git-branch -l
# To view all remote branches
git-branch -r

Other cool git stuff:

# get the SHA of two commits
git-log
# Then get the diff of them, by showing the logs in between
git-log -p d8a285c8f83f728be2d056e6d4b0909972789d51..9202ec15da36ca060722c363575e0e390d85fb71
# Since SHAs are pretty unique you can just give it a short version
# and it will try to match what is right:
git-log -p d8a28..9202e

Now say I have two local branches, and I want to merge them. If I'm on local branch ath5k-my-latest and I want to merge with local branch ath5k-fix-foo, I do:

git-pull . ath5k-fix-foo

Enabling ath5k

To enable ath5k, you must first enable mac80211:

Networking  --->
  Wireless  ---> 
    <M> Improved wireless configuration API 
    <M> Generic IEEE 802.11 Networking Stack (mac80211)

Please note that there is another 802.11 networking stack:

    <M> Generic IEEE 802.11 Networking Stack

You do not need this. This option enables the old SoftMAC stack we hope to kill one of these days. You can still safely enable this though.

You can then enable ath5k in the kernel configuration under

Device Drivers  --->
  [*] Network device support  --->
        Wireless LAN  --->
          <M>   Atheros 5xxx wireless cards support

caveats

This driver is VERY new and under HEAVY development. Some users have reported success, some others have haven't had luck

supported chips

Tested chipsets are AR5211

available devices

Please visit [http://madwifi.org/wiki/Compatibility] for a complete list of supported devices

features

Supports 802.11abg, depending on the chipset, and some vendor extensions such as Atheros XR and Turbo. This driver requires no firmware!

working

  • Station Mode

not working yet

  • Access Point mode

  • Turbo

  • XR

Get driver

This driver is currently only in the ath5k branch of wireless-dev.

Project Home Page


This is a static dump of the old wiki, taken after locking it in January 2015. The new wiki is at https://wireless.wiki.kernel.org/.
versions of this page: last, v88, v87, v86, v85, v84, v83, v82, v81, v80, v79, v78, v77, v76, v75, v74, v73, v72, v71, v70, v69, v68, v67, v66, v65, v64, v63, v62, v61, v60, v59, v58, v57, v56, v55, v54, v53, v52, v51, v50, v49, v48, v47, v46, v45, v44, v43, v42, v41, v40, v39, v38, v37, v36, v35, v34, v33, v32, v31, v30, v29, v28, v27, v26, v25, v24, v23, v22, v21, v20, v19, v18, v17, v16, v15, v14, v13, v12, v11, v10, v9, v8, v7, v6, v5, v4, v3, v2, v1