Go back –> ath10k
ath10k driver
Building
To build ath10k enable these kernel build configuration options, for example with make menuconfig:
- CONFIG_ATH10K
- CONFIG_ATH10K_PCI
- CONFIG_ATH10K_DEBUG (optional)
- CONFIG_ATH10K_DEBUGFS (optional)
- CONFIG_ATH10K_TRACING (optional)
The debug and tracing options are optional, but it's strongly recommended to enable to make it easier to debug issues.
ath10k options can be found from location:
-> Device Drivers -> Network device support (NETDEVICES [=y]) -> Wireless LAN (WLAN [=y]) -> Atheros Wireless Cards (ATH_CARDS [=m])
Loading the modules
The ath10k modules should be loaded automatically in most systems. If that's not happening, first load ath10k_core.ko and then ath10k_pci.ko.
hostapd
ath10k uses the standard upstream hostapd. As of this writing (2013-11-21) it's recommended to use the version from git if using 802.11ac, DFS or ACS.
Building hostapd
When building hostapd enable these configuration options:
- CONFIG_IEEE80211AC
- CONFIG_ACS
Configuring hostapd
Example hostapd config to use 11ac VHT80 mode with ath10k:
interface=wlan0 driver=nl80211 ssid=ath10k-test hw_mode=a channel=36 ht_capab=[HT40+] ieee80211n=1 ieee80211ac=1 vht_oper_chwidth=1 vht_oper_centr_freq_seg0_idx=42
vht_oper_centr_freq_seg0_idx is calculated for VHT80 with channel + 6. If you get "set channel failed to set in kernel" error message, most likely your regulatory database doesn't support 80 MHz channels.
To enable ACS set channel to zero:
channel=0
To enable DFS enable 11d and 11h as well as set country code:
country_code=FI ieee80211d=1 ieee80211h=1
Current implementation of ath radar pattern detector supports only ETSI regulatory domain. It means radar detection works only when master region is set to ETSI. It can be done by setting regulatory domain to country from Europe (DE, FI, FR, PL, ...):
- iw reg set DE
Other regulatory domains like JP (Japan), US (FCC master region) are currently not supported. Starting AP on DFS channel in DFS master region different that ETSI will cause radar event at first suspicious RF signal even it was not radar.
For mBSSID start hostapd using -b switch:
hostapd -g /var/run/hostapd/global -b phy0:ath10k.conf -b phy0:ath10k-1.conf -b phy0:ath10k-2.conf
To remove an interface:
wpa_cli -g /var/run/hostapd/global raw REMOVE wlan0-2
To add an interface:
wpa_cli -g /var/run/hostapd/global raw ADD bss_config=phy0:ath10k-2.conf
See hostapd wiki page and hostapd.conf documentation for more information.