Re: [PATCH 2/2] brcmfmac: support parse country code map from DT

From: Shawn Guo
Date: Tue Apr 13 2021 - 03:46:38 EST


On Mon, Apr 12, 2021 at 10:22:47AM +0200, Arend van Spriel wrote:
> On 08-04-2021 13:30, Shawn Guo wrote:
> > With any regulatory domain requests coming from either user space or
> > 802.11 IE (Information Element), the country is coded in ISO3166
> > standard. It needs to be translated to firmware country code and
> > revision with the mapping info in settings->country_codes table.
> > Support populate country_codes table by parsing the mapping from DT.
>
> one more thing though...
>
> > Signed-off-by: Shawn Guo <shawn.guo@xxxxxxxxxx>
> > ---
> > .../wireless/broadcom/brcm80211/brcmfmac/of.c | 53 +++++++++++++++++++
> > 1 file changed, 53 insertions(+)
> >
> > diff --git a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c
> > index a7554265f95f..ea5c7f434c2c 100644
> > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c
> > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/of.c
> > @@ -12,12 +12,61 @@
> > #include "common.h"
> > #include "of.h"
> > +static int brcmf_of_get_country_codes(struct device *dev,
> > + struct brcmf_mp_device *settings)
> > +{
>
> [...]
>
> > + /* String format e.g. US-Q2-86 */
> > + strncpy(cce->iso3166, map, 2);
> > + strncpy(cce->cc, map + 3, 2);
> > +
> > + ret = kstrtos32(map + 6, 10, &cce->rev);
> > + if (ret < 0)
> > + dev_warn(dev, "failed to read rev of map %s: %d",
> > + cce->iso3166, ret);
>
> Do we need a stronger validation of the string format, eg. use sscanf or
> strstr. Would also be nice to have brcmf_dbg(INFO, ...) here to print the
> entry.

Sounds good to me for both comments.

Shawn