[Intel-wired-lan] [PATCH v2 03/13] ixgbevf: make use of BIT() macro to avoid shift of signed values

Jeff Kirsher jeffrey.t.kirsher at intel.com
Thu Apr 14 04:22:32 UTC 2016


On Wed, 2016-04-13 at 16:08 -0700, Jacob Keller wrote:
> Also cleanup a case where we're bit shifting a value into place, and
> use
> an unsigned constant. Make use of the unsigned postfix in places
> where
> BIT() macro is not appropriate.
> 
> Signed-off-by: Jacob Keller <jacob.e.keller at intel.com>
> ---
>  drivers/net/ethernet/intel/ixgbevf/defines.h      | 22 +++++++++++
> -----------
>  drivers/net/ethernet/intel/ixgbevf/ethtool.c      |  3 ++-
>  drivers/net/ethernet/intel/ixgbevf/ixgbevf.h      |  8 ++++----
>  drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 18 +++++++++--
> -------
>  4 files changed, 26 insertions(+), 25 deletions(-)
> 
> diff --git a/drivers/net/ethernet/intel/ixgbevf/defines.h
> b/drivers/net/ethernet/intel/ixgbevf/defines.h
> index 58434584b16d..74901f7ef391 100644
> --- a/drivers/net/ethernet/intel/ixgbevf/defines.h
> +++ b/drivers/net/ethernet/intel/ixgbevf/defines.h
> @@ -74,7 +74,7 @@ typedef u32 ixgbe_link_speed;
>  #define IXGBE_RXDCTL_RLPML_EN  0x00008000
>  
>  /* DCA Control */
> -#define IXGBE_DCA_TXCTRL_TX_WB_RO_EN (1 << 11) /* Tx Desc writeback
> RO bit */
> +#define IXGBE_DCA_TXCTRL_TX_WB_RO_EN BIT(11) /* Tx Desc writeback RO
> bit */
>  
>  /* PSRTYPE bit definitions */
>  #define IXGBE_PSRTYPE_TCPHDR   0x00000010
> @@ -296,16 +296,16 @@ struct ixgbe_adv_tx_context_desc {
>  #define IXGBE_TXDCTL_SWFLSH            0x04000000 /* Tx Desc. wr-bk
> flushing */
>  #define IXGBE_TXDCTL_WTHRESH_SHIFT     16         /* shift to
> WTHRESH bits */
>  
> -#define IXGBE_DCA_RXCTRL_DESC_DCA_EN   (1 << 5)  /* Rx Desc enable
> */
> -#define IXGBE_DCA_RXCTRL_HEAD_DCA_EN   (1 << 6)  /* Rx Desc header
> ena */
> -#define IXGBE_DCA_RXCTRL_DATA_DCA_EN   (1 << 7)  /* Rx Desc payload
> ena */
> -#define IXGBE_DCA_RXCTRL_DESC_RRO_EN   (1 << 9)  /* Rx rd Desc Relax
> Order */
> -#define IXGBE_DCA_RXCTRL_DATA_WRO_EN   (1 << 13) /* Rx wr data Relax
> Order */
> -#define IXGBE_DCA_RXCTRL_HEAD_WRO_EN   (1 << 15) /* Rx wr header RO
> */
> +#define IXGBE_DCA_RXCTRL_DESC_DCA_EN   BIT(5)  /* Rx Desc enable */
> +#define IXGBE_DCA_RXCTRL_HEAD_DCA_EN   BIT(6)  /* Rx Desc header ena
> */
> +#define IXGBE_DCA_RXCTRL_DATA_DCA_EN   BIT(7)  /* Rx Desc payload
> ena */
> +#define IXGBE_DCA_RXCTRL_DESC_RRO_EN   BIT(9)  /* Rx rd Desc Relax
> Order */
> +#define IXGBE_DCA_RXCTRL_DATA_WRO_EN   BIT(13) /* Rx wr data Relax
> Order */
> +#define IXGBE_DCA_RXCTRL_HEAD_WRO_EN   BIT(15) /* Rx wr header RO */
>  
> -#define IXGBE_DCA_TXCTRL_DESC_DCA_EN   (1 << 5)  /* DCA Tx Desc
> enable */
> -#define IXGBE_DCA_TXCTRL_DESC_RRO_EN   (1 << 9)  /* Tx rd Desc Relax
> Order */
> -#define IXGBE_DCA_TXCTRL_DESC_WRO_EN   (1 << 11) /* Tx Desc
> writeback RO bit */
> -#define IXGBE_DCA_TXCTRL_DATA_RRO_EN   (1 << 13) /* Tx rd data Relax
> Order */
> +#define IXGBE_DCA_TXCTRL_DESC_DCA_EN   BIT(5)  /* DCA Tx Desc enable
> */
> +#define IXGBE_DCA_TXCTRL_DESC_RRO_EN   BIT(9)  /* Tx rd Desc Relax
> Order */
> +#define IXGBE_DCA_TXCTRL_DESC_WRO_EN   BIT(11) /* Tx Desc writeback
> RO bit */
> +#define IXGBE_DCA_TXCTRL_DATA_RRO_EN   BIT(13) /* Tx rd data Relax
> Order */
>  
>  #endif /* _IXGBEVF_DEFINES_H_ */
> diff --git a/drivers/net/ethernet/intel/ixgbevf/ethtool.c
> b/drivers/net/ethernet/intel/ixgbevf/ethtool.c
> index 64d5c6e9343e..4cadf80e5b87 100644
> --- a/drivers/net/ethernet/intel/ixgbevf/ethtool.c
> +++ b/drivers/net/ethernet/intel/ixgbevf/ethtool.c
> @@ -166,7 +166,8 @@ static void ixgbevf_get_regs(struct net_device
> *netdev,
>  
>         memset(p, 0, regs_len);
>  
> -       regs->version = (1 << 24) | hw->revision_id << 16 | hw-
> >device_id;
> +       /* generate a number suitable for ethtool's register version
> */
> +       regs->version = (1u << 24) | (hw->revision_id << 16) | hw-
> >device_id

I guessing you did not bother compile testing because it is pretty
obvious your missing a ';' in the line above.  I have added the missing
semi-colon so that validation can move forward.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part
URL: <http://lists.osuosl.org/pipermail/intel-wired-lan/attachments/20160413/ad6bc878/attachment.asc>


More information about the Intel-wired-lan mailing list