From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-wm0-f48.google.com ([74.125.82.48]:37932 "EHLO mail-wm0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755279AbcHYGZK (ORCPT ); Thu, 25 Aug 2016 02:25:10 -0400 Received: by mail-wm0-f48.google.com with SMTP id o80so55196786wme.1 for ; Wed, 24 Aug 2016 23:24:12 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <1468924452-23877-1-git-send-email-michal.kazior@tieto.com> <1468924452-23877-5-git-send-email-michal.kazior@tieto.com> From: Michal Kazior Date: Thu, 25 Aug 2016 08:18:35 +0200 Message-ID: (sfid-20160825_082616_002271_7E37C7F4) Subject: Re: [PATCH 4/4] ath10k: fix spurious tx/rx during boot To: Ben Greear Cc: Kalle Valo , linux-wireless , "ath10k@lists.infradead.org" , Marek Puzyniak Content-Type: text/plain; charset=UTF-8 Sender: linux-wireless-owner@vger.kernel.org List-ID: On 24 August 2016 at 19:20, Ben Greear wrote: > On 07/19/2016 03:34 AM, Michal Kazior wrote: >> >> HW Rx filters and masks are not configured >> properly by firmware during boot sequences. The >> MAC_PCU_ADDR1 is set to 0s instead of 1s which >> allows the HW to ACK any frame that passes through >> MAC_PCU_RX_FILTER. The MAC_PCU_RX_FILTER itself >> is misconfigured on boot as well. >> >> The combination of these bugs ended up with the >> following manifestations: >> - "no channel configured; ignoring frame(s)!" >> warnings in the driver >> - spurious ACKs (transmission) on the air during >> firmware bootup sequences >> >> The former was a long standing and known bug >> originally though mostly harmless. >> >> However Marek recently discovered that this >> problem also involves ACKing *all* frames the HW >> receives (including beacons ;). Such frames >> are delivered to host and generate the former >> warning as well. >> >> This could be a problem with regulatory compliance >> in some rare cases (e.g. Taiwan which forbids >> transmissions on channel 36 which is the default >> bootup channel on 5Ghz band cards). The good news >> is that it'd require someone else to violate >> regulatory first to coerce our device to generate >> and transmit an ACK. >> >> The problem could be reproduced in a rather busy >> environment that has a lot of APs. The likelihood >> could be increased by injecting an msleep() of >> 5000 or longer immediately after >> ath10k_htt_setup() in ath10k_core_start(). >> >> The reason why the former warnings were only >> showing up seldom is because the device was either >> quickly reset again (i.e. during firmware probing) >> or wmi vdev was created (which fixes hw and fw >> states). >> >> It is technically possible for host driver to >> override adequate hw registers however this can't >> work reliably because the bug root cause lies in >> incorrect firmware state on boot (internal >> structure used to program MAC_PCU_ADDR1 is not >> properly initialized) and only vdev create/delete >> events can fix it. This is why the patch takes >> dummy vdev approach. >> >> This could be fixed in firmware as well but having >> this fixed in driver is more robust, most notably >> when thinking of users of older firmware such as >> 999.999.0.636. >> >> Reported-by: Marek Puzyniak >> Signed-off-by: Michal Kazior > > > I was looking at firmware to make sure that I fixed what I could there...= . > > From what I can tell, 10.4 should not have this bug. Did you see this on= ly > on 10.1/10.2 firmware? It is of course possible that I am mis-understand= ing > 10.4.... I did see it on 10.1 and 10.2. Don't recall seeing it on 10.4 though. If you didn't see warnings on 10.4 even after adding msleep() as per commit log then I guess it doesn't suffer from the bug. Micha=C5=82 From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mail-wm0-x22c.google.com ([2a00:1450:400c:c09::22c]) by bombadil.infradead.org with esmtps (Exim 4.85_2 #1 (Red Hat Linux)) id 1bco0E-0000Ge-4z for ath10k@lists.infradead.org; Thu, 25 Aug 2016 06:19:04 +0000 Received: by mail-wm0-x22c.google.com with SMTP id q128so224909542wma.1 for ; Wed, 24 Aug 2016 23:18:37 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <1468924452-23877-1-git-send-email-michal.kazior@tieto.com> <1468924452-23877-5-git-send-email-michal.kazior@tieto.com> From: Michal Kazior Date: Thu, 25 Aug 2016 08:18:35 +0200 Message-ID: Subject: Re: [PATCH 4/4] ath10k: fix spurious tx/rx during boot List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "ath10k" Errors-To: ath10k-bounces+kvalo=adurom.com@lists.infradead.org To: Ben Greear Cc: Kalle Valo , Marek Puzyniak , linux-wireless , "ath10k@lists.infradead.org" T24gMjQgQXVndXN0IDIwMTYgYXQgMTk6MjAsIEJlbiBHcmVlYXIgPGdyZWVhcmJAY2FuZGVsYXRl Y2guY29tPiB3cm90ZToKPiBPbiAwNy8xOS8yMDE2IDAzOjM0IEFNLCBNaWNoYWwgS2F6aW9yIHdy b3RlOgo+Pgo+PiBIVyBSeCBmaWx0ZXJzIGFuZCBtYXNrcyBhcmUgbm90IGNvbmZpZ3VyZWQKPj4g cHJvcGVybHkgYnkgZmlybXdhcmUgZHVyaW5nIGJvb3Qgc2VxdWVuY2VzLiBUaGUKPj4gTUFDX1BD VV9BRERSMSBpcyBzZXQgdG8gMHMgaW5zdGVhZCBvZiAxcyB3aGljaAo+PiBhbGxvd3MgdGhlIEhX IHRvIEFDSyBhbnkgZnJhbWUgdGhhdCBwYXNzZXMgdGhyb3VnaAo+PiBNQUNfUENVX1JYX0ZJTFRF Ui4gVGhlIE1BQ19QQ1VfUlhfRklMVEVSIGl0c2VsZgo+PiBpcyBtaXNjb25maWd1cmVkIG9uIGJv b3QgYXMgd2VsbC4KPj4KPj4gVGhlIGNvbWJpbmF0aW9uIG9mIHRoZXNlIGJ1Z3MgZW5kZWQgdXAg d2l0aCB0aGUKPj4gZm9sbG93aW5nIG1hbmlmZXN0YXRpb25zOgo+PiAgLSAibm8gY2hhbm5lbCBj b25maWd1cmVkOyBpZ25vcmluZyBmcmFtZShzKSEiCj4+ICAgIHdhcm5pbmdzIGluIHRoZSBkcml2 ZXIKPj4gIC0gc3B1cmlvdXMgQUNLcyAodHJhbnNtaXNzaW9uKSBvbiB0aGUgYWlyIGR1cmluZwo+ PiAgICBmaXJtd2FyZSBib290dXAgc2VxdWVuY2VzCj4+Cj4+IFRoZSBmb3JtZXIgd2FzIGEgbG9u ZyBzdGFuZGluZyBhbmQga25vd24gYnVnCj4+IG9yaWdpbmFsbHkgdGhvdWdoIG1vc3RseSBoYXJt bGVzcy4KPj4KPj4gSG93ZXZlciBNYXJlayByZWNlbnRseSBkaXNjb3ZlcmVkIHRoYXQgdGhpcwo+ PiBwcm9ibGVtIGFsc28gaW52b2x2ZXMgQUNLaW5nICphbGwqIGZyYW1lcyB0aGUgSFcKPj4gcmVj ZWl2ZXMgKGluY2x1ZGluZyBiZWFjb25zIDspLiBTdWNoIGZyYW1lcwo+PiBhcmUgZGVsaXZlcmVk IHRvIGhvc3QgYW5kIGdlbmVyYXRlIHRoZSBmb3JtZXIKPj4gd2FybmluZyBhcyB3ZWxsLgo+Pgo+ PiBUaGlzIGNvdWxkIGJlIGEgcHJvYmxlbSB3aXRoIHJlZ3VsYXRvcnkgY29tcGxpYW5jZQo+PiBp biBzb21lIHJhcmUgY2FzZXMgKGUuZy4gVGFpd2FuIHdoaWNoIGZvcmJpZHMKPj4gdHJhbnNtaXNz aW9ucyBvbiBjaGFubmVsIDM2IHdoaWNoIGlzIHRoZSBkZWZhdWx0Cj4+IGJvb3R1cCBjaGFubmVs IG9uIDVHaHogYmFuZCBjYXJkcykuIFRoZSBnb29kIG5ld3MKPj4gaXMgdGhhdCBpdCdkIHJlcXVp cmUgc29tZW9uZSBlbHNlIHRvIHZpb2xhdGUKPj4gcmVndWxhdG9yeSBmaXJzdCB0byBjb2VyY2Ug b3VyIGRldmljZSB0byBnZW5lcmF0ZQo+PiBhbmQgdHJhbnNtaXQgYW4gQUNLLgo+Pgo+PiBUaGUg cHJvYmxlbSBjb3VsZCBiZSByZXByb2R1Y2VkIGluIGEgcmF0aGVyIGJ1c3kKPj4gZW52aXJvbm1l bnQgdGhhdCBoYXMgYSBsb3Qgb2YgQVBzLiBUaGUgbGlrZWxpaG9vZAo+PiBjb3VsZCBiZSBpbmNy ZWFzZWQgYnkgaW5qZWN0aW5nIGFuIG1zbGVlcCgpIG9mCj4+IDUwMDAgb3IgbG9uZ2VyIGltbWVk aWF0ZWx5IGFmdGVyCj4+IGF0aDEwa19odHRfc2V0dXAoKSBpbiBhdGgxMGtfY29yZV9zdGFydCgp Lgo+Pgo+PiBUaGUgcmVhc29uIHdoeSB0aGUgZm9ybWVyIHdhcm5pbmdzIHdlcmUgb25seQo+PiBz aG93aW5nIHVwIHNlbGRvbSBpcyBiZWNhdXNlIHRoZSBkZXZpY2Ugd2FzIGVpdGhlcgo+PiBxdWlj a2x5IHJlc2V0IGFnYWluIChpLmUuIGR1cmluZyBmaXJtd2FyZSBwcm9iaW5nKQo+PiBvciB3bWkg dmRldiB3YXMgY3JlYXRlZCAod2hpY2ggZml4ZXMgaHcgYW5kIGZ3Cj4+IHN0YXRlcykuCj4+Cj4+ IEl0IGlzIHRlY2huaWNhbGx5IHBvc3NpYmxlIGZvciBob3N0IGRyaXZlciB0bwo+PiBvdmVycmlk ZSBhZGVxdWF0ZSBodyByZWdpc3RlcnMgaG93ZXZlciB0aGlzIGNhbid0Cj4+IHdvcmsgcmVsaWFi bHkgYmVjYXVzZSB0aGUgYnVnIHJvb3QgY2F1c2UgbGllcyBpbgo+PiBpbmNvcnJlY3QgZmlybXdh cmUgc3RhdGUgb24gYm9vdCAoaW50ZXJuYWwKPj4gc3RydWN0dXJlIHVzZWQgdG8gcHJvZ3JhbSBN QUNfUENVX0FERFIxIGlzIG5vdAo+PiBwcm9wZXJseSBpbml0aWFsaXplZCkgYW5kIG9ubHkgdmRl diBjcmVhdGUvZGVsZXRlCj4+IGV2ZW50cyBjYW4gZml4IGl0LiBUaGlzIGlzIHdoeSB0aGUgcGF0 Y2ggdGFrZXMKPj4gZHVtbXkgdmRldiBhcHByb2FjaC4KPj4KPj4gVGhpcyBjb3VsZCBiZSBmaXhl ZCBpbiBmaXJtd2FyZSBhcyB3ZWxsIGJ1dCBoYXZpbmcKPj4gdGhpcyBmaXhlZCBpbiBkcml2ZXIg aXMgbW9yZSByb2J1c3QsIG1vc3Qgbm90YWJseQo+PiB3aGVuIHRoaW5raW5nIG9mIHVzZXJzIG9m IG9sZGVyIGZpcm13YXJlIHN1Y2ggYXMKPj4gOTk5Ljk5OS4wLjYzNi4KPj4KPj4gUmVwb3J0ZWQt Ynk6IE1hcmVrIFB1enluaWFrIDxtYXJlay5wdXp5bmlha0B0aWV0by5jb20+Cj4+IFNpZ25lZC1v ZmYtYnk6IE1pY2hhbCBLYXppb3IgPG1pY2hhbC5rYXppb3JAdGlldG8uY29tPgo+Cj4KPiBJIHdh cyBsb29raW5nIGF0IGZpcm13YXJlIHRvIG1ha2Ugc3VyZSB0aGF0IEkgZml4ZWQgd2hhdCBJIGNv dWxkIHRoZXJlLi4uLgo+Cj4gRnJvbSB3aGF0IEkgY2FuIHRlbGwsIDEwLjQgc2hvdWxkIG5vdCBo YXZlIHRoaXMgYnVnLiAgRGlkIHlvdSBzZWUgdGhpcyBvbmx5Cj4gb24gMTAuMS8xMC4yIGZpcm13 YXJlPyAgSXQgaXMgb2YgY291cnNlIHBvc3NpYmxlIHRoYXQgSSBhbSBtaXMtdW5kZXJzdGFuZGlu Zwo+IDEwLjQuLi4uCgpJIGRpZCBzZWUgaXQgb24gMTAuMSBhbmQgMTAuMi4gRG9uJ3QgcmVjYWxs IHNlZWluZyBpdCBvbiAxMC40IHRob3VnaC4KSWYgeW91IGRpZG4ndCBzZWUgd2FybmluZ3Mgb24g MTAuNCBldmVuIGFmdGVyIGFkZGluZyBtc2xlZXAoKSBhcyBwZXIKY29tbWl0IGxvZyB0aGVuIEkg Z3Vlc3MgaXQgZG9lc24ndCBzdWZmZXIgZnJvbSB0aGUgYnVnLgoKCk1pY2hhxYIKCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmF0aDEwayBtYWlsaW5nIGxp c3QKYXRoMTBrQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcv bWFpbG1hbi9saXN0aW5mby9hdGgxMGsK