aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/net/bnx2x/bnx2x_cmn.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/net/bnx2x/bnx2x_cmn.h b/drivers/net/bnx2x/bnx2x_cmn.h
index ef37b98d614..775fef031ad 100644
--- a/drivers/net/bnx2x/bnx2x_cmn.h
+++ b/drivers/net/bnx2x/bnx2x_cmn.h
@@ -1041,12 +1041,23 @@ static inline void storm_memset_cmng(struct bnx2x *bp,
1041 struct cmng_struct_per_port *cmng, 1041 struct cmng_struct_per_port *cmng,
1042 u8 port) 1042 u8 port)
1043{ 1043{
1044 size_t size = sizeof(struct cmng_struct_per_port); 1044 size_t size =
1045 sizeof(struct rate_shaping_vars_per_port) +
1046 sizeof(struct fairness_vars_per_port) +
1047 sizeof(struct safc_struct_per_port) +
1048 sizeof(struct pfc_struct_per_port);
1045 1049
1046 u32 addr = BAR_XSTRORM_INTMEM + 1050 u32 addr = BAR_XSTRORM_INTMEM +
1047 XSTORM_CMNG_PER_PORT_VARS_OFFSET(port); 1051 XSTORM_CMNG_PER_PORT_VARS_OFFSET(port);
1048 1052
1049 __storm_memset_struct(bp, addr, size, (u32 *)cmng); 1053 __storm_memset_struct(bp, addr, size, (u32 *)cmng);
1054
1055 addr += size + 4 /* SKIP DCB+LLFC */;
1056 size = sizeof(struct cmng_struct_per_port) -
1057 size /* written */ - 4 /*skipped*/;
1058
1059 __storm_memset_struct(bp, addr, size,
1060 (u32 *)(cmng->traffic_type_to_priority_cos));
1050} 1061}
1051 1062
1052/* HW Lock for shared dual port PHYs */ 1063/* HW Lock for shared dual port PHYs */