From patchwork Wed Jun 10 05:03:03 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Janusz.Dziedzic@tieto.com X-Patchwork-Id: 6576531 X-Patchwork-Delegate: kvalo@adurom.com Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 7E7FFC0020 for ; Wed, 10 Jun 2015 05:03:35 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 9F78820570 for ; Wed, 10 Jun 2015 05:03:34 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 16F5D2055C for ; Wed, 10 Jun 2015 05:03:33 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750784AbbFJFDc (ORCPT ); Wed, 10 Jun 2015 01:03:32 -0400 Received: from mail-wi0-f176.google.com ([209.85.212.176]:37627 "EHLO mail-wi0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751318AbbFJFDa (ORCPT ); Wed, 10 Jun 2015 01:03:30 -0400 Received: by wifx6 with SMTP id x6so34702456wif.0 for ; Tue, 09 Jun 2015 22:03:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tieto.com; s=google; h=from:to:cc:subject:date:message-id; bh=76GwkcyTYjf5BXVoalnKgE4srMwbvBZhoRAcaNIIQOE=; b=Xz3rmToAPpeWE7nbtWWPqCG6s3CCU1HUBt5MIKcSMIZJNe/9z3RApN4nLlr0HY7aOM aI0EcckInGcl0MOiJ2h2F9gHIKsbttjyQ+3qPmdEA/vPardRToA3Ly3bnznJSeKAFE28 KTyIWFEiEU3inw6Gc6qkJVij8IRifpXZsyo8U= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=76GwkcyTYjf5BXVoalnKgE4srMwbvBZhoRAcaNIIQOE=; b=YOnaaT0M6l78m9HsbzhQzY+QfuRbnRhV/kU2vYpCufGIVSwS8M/RbYTsvq0bmTh8Xd TkT4cxVH8Gxs2ZwhQJwBtCytgMVnKU1Hx+ShIJT3h8s1MWMc+b9OAJuwuJD+2jyUtgvA 53V3jWYe5NtoWc8lnme8MMlEO2IygxlIF8RnoRqE+jOdHwEnavoiQ6mRz8PhoF621J7Q BqVAqVx9nNa6jvAKyR7JA9Oj7piwJd8vdJPYVuztZm0cfGhHnMRRpTbKakKroAkynd8M jZ3gDU6ycHcPun7mQfYpkAllDgZ16PDXhBdiBdpvE1E0OwjNHiUUhyR6NiewMj/BnJAO A9PQ== X-Gm-Message-State: ALoCoQlHVc5+ArOl0Y3YKC+XqwoxKmTLbciIXS5ZQF0Bf/1FLN53TrAx3h2PLVf+C31i+BBkrdmAWtgU5wuhaItYsUoLYKgAcszlV93jAQ9bqUM2k5jDqZebHLjBseukRVoWiaQ1xFFMU+/S0gNU3+ATkoYyGHL57PzuldA6FFMNDG3k9Z6gmquKLcwFzGbuLSCdImtGov9g X-Received: by 10.180.198.166 with SMTP id jd6mr14632952wic.48.1433912608596; Tue, 09 Jun 2015 22:03:28 -0700 (PDT) Received: from localhost.localdomain ([91.198.246.8]) by mx.google.com with ESMTPSA id ex5sm5932519wib.2.2015.06.09.22.03.27 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 09 Jun 2015 22:03:27 -0700 (PDT) From: Janusz Dziedzic To: linux-wireless@vger.kernel.org Cc: ath9k-devel@venema.h4ckr.net, nbd@openwrt.org, c_manoha@qca.qualcomm.com, Janusz Dziedzic Subject: [RFC] ath9k: allow to receive probe request when offchannel Date: Wed, 10 Jun 2015 07:03:03 +0200 Message-Id: <1433912583-15918-1-git-send-email-janusz.dziedzic@tieto.com> X-Mailer: git-send-email 1.9.1 X-DomainID: tieto.com Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID,T_RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This fix problem that p2p group negotiation didn't work correctly when chanctx used, because we didn't receive probe requests when offchannel and use_chanctx=1 Signed-off-by: Janusz Dziedzic --- @Felix, Sujith could you review? I am not sure I put this in correct place. drivers/net/wireless/ath/ath9k/channel.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/wireless/ath/ath9k/channel.c b/drivers/net/wireless/ath/ath9k/channel.c index 2066650..6301d44 100644 --- a/drivers/net/wireless/ath/ath9k/channel.c +++ b/drivers/net/wireless/ath/ath9k/channel.c @@ -1157,6 +1157,7 @@ static bool ath_chanctx_defer_switch(struct ath_softc *sc) static void ath_offchannel_channel_change(struct ath_softc *sc) { struct ath_common *common = ath9k_hw_common(sc->sc_ah); + u32 rfilt; ath_dbg(common, CHAN_CTX, "%s: offchannel state: %s\n", __func__, offchannel_state_string(sc->offchannel.state)); @@ -1179,6 +1180,11 @@ static void ath_offchannel_channel_change(struct ath_softc *sc) ath_scan_complete(sc, false); break; case ATH_OFFCHANNEL_ROC_START: + /* Allow to receive probe requests */ + rfilt = ath_calcrxfilter(sc); + rfilt |= ATH9K_RX_FILTER_PROBEREQ; + ath9k_hw_setrxfilter(sc->sc_ah, rfilt); + if (sc->cur_chan != &sc->offchannel.chan) break;