[PATCH 4/4] staging: wlan-ng: use GENMASK macro in two bitwise operations in prism2sta.c

Dan Carpenter dan.carpenter at oracle.com
Tue Nov 15 12:34:49 UTC 2016


On Thu, Nov 10, 2016 at 07:16:42PM +0100, Sergio Paracuellos wrote:
> This patch replace actual mask stuff using BIT macros with 
> or operators to make use of GENMASK macro which simplifies 
> code clearity and readibility.
> 
> It applies for two bitwise operations included in prism2sta.c source file.
> 
> Signed-off-by: Sergio Paracuellos <sergio.paracuellos at gmail.com>
> ---
>  drivers/staging/wlan-ng/prism2sta.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/staging/wlan-ng/prism2sta.c b/drivers/staging/wlan-ng/prism2sta.c
> index 351f08d..984804b 100644
> --- a/drivers/staging/wlan-ng/prism2sta.c
> +++ b/drivers/staging/wlan-ng/prism2sta.c
> @@ -654,8 +654,8 @@ static int prism2sta_getcardinfo(struct wlandevice *wlandev)
>  	hw->ident_sta_fw.minor = le16_to_cpu(hw->ident_sta_fw.minor);
>  
>  	/* strip out the 'special' variant bits */
> -	hw->mm_mods = hw->ident_sta_fw.variant & (BIT(14) | BIT(15));
> -	hw->ident_sta_fw.variant &= ~((u16)(BIT(14) | BIT(15)));
> +	hw->mm_mods = hw->ident_sta_fw.variant & GENMASK(15, 14);
> +	hw->ident_sta_fw.variant &= ~((u16)GENMASK(15, 14));

The cast is a no-op because of type promotion.  It gets cast to u16 then
immediately recast to int before the bitwise negate op.

regards,
dan carpenter




More information about the devel mailing list