From patchwork Tue Mar 24 12:38:11 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michal Kazior X-Patchwork-Id: 6078391 X-Patchwork-Delegate: kvalo@adurom.com Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id B113B9F2A9 for ; Tue, 24 Mar 2015 12:40:57 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id BEF552024F for ; Tue, 24 Mar 2015 12:40:56 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 250A32024D for ; Tue, 24 Mar 2015 12:40:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752035AbbCXMkx (ORCPT ); Tue, 24 Mar 2015 08:40:53 -0400 Received: from mail-la0-f54.google.com ([209.85.215.54]:35893 "EHLO mail-la0-f54.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751956AbbCXMkw (ORCPT ); Tue, 24 Mar 2015 08:40:52 -0400 Received: by labe2 with SMTP id e2so82893026lab.3 for ; Tue, 24 Mar 2015 05:40:50 -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=8WhQ1+b1WMVrkp3+Ws1pbjxFvdKZiYCEDRUVeTZYd84=; b=NvodrHZnd5OIQqLGIe5Chj5/s0EkYg0uDfNtBpTLDM6LvzqlD0noNQwvHjXpKMvciK P240DIExpEWc8tQWQDau323LET2uwiueh0BQXDCck0ystc8vVldzJb0afaFcbr8f4e7+ tUk0qwBzQnCQqLyq2OTPnsdes/j3AFaTbz/Is= 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=8WhQ1+b1WMVrkp3+Ws1pbjxFvdKZiYCEDRUVeTZYd84=; b=P9SwJQqyFqYRqUTOGpl0c1jiFL4j1JSWJ098jxqnmKeWp5OXMNu/DlxIFnkTUIWC/j 01aOz5NpGRrFw8C3P4v8+cY2A6dACu9jDvg42esdphcYX4uFIFWFELFxk+Br8wBp+Xk9 udg7Jdr2AUsKYIyzpSNVEg4U1FgGLhQTPflX6Z5+87hj7/GHn6EG/lwgoIEafNbzCoO+ XYgnuLPljUTJDOseB6OGnY9InLg8IK4AtU2zD5FkTGr55sX3CqJ2NFO9+CqwnzNB8yM2 czQQJbV3cssAEQWtSjLTnfI5RKxXg5+w1nuFZEv+hmmAvXOlV+1DsjraJJ+UxjGuzzeg smlw== X-Gm-Message-State: ALoCoQkruvEeXGFUnh/9kXD3QsOj99VZpiz7sZvXC44Za+aaks8s5MEf1NJ7PWW9HYzAmySsBiHmzGeBgah0zcxIuBZ6bhZu07Nn4ExKTq21l87sqsIzpJHL4mehzQmdycz5JKbLeIUV X-Received: by 10.152.206.70 with SMTP id lm6mr3647329lac.35.1427200850457; Tue, 24 Mar 2015 05:40:50 -0700 (PDT) Received: from bob.homerouter.cpe (apn-77-113-71-242.dynamic.gprs.plus.pl. [77.113.71.242]) by mx.google.com with ESMTPSA id le10sm905702lac.7.2015.03.24.05.40.49 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 24 Mar 2015 05:40:49 -0700 (PDT) From: Michal Kazior To: ath10k@lists.infradead.org Cc: linux-wireless@vger.kernel.org, Michal Kazior Subject: [PATCH] ath10k: fix survey reporting Date: Tue, 24 Mar 2015 12:38:11 +0000 Message-Id: <1427200691-7109-1-git-send-email-michal.kazior@tieto.com> X-Mailer: git-send-email 2.1.4 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 Number of channels is stored in a separate macro in a header file and channel list is constructed independently. The macro is used to define survey array. This fixes a recent regression introduced after adding support for 144 channel. The regression would lead to a warning and incomplete survey data on channel 165: chan info: invalid frequency 5825 (idx 38 out of bounds) Also make sure to enforce the sizes and avoid this kind of problem in the future. Fixes: 4a7898fed5f3 ("ath10k: enable channel 144 on 5GHz band") Signed-off-by: Michal Kazior --- Notes: (based on pending branch) drivers/net/wireless/ath/ath10k/core.h | 2 +- drivers/net/wireless/ath/ath10k/mac.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/net/wireless/ath/ath10k/core.h b/drivers/net/wireless/ath/ath10k/core.h index d50408822f39..7fa171fa55e3 100644 --- a/drivers/net/wireless/ath/ath10k/core.h +++ b/drivers/net/wireless/ath/ath10k/core.h @@ -45,7 +45,7 @@ #define WMI_READY_TIMEOUT (5 * HZ) #define ATH10K_FLUSH_TIMEOUT_HZ (5*HZ) #define ATH10K_CONNECTION_LOSS_HZ (3*HZ) -#define ATH10K_NUM_CHANS 38 +#define ATH10K_NUM_CHANS 39 /* Antenna noise floor */ #define ATH10K_DEFAULT_NOISE_FLOOR -95 diff --git a/drivers/net/wireless/ath/ath10k/mac.c b/drivers/net/wireless/ath/ath10k/mac.c index 5f9705deb430..75cc304d32d4 100644 --- a/drivers/net/wireless/ath/ath10k/mac.c +++ b/drivers/net/wireless/ath/ath10k/mac.c @@ -6014,6 +6014,10 @@ int ath10k_mac_register(struct ath10k *ar) ht_cap = ath10k_get_ht_cap(ar); vht_cap = ath10k_create_vht_cap(ar); + BUILD_BUG_ON((ARRAY_SIZE(ath10k_2ghz_channels) + + ARRAY_SIZE(ath10k_5ghz_channels)) != + ATH10K_NUM_CHANS); + if (ar->phy_capability & WHAL_WLAN_11G_CAPABILITY) { channels = kmemdup(ath10k_2ghz_channels, sizeof(ath10k_2ghz_channels),