diff options
-rw-r--r-- | drivers/net/bnx2x/bnx2x_cmn.h | 13 |
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 */ |