ath10k does not support selection antenna yet?

Vu Hai NGUYEN vh.nguyen at actiasodielec.fr
Wed May 7 00:36:06 PDT 2014


I read in the debug's page that ath10k HW is currently limited to handle only single fixed rate setting or limit number of used spatial streams. Does it mean that the selection of antenna is not possible for this moment? Because if I look in the code of ath9k, there are 2 fonctions set_antenna and get_antenna in the structure: struct ieee80211_ops (file main.c) and that's why the out put of "iw list" for ath10k give me: Available Antennas:  TX0 RX0 and I can not select the antenna?

Btw, I still try to deal with the bitrates problem, the file  /sys/kernel/debug/ieee80211/phy0/ath10k/fw_stats give me nothing when I "cat" it and if I run : "iw wlan0 set bitrates legacy-2.4 54 ht-mcs-2.4", the dmesg output is:

ath10k: mac fixed rate pream 0x00 nss 0x00 rate 0x04                           
ath10k: wmi vdev id 0x0 set param 25 value 4                                   
ath10k: wmi vdev id 0x0 set param 32 value 1                                   
ath10k: wmi vdev id 0x0 set param 26 value 0                                   
ath10k: wmi event debug mesg len 16  

but the order of these parameters are normally 27 (fixed rates) , 34 (nss)  and 28(sgi) in the map of parameter, I have no idea why the offset is minus 2 ? 
Do you guys have any suggestion for this? :D
Thank you in advande.
 

NGUYEN Vu Hai
Acita-Sodielec
Route de Mayres - B.P. 9
12100 St GEORGES DE LUZENCON
FRANCE

________________________________________
De : ath10k [ath10k-bounces at lists.infradead.org] de la part de Vu Hai NGUYEN [vh.nguyen at actiasodielec.fr]
Date d'envoi : mercredi 30 avril 2014 14:39
À : Michal Kazior
Cc : Patrick CARNEIRO RODRIGUEZ; Kalle Valo; ath10k at lists.infradead.org
Objet : RE : RE : RE : Report Firmware firmware-2.bin_10.1.467.2-1 Error

>> It seems that the command arrives until the level of driver ath10k and works but when I verified by connecting a station to my access point and look at the out put of "iw wlan0 station dump", the value of txpower received at the >>station didn't change even when I changed the txpower of my access point from 1dBm to 20dBm (my station is near the access point).

>This works for me (latest github.com/kvalo/ath/master with 467.2).
>I can see "signal" values change in iw station dump on the connected
>client when I set different txpower values on ath10k AP.

I replace the ath from  backports with the one from master tree of ath, but it is worse.
When I set a channel from 52 (or higher) for AP mode using the version of backports, I get a backtrace message output and then my wlan0 become ready:

br0: port 2(wlan0) entering disabled state
ADDRCONF(NETDEV_UP): wlan0: link is not ready
wlan0: interface------------[ cut here ]------------
 state UNINITIALWARNING: at /home/alberix2/Desktop/Wilinks_ath10k/ACCESS_POINT_A
PPLI/Source/Driver_ath10k/backports-3.15-rc1-1/net/wireless/nl80211.c:5824 nl802
11_start_radar_detection+0xf8/0x16c [cfg80211]()
IZED->COUNTRY_UPModules linked in:DATE
wlan0: int ath10k_pci(O)erface state COU ath10k_core(O)NTRY_UPDATE->DFS ath(O)
wlan0: DFS-CAC mac80211(O)-START freq=5260 cfg80211(O) chan=52 sec_cha compat(O)
n=0
 arc4 ubifs ubi [last unloaded: compat]
Backtrace:
[<c0011938>] (dump_backtrace+0x0/0x118) from [<c050205c>] (dump_stack+0x18/0x20)
 r6:bf49a62b r5:000016c0 r4:00000000 r3:c10b27ac
[<c0502044>] (dump_stack+0x0/0x20) from [<c0066c38>] (warn_slowpath_common+0x54/
0x70)
[<c0066be4>] (warn_slowpath_common+0x0/0x70) from [<c0066c78>] (warn_slowpath_nu
ll+0x24/0x2c)
 r8:00000000 r7:00000000 r6:d2f9f000 r5:d2aa0000 r4:d2f9f3c8
r3:00000009
[<c0066c54>] (warn_slowpath_null+0x0/0x2c) from [<bf45eae8>] (nl80211_start_rada
r_detection+0xf8/0x16c [cfg80211])
[<bf45e9f0>] (nl80211_start_radar_detection+0x0/0x16c [cfg80211]) from [<c045348
8>] (genl_rcv_msg+0x1b4/0x1f4)
[<c04532d4>] (genl_rcv_msg+0x0/0x1f4) from [<c0452904>] (netlink_rcv_skb+0x58/0x
b8)
[<c04528ac>] (netlink_rcv_skb+0x0/0xb8) from [<c04532c4>] (genl_rcv+0x20/0x30)
 r6:c082f600 r5:d2a7d0e0 r4:d2a7d0e0 r3:c04532a4
[<c04532a4>] (genl_rcv+0x0/0x30) from [<c04522d0>] (netlink_unicast+0x224/0x2c4)
 r4:d0074400 r3:c04532a4
[<c04520ac>] (netlink_unicast+0x0/0x2c4) from [<c04526a4>] (netlink_sendmsg+0x29
0/0x320)
[<c0452414>] (netlink_sendmsg+0x0/0x320) from [<c0428eac>] (sock_sendmsg+0x98/0x
b4)
[<c0428e14>] (sock_sendmsg+0x0/0xb4) from [<c0429150>] (__sys_sendmsg+0x1d0/0x26
c)
 r4:d281bf64
[<c0428f80>] (__sys_sendmsg+0x0/0x26c) from [<c042ab30>] (sys_sendmsg+0x44/0x68)
[<c042aaec>] (sys_sendmsg+0x0/0x68) from [<c000ddc0>] (ret_fast_syscall+0x0/0x30
)
 r6:0012d850 r5:0012d888 r4:400c8900
---[ end trace c03fd18534c1267a ]---
ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
br0: port 2(wlan0) entering forwarding state
br0: port 2(wlan0) entering forwarding state

But with the version from ath master tree, I always get wlan0: link is not ready (and there is no backtrace msg).
And in both versions, the firmware usually crashed when I set a channel lower than 52 (I don't get backtrace msg in these cases):

wlan0: AP-ENABLED
ath10k: firmware crashed!
ath10k: hardware name qca988x hw2.0 version 0x4100016c
ath10k: firmware version: 10.1.467.2-1
ath10k: target register Dump Location: 0x0040AAA4
ath10k: target Register Dump
ath10k: [00]: 0x4100016C 0x000015B3 0x0099F306 0x00955B31
ath10k: [04]: 0x0099F306 0x00060530 0x00000005 0x00000000
ath10k: [08]: 0x009B8164 0x004118C4 0x0043DD84 0x00400000
ath10k: [12]: 0x00000009 0xFFFFFFFF 0x0095808C 0x009580A2
ath10k: [16]: 0x00958080 0x0094085D 0x00000000 0x00000000
ath10k: [20]: 0x4099F306 0x0040ABB4 0x00955A00 0x00000003
ath10k: [24]: 0x809995A1 0x0040AC14 0x0040ACB4 0xC099F306
ath10k: [28]: 0x80999400 0x0040AC44 0x004343F0 0x0040ACCC
ath10k: [32]: 0x8098CE0E 0x0040AC64 0x004343F0 0x0040ACCC
ath10k: [36]: 0x809912AC 0x0040AC84 0x004343F0 0x0040ACCC
ath10k: [40]: 0x8099147A 0x0040ACA4 0x0041ED48 0x00434488
ath10k: [44]: 0x80991661 0x0040AD24 0x00000000 0x0042F2A0
ath10k: [48]: 0x8099081C 0x0040AD84 0x00434488 0x0042F1CC
ath10k: [52]: 0x809909D0 0x0040ADA4 0x00000000 0x0042D704
ath10k: [56]: 0x809968F1 0x0040AEC4 0x0041ED48 0x00000000
ath10k: suspend timed out - target pause event never came
ieee80211 phy0: Hardware restart was requested
ath10k: device successfully recovered

There is an ouput of my dmesg in the attached file if someone is interested in :D
One more question: The default country for regulatory domain of ath is US?
I found that it was defined in file "regd.c" and that's why even I set my country to FR ("iw reg set FR") I was not able to set up the channel 12 and 13. (Marked as disabled in output of "iw list" so I replace CTRY_UNITED_STATES with CTRY_FRANCE and then I can get the channel 12 and 13 worked. Is this legal?

@ Chun-Yeow:

>For TxRate, another option would be looking at
>"/sys/kernel/debug/ieee80211/phy0/ath10k/fw_stats".

When I "cat" that file there is nothing appear (it looks like empty) (But I can view other information from others files, such as: simulate_fw_crash, fw_dbglog, htt_stats_mask, wmi_services). Do you have any idea? :D

Thank you all of you for your support

NGUYEN Vu Hai
Acita-Sodielec
Route de Mayres - B.P. 9
12100 St GEORGES DE LUZENCON
FRANCE

________________________________________
De : Michal Kazior [michal.kazior at tieto.com]
Date d'envoi : jeudi 24 avril 2014 11:41
À : Vu Hai NGUYEN
Cc : Kalle Valo; Patrick CARNEIRO RODRIGUEZ; ath10k at lists.infradead.org
Objet : Re: RE : RE : Report Firmware firmware-2.bin_10.1.467.2-1 Error

On 24 April 2014 11:03, Vu Hai NGUYEN <vh.nguyen at actiasodielec.fr> wrote:
> Thank you for your response, the problem is solved when I download the latest version of backport (3.15) and compile ath10k with it (last time my version is 3.13 and as you said, It might not include the patch).
> Now I can load the firmware 10.1.467.2-1 but I get new problem too.
> Does ath10k support all the command of "iw"?
> For example I set up mode access point and tried to change the txpower by the command: "iw wlan0 set txpower fixed 1200" (same thing as "iwconfig wlan0 txpower 12dBm" , right?)
> The output of "iwconfig" is:
> wlan0     IEEE 802.11abgn  Mode:Master  Tx-Power=12 dBm
>           Retry short limit:7   RTS thr:off   Fragment thr:off
>           Power Management:on
>
> And output of "dmesg":
> ath10k: mac config power 12
> ath10k: wmi pdev set param 3 value 24
> ath10k: wmi pdev set param 4 value 24
>
> It seems that the command arrives until the level of driver ath10k and works but when I verified by connecting a station to my access point and look at the out put of "iw wlan0 station dump", the value of txpower received at the station didn't change even when I changed the txpower of my access point from 1dBm to 20dBm (my station is near the access point).

This works for me (latest github.com/kvalo/ath/master with 467.2).

I can see "signal" values change in iw station dump on the connected
client when I set different txpower values on ath10k AP.


> Same thing when I do with the command set bit rates: "iw wlan0 set bitrates legacy-2.4 54 ht-mcs-2.4"
>
> Out put of dmesg:
> ath10k: mac fixed rate pream 0x00 nss 0x00 rate 0x04
> ath10k: wmi vdev id 0x0 set param 27 value 4
> ath10k: wmi vdev id 0x0 set param 34 value 1
> ath10k: wmi vdev id 0x0 set param 28 value 0
> ath10k: wmi event debug mesg len 16
>
> But the out put of " iw wlan0 station dump" did not show any change when I varied the bit rate of my access point too.

Again, this works for me.

To be clear - ath10k is incapable of reporting "tx bitrate" (it always
reports 6mbps). If you want to verify if the bitrate mask works you
must check "rx bitrate" on the other side, i.e. on the connected
client.

Or just use a separate sniffer and see if AP is sends frames with
different txpower/bitrate values.


Michał


More information about the ath10k mailing list