Received: by 2002:a05:6a10:a841:0:0:0:0 with SMTP id d1csp316074pxy; Wed, 28 Apr 2021 05:04:49 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxWiysRPsBnq19PYQ7DEWxp2yAaOC92WLUv0j8cLLrG39MknwiBWkILUVUmseoIIu5jeCcf X-Received: by 2002:a05:6402:144d:: with SMTP id d13mr7228837edx.101.1619611489257; Wed, 28 Apr 2021 05:04:49 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619611489; cv=none; d=google.com; s=arc-20160816; b=IJzCMIqYOUSnD8rW99s+USNol1wNZYcvMIgUc+5O4k4Y7Exg9fukR9QnKNs3+VLxbP L+ZK8yYSCoUerA/4JKqUrqTiU756kkvodVr2jBjtmVlm05Cgx29Z/5d1EL4qvwhfHP6R w46ynfqva98vaCr+mMroo7KfhMwTYUUE7C/SGmxvoszKDpjSr3qaMpRkEELXfL0HMcVz ptfGSOXso5HZpA9ru1vWMKjZK0omuzt60OoQ80FdOYJPALi27uGEE0/aaf6RmDkjz6s6 pRXcZkGiq323AM9UoojMMq/bGUn3/Gmb8kI+Qq+c/XZLH79ni83zt0dzbXn+eFDW+o6z LoZw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature:dkim-filter; bh=S2b1u3dekdhwAwja1hG5WRJjOBDIoZhwRWSnFX7DHqI=; b=X3Sxxk/vM/P+edxnn52IF+sy+DPYFc5tSPUXY3d8lcBiI9NaDE3Yqee+rcm5+3sXR+ yHjaesWjsVBwYKasEauyERpA6gxRNgSFasB+zJ0Hj2bXNFMnQN13Rr/IqBVx/QXrcchg wCoLOf151zwoF1jbtaK+EJdt/F4smqFd9mfroOKpCJW06RlwD+C4bC1+4NhwmJTtgG3S ZPz4iFA50Gv4QXgAwxgbJOxmW63BmAbRY/ivwoP6Ix47rSe1ayofxB/EMv/U74sCOMbZ 4c4ojevh4Haqm2sXOA0xnfQTMUnfiB23xg5xZ4qlIyHPd5Z27RxrFq9gkLoiGi3NRqAw fDrg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@broadcom.com header.s=dkimrelay header.b=HRpYGSHC; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=broadcom.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bo20si5290420edb.260.2021.04.28.05.04.24; Wed, 28 Apr 2021 05:04:49 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@broadcom.com header.s=dkimrelay header.b=HRpYGSHC; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=broadcom.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231157AbhD1MD5 (ORCPT + 99 others); Wed, 28 Apr 2021 08:03:57 -0400 Received: from lpdvacalvio01.broadcom.com ([192.19.229.182]:33132 "EHLO relay.smtp-ext.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229645AbhD1MD5 (ORCPT ); Wed, 28 Apr 2021 08:03:57 -0400 Received: from bld-lvn-bcawlan-34.lvn.broadcom.net (bld-lvn-bcawlan-34.lvn.broadcom.net [10.75.138.137]) by relay.smtp-ext.broadcom.com (Postfix) with ESMTP id 1F0217A21; Wed, 28 Apr 2021 05:03:12 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 relay.smtp-ext.broadcom.com 1F0217A21 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com; s=dkimrelay; t=1619611392; bh=sqPprGDrxRqE813qXyK+XiwtTWISQ3rJhLBDakpzkSk=; h=Subject:To:Cc:References:From:Date:In-Reply-To:From; b=HRpYGSHCqxNp7Nx007mpVQ8NfSTtGYjv/vdVYC/fGnrWPKwOyhEO4+4TvrFjgg02x Uw091ENOQIZ5OByL3iWK6KvsF6DOfviY4otN6rI+2S958oYysaO2ymUaOmhr1cLnFQ qt+PRh/HT81IpC2c0u6ny0tnwIe2Xeqfor3grLhM= Received: from [10.230.32.233] (unknown [10.230.32.233]) by bld-lvn-bcawlan-34.lvn.broadcom.net (Postfix) with ESMTPSA id 9EDBB1874BE; Wed, 28 Apr 2021 05:03:09 -0700 (PDT) Subject: Re: [PATCH] brcmfmac: use ISO3166 country code and 0 rev as fallback To: Shawn Guo , Kalle Valo Cc: =?UTF-8?B?UmFmYcWCIE1pxYJlY2tp?= , Arend van Spriel , Franky Lin , Hante Meuleman , Chi-hsien Lin , Wright Feng , Chung-hsien Hsu , linux-wireless@vger.kernel.org, netdev@vger.kernel.org, brcm80211-dev-list.pdl@broadcom.com, SHA-cyfmac-dev-list@infineon.com References: <20210425110200.3050-1-shawn.guo@linaro.org> From: Arend van Spriel Message-ID: Date: Wed, 28 Apr 2021 14:03:07 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.0 MIME-Version: 1.0 In-Reply-To: <20210425110200.3050-1-shawn.guo@linaro.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org On 4/25/2021 1:02 PM, Shawn Guo wrote: > Instead of aborting country code setup in firmware, use ISO3166 country > code and 0 rev as fallback, when country_codes mapping table is not > configured. This fallback saves the country_codes table setup for recent > brcmfmac chipsets/firmwares, which just use ISO3166 code and require no > revision number. I am somewhat surprised, but with the brcm-spinoffs (cypress/infineon and synaptics) my understanding may have been surpassed by reality. Would you happen to know which chipsets/firmwares require only ISO3166 code and no rev? Regards, Arend > Signed-off-by: Shawn Guo > --- > .../broadcom/brcm80211/brcmfmac/cfg80211.c | 17 +++++++++++------ > 1 file changed, 11 insertions(+), 6 deletions(-) > > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > index f4405d7861b6..6cb09c7c37b6 100644 > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c > @@ -7442,18 +7442,23 @@ static s32 brcmf_translate_country_code(struct brcmf_pub *drvr, char alpha2[2], > s32 found_index; > int i; > > - country_codes = drvr->settings->country_codes; > - if (!country_codes) { > - brcmf_dbg(TRACE, "No country codes configured for device\n"); > - return -EINVAL; > - } > - > if ((alpha2[0] == ccreq->country_abbrev[0]) && > (alpha2[1] == ccreq->country_abbrev[1])) { > brcmf_dbg(TRACE, "Country code already set\n"); > return -EAGAIN; > } > > + country_codes = drvr->settings->country_codes; > + if (!country_codes) { > + brcmf_dbg(TRACE, "No country codes configured for device, using ISO3166 code and 0 rev\n"); > + memset(ccreq, 0, sizeof(*ccreq)); > + ccreq->country_abbrev[0] = alpha2[0]; > + ccreq->country_abbrev[1] = alpha2[1]; > + ccreq->ccode[0] = alpha2[0]; > + ccreq->ccode[1] = alpha2[1]; > + return 0; > + } > + > found_index = -1; > for (i = 0; i < country_codes->table_size; i++) { > cc = &country_codes->table[i]; >