From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from smtp.dhc.com.cn ([210.83.203.3] helo=edge-a.dhc.com.cn) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1WXRlj-0003yk-To for ath10k@lists.infradead.org; Tue, 08 Apr 2014 08:52:37 +0000 Message-ID: <5343B89E.2090407@dhc.com.cn> Date: Tue, 8 Apr 2014 16:51:42 +0800 From: wangdc MIME-Version: 1.0 Subject: For Help: problems with tx bitrate in ath10k List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "ath10k" Errors-To: ath10k-bounces+kvalo=adurom.com@lists.infradead.org To: "ath10k@lists.infradead.org" Hi,all I used the backports-3.13.2-1 to drive a 11ac card(WLE900VX) on the ubuntu 12.04 LTS(64bit) (3.8.0-35-generic). The card seemed to be working well when i connected it to a broadcom AC APs and the card could also send or receive data normally. But when using command 'iw dev wlan0 station dump' to check the actual Rx and Tx rate, i couldn't get the tx bitrate correctly. root@ubuntu:~$ iw dev wlan2 station dump Station 10:48:b1:e8:17:a6 (on wlan2) inactive time: 28680 ms rx bytes: 903704 rx packets: 6747 tx bytes: 20731 tx packets: 163 tx retries: 1969 tx failed: 0 signal: -36 dBm signal avg: -36 dBm tx bitrate: MCS 32 40Mhz short GI authorized: yes authenticated: yes preamble: long WMM/WME: yes MFP: no TDLS peer: no And sometimes the tx bitrate was 3693.3 MBit/s, 65.0 MBit/s, 6.5Mbit/s etc. The start log as following. root@ubuntu:~$ dmesg | grep ath [ 0.800424] MODSIGN: Loaded cert 'Magrathea: Glacier signing key: c77318d5b035f7cbfa665f640863f8bc32a3fa33' [ 10.539694] ath10k_pci 0000:04:00.0: BAR 0: assigned [mem 0xf0400000-0xf05fffff 64bit] [ 10.886386] ath10k: MSI-X didn't succeed (1), trying MSI [ 10.886454] ath10k_pci 0000:04:00.0: irq 44 for MSI/MSI-X [ 10.886492] ath10k: MSI interrupt handling [ 10.921722] ath10k: Hardware name qca988x hw2.0 version 0x4100016c [ 12.246510] ath10k: UART prints disabled [ 12.250960] ath10k: firmware 10.1.467.2-1 booted [ 12.260459] ath10k: htt target version 2.1 [ 12.261559] ath: EEPROM regdomain: 0x0 [ 12.261561] ath: EEPROM indicates default country code should be used [ 12.261562] ath: doing EEPROM country->regdmn map search [ 12.261563] ath: country maps to regdmn code: 0x3a [ 12.261565] ath: Country alpha2 being used: US [ 12.261566] ath: Regpair used: 0x3a [ 18.767377] ath10k: MSI-X didn't succeed (1), trying MSI [ 18.767451] ath10k_pci 0000:04:00.0: irq 44 for MSI/MSI-X [ 18.767496] ath10k: MSI interrupt handling [ 19.700523] ath10k: UART prints disabled [ 19.705037] ath10k: firmware 10.1.467.2-1 booted [ 19.714921] ath10k: htt target version 2.1 ... root@ubuntu:~$ dmesg [ 121.846056] ------------[ cut here ]------------ [ 121.846090] WARNING: at /home/backports/net/wireless/util.c:1066 cfg80211_calculate_bitrate+0x18e/0x210 [cfg80211]() [ 121.846093] Hardware name: 23066RC [ 121.846094] Modules linked in: ip_vs(F) nf_conntrack(F) libcrc32c(F) bnep(F) rfcomm(F) parport_pc(F) ppdev(F) arc4(F) coretemp(F) snd_hda_codec_hdmi(F) snd_hda_codec_realtek(F) ath10k_pci(OF) ath10k_core(OF) uvcvideo(F) nfsd(F) snd_hda_intel(F) kvm(F) snd_hda_codec(F) ath(OF) videobuf2_core(F) nfs_acl(F) videodev(F) auth_rpcgss(F) i915(F) nfs(F) videobuf2_vmalloc(F) snd_hwdep(F) btusb(F) snd_pcm(F) mac80211(OF) videobuf2_memops(F) joydev(F) fscache(F) bluetooth(F) ghash_clmulni_intel(F) thinkpad_acpi(F) lockd(F) snd_seq_midi(F) cryptd(F) drm_kms_helper(F) binfmt_misc(F) snd_rawmidi(F) drm(F) snd_seq_midi_event(F) cfg80211(OF) sunrpc(F) snd_seq(F) psmouse(F) snd_timer(F) snd_seq_device(F) mei(F) snd(F) microcode(F) serio_raw(F) mac_hid(F) i2c_algo_bit(F) snd_page_alloc(F) compat(OF) soundcore(F) lpc_ich(F) nvram(F) wmi(F) video(F) lp(F) parport(F) sdhci_pci(F) sdhci(F) e1000e(F) [ 121.846157] Pid: 1050, comm: NetworkManager Tainted: GF O 3.8.0-35-generic #52~precise1-Ubuntu [ 121.846159] Call Trace: [ 121.846171] [] warn_slowpath_common+0x7f/0xc0 [ 121.846177] [] warn_slowpath_null+0x1a/0x20 [ 121.846193] [] cfg80211_calculate_bitrate+0x18e/0x210 [cfg80211] [ 121.846212] [] nl80211_put_sta_rate+0x57/0x2a0 [cfg80211] [ 121.846229] [] nl80211_send_station.isra.63+0x4a1/0x870 [cfg80211] [ 121.846246] [] nl80211_get_station+0x22c/0x290 [cfg80211] [ 121.846254] [] genl_rcv_msg+0x22d/0x2b0 [ 121.846260] [] ? __alloc_skb+0x8b/0x2a0 [ 121.846264] [] ? genl_rcv+0x40/0x40 [ 121.846270] [] netlink_rcv_skb+0xa9/0xd0 [ 121.846274] [] genl_rcv+0x25/0x40 [ 121.846279] [] netlink_unicast+0x1b1/0x230 [ 121.846285] [] netlink_sendmsg+0x2fe/0x3b0 [ 121.846290] [] sock_sendmsg+0xd2/0xf0 [ 121.846296] [] ? move_addr_to_kernel+0x5a/0xa0 [ 121.846300] [] ? verify_iovec+0x56/0xd0 [ 121.846305] [] ___sys_sendmsg+0x3ac/0x3c0 [ 121.846311] [] ? pollwake+0x66/0x70 [ 121.846316] [] ? try_to_wake_up+0x200/0x200 [ 121.846323] [] ? _raw_spin_lock_irq+0x15/0x20 [ 121.846327] [] ? try_to_wake_up+0x200/0x200 [ 121.846332] [] __sys_sendmsg+0x49/0x90 [ 121.846337] [] sys_sendmsg+0x19/0x20 [ 121.846343] [] system_call_fastpath+0x1a/0x1f [ 121.846346] ---[ end trace fc50900f4228222f ]--- About the reason of the warning info above, when debugging the code, rate->flags was 0x0 and the rate->mcs value was more than 32 in the function of cfg80211_calculate_bitrate, but i didn't know why i got a wrong rate value. /home/backports/net/wireless/util.c u32 cfg80211_calculate_bitrate(struct rate_info *rate) { int modulation, streams, bitrate; if (!(rate->flags & RATE_INFO_FLAGS_MCS) && !(rate->flags & RATE_INFO_FLAGS_VHT_MCS)) return rate->legacy; if (rate->flags & RATE_INFO_FLAGS_60G) return cfg80211_calculate_bitrate_60g(rate); if (rate->flags & RATE_INFO_FLAGS_VHT_MCS) return cfg80211_calculate_bitrate_vht(rate); /* the formula below does only work for MCS values smaller than 32 */ if (WARN_ON_ONCE(rate->mcs >= 32)) return 0; I tried other version of the firmware and backports, the test results were as following: a)The problem repeated when i tried firmware-2.bin_999.999.0.636. b)The tx bitrate was fixed to 6MBit/s and there was no warning info in the boot log when i adopted the latest development releases(backports-20140221). Is there anybody meets the same problem? If so, please give me some suggestion on getting Tx rate properly. Thanks. Rex _______________________________________________ ath10k mailing list ath10k@lists.infradead.org http://lists.infradead.org/mailman/listinfo/ath10k