diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2017-10-21 00:39:43 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-10-23 05:06:47 +0300 |
commit | 39cdd34989cf9fb62935041727bf885136f720a4 (patch) | |
tree | b51de3fa2ce9be8d2b66f8186301599e9a5034a5 /drivers | |
parent | 33ad61d0f799656e8987e9c80e6e15151bb857f3 (diff) | |
download | linux-39cdd34989cf9fb62935041727bf885136f720a4.tar.xz |
net: dsa: bcm_sf2: Use existing shift/masks
Instead of open coding the shift for the IP protocol, IP fragment bit
etc. define and/or use existing constants to that end.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/dsa/bcm_sf2_cfp.c | 7 | ||||
-rw-r--r-- | drivers/net/dsa/bcm_sf2_regs.h | 5 |
2 files changed, 8 insertions, 4 deletions
diff --git a/drivers/net/dsa/bcm_sf2_cfp.c b/drivers/net/dsa/bcm_sf2_cfp.c index 94649e1481ec..cef4b3d4df36 100644 --- a/drivers/net/dsa/bcm_sf2_cfp.c +++ b/drivers/net/dsa/bcm_sf2_cfp.c @@ -189,7 +189,8 @@ static int bcm_sf2_cfp_rule_set(struct dsa_switch *ds, int port, * Reserved [1] * UDF_Valid[8] [0] */ - core_writel(priv, v4_spec->tos << 16 | ip_proto << 8 | ip_frag << 7, + core_writel(priv, v4_spec->tos << IPTOS_SHIFT | + ip_proto << IPPROTO_SHIFT | ip_frag << IP_FRAG_SHIFT, CORE_CFP_DATA_PORT(6)); /* UDF_Valid[7:0] [31:24] @@ -425,8 +426,8 @@ static int bcm_sf2_cfp_rule_get(struct bcm_sf2_priv *priv, int port, return -EINVAL; } - v4_spec->tos = (reg >> 16) & IPPROTO_MASK; - nfc->fs.m_ext.data[0] = cpu_to_be32((reg >> 7) & 1); + v4_spec->tos = (reg >> IPTOS_SHIFT) & IPTOS_MASK; + nfc->fs.m_ext.data[0] = cpu_to_be32((reg >> IP_FRAG_SHIFT) & 1); reg = core_readl(priv, CORE_CFP_DATA_PORT(3)); /* src port [15:8] */ diff --git a/drivers/net/dsa/bcm_sf2_regs.h b/drivers/net/dsa/bcm_sf2_regs.h index d1596dfca323..61bc9729383f 100644 --- a/drivers/net/dsa/bcm_sf2_regs.h +++ b/drivers/net/dsa/bcm_sf2_regs.h @@ -302,9 +302,12 @@ enum bcm_sf2_reg_offs { /* UDF_DATA7 */ #define L3_FRAMING_SHIFT 24 #define L3_FRAMING_MASK (0x3 << L3_FRAMING_SHIFT) +#define IPTOS_SHIFT 16 +#define IPTOS_MASK 0xff #define IPPROTO_SHIFT 8 #define IPPROTO_MASK (0xff << IPPROTO_SHIFT) -#define IP_FRAG (1 << 7) +#define IP_FRAG_SHIFT 7 +#define IP_FRAG (1 << IP_FRAG_SHIFT) /* UDF_DATA0 */ #define SLICE_VALID 3 |