From patchwork Tue Jan 3 22:57:15 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?UmFmYcWCIE1pxYJlY2tp?= X-Patchwork-Id: 9495799 X-Patchwork-Delegate: johannes@sipsolutions.net Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 390A460405 for ; Tue, 3 Jan 2017 22:57:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2C3291FF35 for ; Tue, 3 Jan 2017 22:57:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 211BF2793A; Tue, 3 Jan 2017 22:57:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.5 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BF0FF1FF35 for ; Tue, 3 Jan 2017 22:57:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S966649AbdACW5p (ORCPT ); Tue, 3 Jan 2017 17:57:45 -0500 Received: from mail-lf0-f65.google.com ([209.85.215.65]:32838 "EHLO mail-lf0-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1761690AbdACW5n (ORCPT ); Tue, 3 Jan 2017 17:57:43 -0500 Received: by mail-lf0-f65.google.com with SMTP id b14so366161lfg.0; Tue, 03 Jan 2017 14:57:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=2T1rYtX5yEJLWULFcqZYJ6c6oPE3T9XOWn9TsbPG8Z8=; b=b3D4q68Pt36LyMZXC2jBPm2yqXnWTtHW600elj9XFAsDX1nNWgzRGOGqDo6A/E1xSY bZccdauA4mW/WI9Oq8PnlPRXbARuNwkFDbEHbWqPkzGggmVK0iyvypu50x+UocFE86Rs 7PMVFStFMQPVvm7o9S8364Fr2VLX+ino7UFHoApa+4qdXG8Df67hYh+DV1G0fS2+2Hw3 dMoPwWuhcrHCoV9lJ5NLDQeAvLrK0BQKihnlUkrcRleKwDgxuDfZlIs2QCyz70nqrNr3 gcCK1IeEYd/cm48EJG1kmdmdPwEFGq8hhOcAjzdCPH9imMjUuT2qLag5T25wtvx3azyG pYiA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=2T1rYtX5yEJLWULFcqZYJ6c6oPE3T9XOWn9TsbPG8Z8=; b=C8byCJZuQJJLhjcF/wKDVGPN48pt27WhdlvWnerwTQuLdJaVKfFB2p/jaLH6sk/8On 1ADFbK8kM0ugYNSwXXvghefVsnQe/t1RY1i+bOytfKMhhP+PFwSkI2cRRozn1+wsgy/c iJ9KG3Dcfd7gLoWDP6mxLnIMp320HoE+vBPhg7g9PwLapFOffg0Q60OuczqOe3qYoA3N 8bQB5u/vYBfSAymJOfO+V6SVXllW1qZ5nniD7eYRAX9o13OhMNigpK421e5pJiSOXK0a OtB0TbiSThWHFIUQKm+tZTTQFpdexXxxpBZXgRf8zwbD8cb8+BMn8RPT6AuIu4izTDkf JaOw== X-Gm-Message-State: AIkVDXJiuAD4mBxJtnBuVVDPt6f4qlBaQcDd/O+yrEDCajTAA++qyNnfjf915JG2deZZbg== X-Received: by 10.25.99.73 with SMTP id x70mr23524893lfb.81.1483484260803; Tue, 03 Jan 2017 14:57:40 -0800 (PST) Received: from linux-samsung.lan (ip-194-187-74-233.konfederacka.maverick.com.pl. [194.187.74.233]) by smtp.gmail.com with ESMTPSA id 26sm16783366lji.37.2017.01.03.14.57.39 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 03 Jan 2017 14:57:40 -0800 (PST) From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= To: Johannes Berg , linux-wireless@vger.kernel.org Cc: Martin Blumenstingl , Felix Fietkau , Arend van Spriel , Arnd Bergmann , devicetree@vger.kernel.org, =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= Subject: [PATCH V5 4/3] brcmfmac: use wiphy_read_of_freq_limits to respect extra limits Date: Tue, 3 Jan 2017 23:57:15 +0100 Message-Id: <20170103225715.14072-4-zajec5@gmail.com> X-Mailer: git-send-email 2.10.1 In-Reply-To: <20170103225715.14072-1-zajec5@gmail.com> References: <20170103225715.14072-1-zajec5@gmail.com> MIME-Version: 1.0 Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Rafał Miłecki There are some devices (e.g. Netgear R8000 home router) with one chipset model used for different radios, some of them limited to subbands. NVRAM entries don't contain any extra info on such limitations and firmware reports full list of channels to us. We need to store extra limitation info on DT to support such devices properly. Now there is a cfg80211 helper for reading such info use it in brcmfmac. This patch adds check for channel being disabled with orig_flags which is how this wiphy helper works. Signed-off-by: Rafał Miłecki --- This patch should probably go through wireless-driver-next which is why it got weird number 4/3. I'm sending it just as a proof of concept. It was succesfully tested on SmartRG SR400ac with BCM43602. V4: Respect IEEE80211_CHAN_DISABLED in orig_flags V5: Update commit message --- drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c index ccae3bb..f95e316 100644 --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c @@ -5886,6 +5886,9 @@ static int brcmf_construct_chaninfo(struct brcmf_cfg80211_info *cfg, band->band); channel[index].hw_value = ch.control_ch_num; + if (channel->orig_flags & IEEE80211_CHAN_DISABLED) + continue; + /* assuming the chanspecs order is HT20, * HT40 upper, HT40 lower, and VHT80. */ @@ -6477,6 +6480,7 @@ static int brcmf_setup_wiphy(struct wiphy *wiphy, struct brcmf_if *ifp) wiphy->bands[NL80211_BAND_5GHZ] = band; } } + wiphy_read_of_freq_limits(wiphy); err = brcmf_setup_wiphybands(wiphy); return err; }