[PATCH v3 4/4] staging: rtl8723bs: use mac_pton() in rtw_macaddr_cfg()

Andy Shevchenko andy.shevchenko at gmail.com
Tue Jun 26 17:34:06 UTC 2018


On Tue, Jun 26, 2018 at 11:14 AM, Michael Straube
<straube.linux at gmail.com> wrote:
> Use the mac_pton() helper to convert the mac address string.
>
> The functions key_char2num() and key_2char2num() are not used
> anywhere else and can be removed.
>
> This also has the benefit of validating the input since mac_pton()
> returns false if the string is not valid.
>

FWIW,
Reviewed-by: Andy Shevchenko <andy.shevchenko at gmail.com>

> Signed-off-by: Michael Straube <straube.linux at gmail.com>
> ---
>  .../staging/rtl8723bs/core/rtw_ieee80211.c    | 30 +++----------------
>  .../staging/rtl8723bs/os_dep/ioctl_linux.c    |  3 --
>  2 files changed, 4 insertions(+), 29 deletions(-)
>
> diff --git a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
> index 8af4a89e632f..8e0025e1ff14 100644
> --- a/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
> +++ b/drivers/staging/rtl8723bs/core/rtw_ieee80211.c
> @@ -1137,25 +1137,6 @@ ParseRes rtw_ieee802_11_parse_elems(u8 *start, uint len,
>
>  }
>
> -static u8 key_char2num(u8 ch);
> -static u8 key_char2num(u8 ch)
> -{
> -               if ((ch >= '0') && (ch <= '9'))
> -                       return ch - '0';
> -               else if ((ch >= 'a') && (ch <= 'f'))
> -                       return ch - 'a' + 10;
> -               else if ((ch >= 'A') && (ch <= 'F'))
> -                       return ch - 'A' + 10;
> -               else
> -                       return 0xff;
> -}
> -
> -u8 key_2char2num(u8 hch, u8 lch);
> -u8 key_2char2num(u8 hch, u8 lch)
> -{
> -               return ((key_char2num(hch) << 4) | key_char2num(lch));
> -}
> -
>  void rtw_macaddr_cfg(struct device *dev, u8 *mac_addr)
>  {
>         u8 mac[ETH_ALEN];
> @@ -1166,14 +1147,11 @@ void rtw_macaddr_cfg(struct device *dev, u8 *mac_addr)
>         if (!mac_addr)
>                 return;
>
> -       if (rtw_initmac) {      /*      Users specify the mac address */
> -               int jj, kk;
> -
> -               for (jj = 0, kk = 0; jj < ETH_ALEN; jj++, kk += 3) {
> -                       mac[jj] = key_2char2num(rtw_initmac[kk], rtw_initmac[kk + 1]);
> -               }
> +       if (rtw_initmac && mac_pton(rtw_initmac, mac)) {
> +               /* Users specify the mac address */
>                 ether_addr_copy(mac_addr, mac);
> -       } else{ /*      Use the mac address stored in the Efuse */
> +       } else {
> +               /* Use the mac address stored in the Efuse */
>                 ether_addr_copy(mac, mac_addr);
>         }
>
> diff --git a/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c b/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c
> index 39502156f652..4eb51f45b387 100644
> --- a/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c
> +++ b/drivers/staging/rtl8723bs/os_dep/ioctl_linux.c
> @@ -32,9 +32,6 @@
>  #define WEXT_CSCAN_HOME_DWELL_SECTION  'H'
>  #define WEXT_CSCAN_TYPE_SECTION                'T'
>
> -
> -extern u8 key_2char2num(u8 hch, u8 lch);
> -
>  static u32 rtw_rates[] = {1000000, 2000000, 5500000, 11000000,
>         6000000, 9000000, 12000000, 18000000, 24000000, 36000000, 48000000, 54000000};
>
> --
> 2.18.0
>



-- 
With Best Regards,
Andy Shevchenko


More information about the devel mailing list