46 int min_percent = 100;
47 int min_credit, multiplier;
54 if (bw[i] < min_percent && bw[i])
58 multiplier = (min_credit / min_percent) + 1;
89 int min_percent = 100;
92 u32 credit_refill = 0;
94 u16 link_percentage = 0;
98 if (dcb_config ==
NULL) {
112 link_percentage = (link_percentage * bw_percent) / 100;
114 if (link_percentage && link_percentage < min_percent)
115 min_percent = link_percentage;
126 min_multiplier = (min_credit / min_percent) + 1;
135 link_percentage = (link_percentage * bw_percent) / 100;
143 credit_refill =
min(link_percentage * min_multiplier,
148 credit_max = (link_percentage *
MAX_CREDIT) / 100;
155 if (credit_max && (credit_max < min_credit))
156 credit_max = min_credit;
199 refill[tc] = tc_config[tc].
path[direction].data_credits_refill;
218 bwgid[tc] = tc_config[tc].
path[direction].bwg_id;
228 ptype[tc] = tc_config[tc].
path[direction].prio_type;
234 u8 prio_mask = 1 <<
up;
246 for (tc--;
tc; tc--) {
247 if (prio_mask & tc_config[tc].
path[direction].up_to_tc_bitmap)
288 switch (hw->
mac.type) {
296 bwgid, ptype, prio_tc);
309 switch (hw->
mac.type) {
351 ixgbe_ieee_credits(ets->
tc_tx_bw, refill, max, max_frame);
353 bwg_id, prio_type, ets->
prio_tc);
358 u8 *prio_type,
u8 *prio_tc)
360 switch (hw->
mac.type) {
372 bwg_id, prio_type, prio_tc);