Go back –> Atheros Linux wireless drivers
ath9k_htc
ath9k_htc provides hardware support for Atheros AR9001 and AR9002 family hardware.
Contents
Get the driver
The driver is part of wireless-testing. See this guide to use the wireless-testing tree directly. Or you can use compat-wireless to get the driver.
Chipsets supported
- AR9271
- AR7010
Supported Devices
See the ath9k_htc device list.
Mailing list
https://lists.ath9k.org/mailman/listinfo/ath9k-devel
Configuring your kernel
Enable these options in your kernel config.
CONFIG_ATH_COMMON=m CONFIG_ATH9K_HW=m CONFIG_ATH9K_COMMON=m CONFIG_ATH9K_HTC=m
Firmware
This driver requires firmware, you can get the approriate firmware from the firmware tree.
Firmware map: AR9271 - ar9271.fw AR7010 - ar7010.fw or ar7010_1_1.fw
For AR7010 based cards, place both ar7010.fw and ar7010_1_1.fw in /lib/firmware. The driver would load the required firmware.
The firmware has to be placed in the correct location, usually /lib/firmware. This could vary among distributions, so check your distro's policies if loading of the firmware fails.
Supported Features
- Station Mode
- Monitor Mode
- IBSS Mode
- Legacy (11g) operation
- HT support
- TX/RX 11n AMPDU aggregation
- HW Encryption
- LED
- Powersave
- Suspend/Resume
Modeswitching for AR7010
AR7010 based cards operate by default in USB Mass storage mode and have to be 'switched' to wireless mode on plugging in. If you have an old usb_modeswitch package, you can do this to load ath9k_htc automatically.
Add this line to /lib/udev/rules.d/40-usb_modeswitch.rules.
# Atheros Wireless ATTRS{idVendor}=="0cf3", ATTRS{idProduct}=="20ff", RUN+="usb_modeswitch '%b/%k'"
Add a file "0cf3:20ff" in /etc/usb_modeswitch.d/ and add these lines to it.
######################################################## # Atheros Wireless DefaultVendor= 0x0CF3 DefaultProduct=0x20FF TargetVendor= 0x0CF3 TargetProduct= 0x20FF CheckSuccess=10 MessageContent="5553424329000000000000000000061b000000020000000000000000000000"
Now, when the device is plugged in, ath9k_htc should load normally. If not, report to ath9k_devel.
Debugging
See here.