diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2017-10-21 00:39:47 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-10-23 05:06:47 +0300 |
commit | ba0696c22e7c5b7394283a0dbef1462252d1606f (patch) | |
tree | 075469fb5512308d18c70e963f3f20e70e9a569f /drivers/net/dsa/bcm_sf2_regs.h | |
parent | 4daa70cfb69186a4fe70fa2fefc271a41ece5085 (diff) | |
download | linux-ba0696c22e7c5b7394283a0dbef1462252d1606f.tar.xz |
net: dsa: bcm_sf2: Add support for IPv6 CFP rules
Inserting IPv6 CFP rules complicates the code a little bit in that we
need to insert two rules side by side and chain them to match a full
IPv6 tuple (src, dst IPv6 + port + protocol).
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/bcm_sf2_regs.h')
-rw-r--r-- | drivers/net/dsa/bcm_sf2_regs.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/dsa/bcm_sf2_regs.h b/drivers/net/dsa/bcm_sf2_regs.h index 263e4c758795..93c600d1f732 100644 --- a/drivers/net/dsa/bcm_sf2_regs.h +++ b/drivers/net/dsa/bcm_sf2_regs.h @@ -313,6 +313,7 @@ enum bcm_sf2_reg_offs { #define SLICE_VALID 3 #define SLICE_NUM_SHIFT 2 #define SLICE_NUM(x) ((x) << SLICE_NUM_SHIFT) +#define SLICE_NUM_MASK 0xff #define CORE_CFP_MASK_PORT_0 0x280c0 @@ -408,6 +409,12 @@ enum bcm_sf2_reg_offs { #define CFG_UDF_EOL2 (2 << CFG_UDF_OFFSET_BASE_SHIFT) #define CFG_UDF_EOL3 (3 << CFG_UDF_OFFSET_BASE_SHIFT) +/* IPv6 slices */ +#define CORE_UDF_0_B_0_8_PORT_0 0x28500 + +/* IPv6 chained slices */ +#define CORE_UDF_0_D_0_11_PORT_0 0x28680 + /* Number of slices for IPv4, IPv6 and non-IP */ #define UDF_NUM_SLICES 4 #define UDFS_PER_SLICE 9 |