/linux-master/drivers/net/ethernet/engleder/ |
H A D | tsnep_selftests.c | 156 struct tc_taprio_qopt_offload *qopt, s64 ms) 159 u64 base_time = ktime_to_ns(qopt->base_time); 164 n = div64_u64(system_time - base_time, qopt->cycle_time); 166 qopt->base_time = ktime_add_ns(qopt->base_time, 167 (n + 1) * qopt->cycle_time); 312 struct tc_taprio_qopt_offload *qopt, s64 ms) 316 retval = tsnep_tc_setup(adapter->netdev, TC_SETUP_QDISC_TAPRIO, qopt); 328 struct tc_taprio_qopt_offload qopt; local 331 memset(&qopt, 155 delay_base_time(struct tsnep_adapter *adapter, struct tc_taprio_qopt_offload *qopt, s64 ms) argument 311 enable_check_taprio(struct tsnep_adapter *adapter, struct tc_taprio_qopt_offload *qopt, s64 ms) argument 340 run_taprio(struct tsnep_adapter *adapter, struct tc_taprio_qopt_offload *qopt, s64 ms) argument 354 struct tc_taprio_qopt_offload *qopt; local 451 struct tc_taprio_qopt_offload *qopt; local 604 struct tc_taprio_qopt_offload *qopt; local [all...] |
H A D | tsnep_tc.c | 11 static int tsnep_validate_gcl(struct tc_taprio_qopt_offload *qopt) argument 16 if (!qopt->cycle_time) 18 if (qopt->num_entries > TSNEP_MAX_GCL_NUM) 21 for (i = 0; i < qopt->num_entries; i++) { 22 if (qopt->entries[i].command != TC_TAPRIO_CMD_SET_GATES) 24 if (qopt->entries[i].gate_mask & ~TSNEP_GCL_MASK) 26 if (qopt->entries[i].interval < TSNEP_GCL_MIN_INTERVAL) 28 cycle_time += qopt->entries[i].interval; 30 if (qopt->cycle_time != cycle_time) 32 if (qopt 87 tsnep_write_gcl(struct tsnep_gcl *gcl, struct tc_taprio_qopt_offload *qopt) argument 318 tsnep_taprio(struct tsnep_adapter *adapter, struct tc_taprio_qopt_offload *qopt) argument [all...] |
/linux-master/net/sched/ |
H A D | sch_mqprio_lib.c | 20 const struct tc_mqprio_qopt *qopt, 26 for (i = 0; i < qopt->num_tc; i++) { 27 unsigned int last = qopt->offset[i] + qopt->count[i]; 29 if (!qopt->count[i]) { 38 if (qopt->offset[i] >= dev->real_num_tx_queues || 42 qopt->count[i], qopt->offset[i], 51 for (j = i + 1; j < qopt->num_tc; j++) { 52 if (intervals_overlap(qopt 19 mqprio_validate_queue_counts(struct net_device *dev, const struct tc_mqprio_qopt *qopt, bool allow_overlapping_txqs, struct netlink_ext_ack *extack) argument 68 mqprio_validate_qopt(struct net_device *dev, struct tc_mqprio_qopt *qopt, bool validate_queue_counts, bool allow_overlapping_txqs, struct netlink_ext_ack *extack) argument 103 mqprio_qopt_reconstruct(struct net_device *dev, struct tc_mqprio_qopt *qopt) argument [all...] |
H A D | sch_mqprio_lib.h | 11 int mqprio_validate_qopt(struct net_device *dev, struct tc_mqprio_qopt *qopt, 16 struct tc_mqprio_qopt *qopt);
|
H A D | sch_fifo.c | 58 struct tc_fifo_qopt_offload qopt; local 63 qopt.command = TC_FIFO_REPLACE; 64 qopt.handle = sch->handle; 65 qopt.parent = sch->parent; 66 dev->netdev_ops->ndo_setup_tc(dev, TC_SETUP_QDISC_FIFO, &qopt); 72 struct tc_fifo_qopt_offload qopt; local 77 qopt.command = TC_FIFO_DESTROY; 78 qopt.handle = sch->handle; 79 qopt.parent = sch->parent; 80 dev->netdev_ops->ndo_setup_tc(dev, TC_SETUP_QDISC_FIFO, &qopt); 85 struct tc_fifo_qopt_offload qopt; local [all...] |
H A D | sch_tbf.c | 146 struct tc_tbf_qopt_offload qopt; local 151 qopt.command = TC_TBF_REPLACE; 152 qopt.handle = sch->handle; 153 qopt.parent = sch->parent; 154 qopt.replace_params.rate = q->rate; 155 qopt.replace_params.max_size = q->max_size; 156 qopt.replace_params.qstats = &sch->qstats; 158 dev->netdev_ops->ndo_setup_tc(dev, TC_SETUP_QDISC_TBF, &qopt); 164 struct tc_tbf_qopt_offload qopt; local 169 qopt 177 struct tc_tbf_qopt_offload qopt; local 356 struct tc_tbf_qopt *qopt; local [all...] |
H A D | sch_etf.c | 44 static inline int validate_input_params(struct tc_etf_qopt *qopt, argument 57 if (qopt->clockid < 0) { 62 if (qopt->clockid != CLOCK_TAI) { 67 if (qopt->delta < 0) { 349 struct tc_etf_qopt *qopt; local 368 qopt = nla_data(tb[TCA_ETF_PARMS]); 371 qopt->delta, qopt->clockid, 372 OFFLOAD_IS_ON(qopt) ? "on" : "off", 373 DEADLINE_MODE_IS_ON(qopt) [all...] |
H A D | sch_prio.c | 140 static int prio_offload(struct Qdisc *sch, struct tc_prio_qopt *qopt) argument 151 if (qopt) { 153 opt.replace_params.bands = qopt->bands; 154 memcpy(&opt.replace_params.priomap, qopt->priomap, 182 struct tc_prio_qopt *qopt; local 184 if (nla_len(opt) < sizeof(*qopt)) 186 qopt = nla_data(opt); 188 if (qopt->bands > TCQ_PRIO_BANDS || qopt->bands < TCQ_MIN_PRIO_BANDS) 192 if (qopt [all...] |
H A D | sch_mqprio.c | 35 const struct tc_mqprio_qopt *qopt, 41 .qopt = *qopt, 58 for (i = 0; i < mqprio.qopt.num_tc; i++) 61 for (i = 0; i < mqprio.qopt.num_tc; i++) 75 priv->hw_offload = mqprio.qopt.hw; 115 static int mqprio_parse_opt(struct net_device *dev, struct tc_mqprio_qopt *qopt, argument 121 /* Limit qopt->hw to maximum supported offload value. Drivers have 125 if (qopt->hw > TC_MQPRIO_HW_OFFLOAD_MAX) 126 qopt 34 mqprio_enable_offload(struct Qdisc *sch, const struct tc_mqprio_qopt *qopt, struct netlink_ext_ack *extack) argument 244 mqprio_parse_nlattr(struct Qdisc *sch, struct tc_mqprio_qopt *qopt, struct nlattr *opt, struct netlink_ext_ack *extack) argument 355 struct tc_mqprio_qopt *qopt = NULL; local [all...] |
H A D | sch_ets.c | 109 struct tc_ets_qopt_offload qopt; local 121 qopt.command = TC_ETS_REPLACE; 122 qopt.handle = sch->handle; 123 qopt.parent = sch->parent; 124 qopt.replace_params.bands = q->nbands; 125 qopt.replace_params.qstats = &sch->qstats; 126 memcpy(&qopt.replace_params.priomap, 139 qopt.replace_params.quanta[i] = quantum; 140 qopt.replace_params.weights[i] = weight; 143 dev->netdev_ops->ndo_setup_tc(dev, TC_SETUP_QDISC_ETS, &qopt); 149 struct tc_ets_qopt_offload qopt; local 165 struct tc_ets_qopt_offload qopt; local 179 struct tc_ets_qopt_offload qopt; local [all...] |
H A D | sch_netem.c | 963 struct tc_netem_qopt *qopt; local 968 qopt = nla_data(opt); 969 ret = parse_attr(tb, TCA_NETEM_MAX, opt, netem_policy, sizeof(*qopt)); 1005 sch->limit = qopt->limit; 1007 q->latency = PSCHED_TICKS2NS(qopt->latency); 1008 q->jitter = PSCHED_TICKS2NS(qopt->jitter); 1009 q->limit = qopt->limit; 1010 q->gap = qopt->gap; 1012 q->loss = qopt->loss; 1013 q->duplicate = qopt 1150 struct tc_netem_qopt qopt; local [all...] |
H A D | sch_cbs.c | 367 struct tc_cbs_qopt *qopt; local 380 qopt = nla_data(tb[TCA_CBS_PARMS]); 382 if (!qopt->offload) { 386 err = cbs_enable_offload(dev, q, qopt, extack); 392 q->hicredit = qopt->hicredit; 393 q->locredit = qopt->locredit; 394 q->idleslope = qopt->idleslope * BYTES_PER_KBIT; 395 q->sendslope = qopt->sendslope * BYTES_PER_KBIT; 396 q->offload = qopt->offload;
|
H A D | sch_multiq.c | 175 struct tc_multiq_qopt *qopt; local 181 if (nla_len(opt) < sizeof(*qopt)) 184 qopt = nla_data(opt); 186 qopt->bands = qdisc_dev(sch)->real_num_tx_queues; 194 q->bands = qopt->bands;
|
/linux-master/drivers/net/ethernet/microchip/lan966x/ |
H A D | lan966x_cbs.c | 6 struct tc_cbs_qopt_offload *qopt) 13 if (qopt->idleslope <= 0 || 14 qopt->sendslope >= 0 || 15 qopt->locredit >= qopt->hicredit) 18 se_idx = SE_IDX_QUEUE + port->chip_port * NUM_PRIO_QUEUES + qopt->queue; 19 cir = qopt->idleslope; 20 cbs = (qopt->idleslope - qopt->sendslope) * 21 (qopt 5 lan966x_cbs_add(struct lan966x_port *port, struct tc_cbs_qopt_offload *qopt) argument 51 lan966x_cbs_del(struct lan966x_port *port, struct tc_cbs_qopt_offload *qopt) argument [all...] |
H A D | lan966x_tc.c | 13 u8 num_tc = mqprio->qopt.num_tc; 15 mqprio->qopt.hw = TC_MQPRIO_HW_OFFLOAD_TCS; 35 struct tc_tbf_qopt_offload *qopt) 37 switch (qopt->command) { 39 return lan966x_tbf_add(port, qopt); 41 return lan966x_tbf_del(port, qopt); 50 struct tc_cbs_qopt_offload *qopt) 52 return qopt->enable ? lan966x_cbs_add(port, qopt) : 53 lan966x_cbs_del(port, qopt); 34 lan966x_tc_setup_qdisc_tbf(struct lan966x_port *port, struct tc_tbf_qopt_offload *qopt) argument 49 lan966x_tc_setup_qdisc_cbs(struct lan966x_port *port, struct tc_cbs_qopt_offload *qopt) argument 56 lan966x_tc_setup_qdisc_ets(struct lan966x_port *port, struct tc_ets_qopt_offload *qopt) argument [all...] |
H A D | lan966x_tbf.c | 6 struct tc_tbf_qopt_offload *qopt) 9 bool root = qopt->parent == TC_H_ROOT; 15 queue = TC_H_MIN(qopt->parent) - 1; 25 cir = div_u64(qopt->replace_params.rate.rate_bytes_ps, 1000) * 8; 26 cbs = qopt->replace_params.max_size; 56 struct tc_tbf_qopt_offload *qopt) 59 bool root = qopt->parent == TC_H_ROOT; 64 queue = TC_H_MIN(qopt->parent) - 1; 5 lan966x_tbf_add(struct lan966x_port *port, struct tc_tbf_qopt_offload *qopt) argument 55 lan966x_tbf_del(struct lan966x_port *port, struct tc_tbf_qopt_offload *qopt) argument
|
H A D | lan966x_taprio.c | 173 struct tc_taprio_qopt_offload *qopt, 219 static int lan966x_taprio_check(struct tc_taprio_qopt_offload *qopt) argument 225 if (qopt->cycle_time_extension) 231 if (qopt->num_entries > LAN966X_TAPRIO_NUM_GCL) 235 if (qopt->cycle_time < LAN966X_TAPRIO_MIN_CYCLE_TIME_NS || 236 qopt->cycle_time > LAN966X_TAPRIO_MAX_CYCLE_TIME_NS) 239 for (i = 0; i < qopt->num_entries; ++i) { 240 struct tc_taprio_sched_entry *entry = &qopt->entries[i]; 249 if (qopt->entries[i].command != TC_TAPRIO_CMD_SET_GATES) 252 total_time += qopt 172 lan966x_taprio_find_list(struct lan966x_port *port, struct tc_taprio_qopt_offload *qopt, int *new_list, int *obs_list) argument 327 lan966x_taprio_gcl_setup(struct lan966x_port *port, struct tc_taprio_qopt_offload *qopt, int list) argument 441 lan966x_taprio_add(struct lan966x_port *port, struct tc_taprio_qopt_offload *qopt) argument [all...] |
H A D | lan966x_ets.c | 19 struct tc_ets_qopt_offload *qopt) 29 if (qopt->parent != TC_H_ROOT) 32 params = &qopt->replace_params; 78 struct tc_ets_qopt_offload *qopt) 18 lan966x_ets_add(struct lan966x_port *port, struct tc_ets_qopt_offload *qopt) argument 77 lan966x_ets_del(struct lan966x_port *port, struct tc_ets_qopt_offload *qopt) argument
|
H A D | lan966x_main.h | 647 struct tc_taprio_qopt_offload *qopt); 652 struct tc_tbf_qopt_offload *qopt); 654 struct tc_tbf_qopt_offload *qopt); 657 struct tc_cbs_qopt_offload *qopt); 659 struct tc_cbs_qopt_offload *qopt); 662 struct tc_ets_qopt_offload *qopt); 664 struct tc_ets_qopt_offload *qopt);
|
/linux-master/drivers/net/ethernet/microchip/sparx5/ |
H A D | sparx5_tc.c | 79 m->qopt.hw = TC_MQPRIO_HW_OFFLOAD_TCS; 81 if (m->qopt.num_tc == 0) 84 return sparx5_tc_mqprio_add(ndev, m->qopt.num_tc); 88 struct tc_tbf_qopt_offload *qopt) 93 sparx5_tc_get_layer_and_idx(qopt->parent, port->portno, &layer, 96 switch (qopt->command) { 98 return sparx5_tc_tbf_add(port, &qopt->replace_params, layer, 112 struct tc_ets_qopt_offload *qopt) 115 &qopt->replace_params; 120 if (qopt 87 sparx5_tc_setup_qdisc_tbf(struct net_device *ndev, struct tc_tbf_qopt_offload *qopt) argument 111 sparx5_tc_setup_qdisc_ets(struct net_device *ndev, struct tc_ets_qopt_offload *qopt) argument [all...] |
/linux-master/drivers/net/ethernet/stmicro/stmmac/ |
H A D | stmmac_tc.c | 343 struct tc_cbs_qopt_offload *qopt) 346 u32 queue = qopt->queue; 385 if (mode_to_use == MTL_QUEUE_DCB && qopt->enable) { 391 } else if (!qopt->enable) { 401 value = div_s64(qopt->idleslope * 1024ll * ptr, speed_div); 404 value = div_s64(-qopt->sendslope * 1024ll * ptr, speed_div); 407 value = qopt->hicredit * 1024ll * 8; 410 value = qopt->locredit * 1024ll * 8; 423 queue, qopt->sendslope, qopt 342 tc_setup_cbs(struct stmmac_priv *priv, struct tc_cbs_qopt_offload *qopt) argument 918 tc_taprio_map_maxsdu_txq(struct stmmac_priv *priv, struct tc_taprio_qopt_offload *qopt) argument 940 tc_taprio_configure(struct stmmac_priv *priv, struct tc_taprio_qopt_offload *qopt) argument 1125 tc_taprio_stats(struct stmmac_priv *priv, struct tc_taprio_qopt_offload *qopt) argument 1140 tc_taprio_queue_stats(struct stmmac_priv *priv, struct tc_taprio_qopt_offload *qopt) argument 1153 tc_setup_taprio(struct stmmac_priv *priv, struct tc_taprio_qopt_offload *qopt) argument 1176 tc_setup_etf(struct stmmac_priv *priv, struct tc_etf_qopt_offload *qopt) argument [all...] |
/linux-master/drivers/net/ethernet/chelsio/cxgb4/ |
H A D | cxgb4_tc_mqprio.c | 19 if (!mqprio->qopt.num_tc) 22 if (mqprio->qopt.hw != TC_MQPRIO_HW_OFFLOAD_TCS) { 31 } else if (mqprio->qopt.num_tc > adap->params.nsched_cls) { 47 for (i = 0; i < mqprio->qopt.num_tc; i++) { 48 qoffset = max_t(u16, mqprio->qopt.offset[i], qoffset); 49 qcount += mqprio->qopt.count[i]; 51 start_a = mqprio->qopt.offset[i]; 52 end_a = start_a + mqprio->qopt.count[i] - 1; 53 for (j = i + 1; j < mqprio->qopt.num_tc; j++) { 54 start_b = mqprio->qopt [all...] |
/linux-master/drivers/net/ethernet/hisilicon/hns3/hns3pf/ |
H A D | hclge_dcb.c | 519 if (!mqprio_qopt->qopt.num_tc) { 520 mqprio_qopt->qopt.num_tc = 1; 524 ret = hclge_dcb_common_validate(hdev, mqprio_qopt->qopt.num_tc, 525 mqprio_qopt->qopt.prio_tc_map); 529 for (i = 0; i < mqprio_qopt->qopt.num_tc; i++) { 530 if (!is_power_of_2(mqprio_qopt->qopt.count[i])) { 532 "qopt queue count must be power of 2\n"); 536 if (mqprio_qopt->qopt.count[i] > hdev->pf_rss_size_max) { 538 "qopt queue count should be no more than %u\n", 543 if (mqprio_qopt->qopt [all...] |
/linux-master/drivers/net/ethernet/aquantia/atlantic/ |
H A D | aq_main.c | 421 err = aq_validate_mqprio_opt(aq_nic, mqprio, mqprio->qopt.num_tc); 425 for (i = 0; i < mqprio->qopt.num_tc; i++) { 441 return aq_nic_setup_tc_mqprio(aq_nic, mqprio->qopt.num_tc, 442 mqprio->qopt.prio_tc_map);
|
/linux-master/drivers/net/ethernet/ti/ |
H A D | am65-cpsw-qos.c | 79 for (tc = 0; tc < mqprio->qopt.num_tc; tc++) { 129 num_tc = mqprio->qopt.num_tc; 208 struct tc_mqprio_qopt *qopt = &mqprio->qopt; local 210 u8 num_tc = qopt->num_tc; 251 for (i = qopt->offset[tc]; i < qopt->offset[tc] + qopt->count[tc]; i++) 254 count = qopt->count[tc]; 255 offset = qopt [all...] |