| /Linux-v5.4/net/sched/ |
| D | sch_mqprio.c | 62 static int mqprio_parse_opt(struct net_device *dev, struct tc_mqprio_qopt *qopt) in mqprio_parse_opt() argument 67 if (qopt->num_tc > TC_MAX_QUEUE) in mqprio_parse_opt() 72 if (qopt->prio_tc_map[i] >= qopt->num_tc) in mqprio_parse_opt() 80 if (qopt->hw > TC_MQPRIO_HW_OFFLOAD_MAX) in mqprio_parse_opt() 81 qopt->hw = TC_MQPRIO_HW_OFFLOAD_MAX; in mqprio_parse_opt() 88 if (qopt->hw) in mqprio_parse_opt() 91 for (i = 0; i < qopt->num_tc; i++) { in mqprio_parse_opt() 92 unsigned int last = qopt->offset[i] + qopt->count[i]; in mqprio_parse_opt() 97 if (qopt->offset[i] >= dev->real_num_tx_queues || in mqprio_parse_opt() 98 !qopt->count[i] || in mqprio_parse_opt() [all …]
|
| D | sch_etf.c | 44 static inline int validate_input_params(struct tc_etf_qopt *qopt, in validate_input_params() argument 57 if (qopt->clockid < 0) { in validate_input_params() 62 if (qopt->clockid != CLOCK_TAI) { in validate_input_params() 67 if (qopt->delta < 0) { in validate_input_params() 351 struct tc_etf_qopt *qopt; in etf_init() local 370 qopt = nla_data(tb[TCA_ETF_PARMS]); in etf_init() 373 qopt->delta, qopt->clockid, in etf_init() 374 OFFLOAD_IS_ON(qopt) ? "on" : "off", in etf_init() 375 DEADLINE_MODE_IS_ON(qopt) ? "on" : "off"); in etf_init() 377 err = validate_input_params(qopt, extack); in etf_init() [all …]
|
| D | sch_prio.c | 142 static int prio_offload(struct Qdisc *sch, struct tc_prio_qopt *qopt) in prio_offload() argument 153 if (qopt) { in prio_offload() 155 opt.replace_params.bands = qopt->bands; in prio_offload() 156 memcpy(&opt.replace_params.priomap, qopt->priomap, in prio_offload() 184 struct tc_prio_qopt *qopt; in prio_tune() local 186 if (nla_len(opt) < sizeof(*qopt)) in prio_tune() 188 qopt = nla_data(opt); in prio_tune() 190 if (qopt->bands > TCQ_PRIO_BANDS || qopt->bands < 2) in prio_tune() 194 if (qopt->priomap[i] >= qopt->bands) in prio_tune() 199 for (i = oldbands; i < qopt->bands; i++) { in prio_tune() [all …]
|
| D | sch_tbf.c | 298 struct tc_tbf_qopt *qopt; in tbf_change() local 315 qopt = nla_data(tb[TCA_TBF_PARMS]); in tbf_change() 316 if (qopt->rate.linklayer == TC_LINKLAYER_UNAWARE) in tbf_change() 317 qdisc_put_rtab(qdisc_get_rtab(&qopt->rate, in tbf_change() 321 if (qopt->peakrate.linklayer == TC_LINKLAYER_UNAWARE) in tbf_change() 322 qdisc_put_rtab(qdisc_get_rtab(&qopt->peakrate, in tbf_change() 326 buffer = min_t(u64, PSCHED_TICKS2NS(qopt->buffer), ~0U); in tbf_change() 327 mtu = min_t(u64, PSCHED_TICKS2NS(qopt->mtu), ~0U); in tbf_change() 331 psched_ratecfg_precompute(&rate, &qopt->rate, rate64); in tbf_change() 340 if (qopt->peakrate.rate) { in tbf_change() [all …]
|
| D | sch_cbs.c | 356 struct tc_cbs_qopt *qopt; in cbs_change() local 369 qopt = nla_data(tb[TCA_CBS_PARMS]); in cbs_change() 371 if (!qopt->offload) { in cbs_change() 375 err = cbs_enable_offload(dev, q, qopt, extack); in cbs_change() 381 q->hicredit = qopt->hicredit; in cbs_change() 382 q->locredit = qopt->locredit; in cbs_change() 383 q->idleslope = qopt->idleslope * BYTES_PER_KBIT; in cbs_change() 384 q->sendslope = qopt->sendslope * BYTES_PER_KBIT; in cbs_change() 385 q->offload = qopt->offload; in cbs_change()
|
| D | sch_netem.c | 955 struct tc_netem_qopt *qopt; in netem_change() local 963 qopt = nla_data(opt); in netem_change() 964 ret = parse_attr(tb, TCA_NETEM_MAX, opt, netem_policy, sizeof(*qopt)); in netem_change() 996 sch->limit = qopt->limit; in netem_change() 998 q->latency = PSCHED_TICKS2NS(qopt->latency); in netem_change() 999 q->jitter = PSCHED_TICKS2NS(qopt->jitter); in netem_change() 1000 q->limit = qopt->limit; in netem_change() 1001 q->gap = qopt->gap; in netem_change() 1003 q->loss = qopt->loss; in netem_change() 1004 q->duplicate = qopt->duplicate; in netem_change() [all …]
|
| D | sch_multiq.c | 176 struct tc_multiq_qopt *qopt; in multiq_tune() local 182 if (nla_len(opt) < sizeof(*qopt)) in multiq_tune() 185 qopt = nla_data(opt); in multiq_tune() 187 qopt->bands = qdisc_dev(sch)->real_num_tx_queues; in multiq_tune() 195 q->bands = qopt->bands; in multiq_tune()
|
| D | sch_hfsc.c | 1389 struct tc_hfsc_qopt *qopt; in hfsc_init_qdisc() local 1394 if (!opt || nla_len(opt) < sizeof(*qopt)) in hfsc_init_qdisc() 1396 qopt = nla_data(opt); in hfsc_init_qdisc() 1398 q->defcls = qopt->defcls; in hfsc_init_qdisc() 1431 struct tc_hfsc_qopt *qopt; in hfsc_change_qdisc() local 1433 if (opt == NULL || nla_len(opt) < sizeof(*qopt)) in hfsc_change_qdisc() 1435 qopt = nla_data(opt); in hfsc_change_qdisc() 1438 q->defcls = qopt->defcls; in hfsc_change_qdisc() 1519 struct tc_hfsc_qopt qopt; in hfsc_dump_qdisc() local 1521 qopt.defcls = q->defcls; in hfsc_dump_qdisc() [all …]
|
| D | sch_taprio.c | 895 struct tc_mqprio_qopt *qopt, in taprio_parse_mqprio_opt() argument 901 if (!qopt && !dev->num_tc) { in taprio_parse_mqprio_opt() 913 if (qopt->num_tc > TC_MAX_QUEUE) { in taprio_parse_mqprio_opt() 919 if (qopt->num_tc > dev->num_tx_queues) { in taprio_parse_mqprio_opt() 926 if (qopt->prio_tc_map[i] >= qopt->num_tc) { in taprio_parse_mqprio_opt() 932 for (i = 0; i < qopt->num_tc; i++) { in taprio_parse_mqprio_opt() 933 unsigned int last = qopt->offset[i] + qopt->count[i]; in taprio_parse_mqprio_opt() 938 if (qopt->offset[i] >= dev->num_tx_queues || in taprio_parse_mqprio_opt() 939 !qopt->count[i] || in taprio_parse_mqprio_opt() 949 for (j = i + 1; j < qopt->num_tc; j++) { in taprio_parse_mqprio_opt() [all …]
|
| /Linux-v5.4/drivers/net/ethernet/stmicro/stmmac/ |
| D | stmmac_tc.c | 310 struct tc_cbs_qopt_offload *qopt) in tc_setup_cbs() argument 313 u32 queue = qopt->queue; in tc_setup_cbs() 328 if (mode_to_use == MTL_QUEUE_DCB && qopt->enable) { in tc_setup_cbs() 334 } else if (!qopt->enable) { in tc_setup_cbs() 343 value = div_s64(qopt->idleslope * 1024ll * ptr, speed_div); in tc_setup_cbs() 346 value = div_s64(-qopt->sendslope * 1024ll * ptr, speed_div); in tc_setup_cbs() 349 value = qopt->hicredit * 1024ll * 8; in tc_setup_cbs() 352 value = qopt->locredit * 1024ll * 8; in tc_setup_cbs() 365 queue, qopt->sendslope, qopt->idleslope, in tc_setup_cbs() 366 qopt->hicredit, qopt->locredit); in tc_setup_cbs()
|
| D | hwif.h | 523 struct tc_cbs_qopt_offload *qopt);
|
| /Linux-v5.4/drivers/net/ethernet/intel/iavf/ |
| D | iavf_main.c | 2530 if (mqprio_qopt->qopt.num_tc > IAVF_MAX_TRAFFIC_CLASS || in iavf_validate_ch_config() 2531 mqprio_qopt->qopt.num_tc < 1) in iavf_validate_ch_config() 2534 for (i = 0; i <= mqprio_qopt->qopt.num_tc - 1; i++) { in iavf_validate_ch_config() 2535 if (!mqprio_qopt->qopt.count[i] || in iavf_validate_ch_config() 2536 mqprio_qopt->qopt.offset[i] != num_qps) in iavf_validate_ch_config() 2547 num_qps += mqprio_qopt->qopt.count[i]; in iavf_validate_ch_config() 2596 num_tc = mqprio_qopt->qopt.num_tc; in __iavf_setup_tc() 2600 if (!mqprio_qopt->qopt.hw) { in __iavf_setup_tc() 2637 mqprio_qopt->qopt.count[i]; in __iavf_setup_tc() 2639 mqprio_qopt->qopt.offset[i]; in __iavf_setup_tc() [all …]
|
| /Linux-v5.4/drivers/net/ethernet/ti/ |
| D | cpsw.c | 1532 struct tc_cbs_qopt_offload *qopt) in cpsw_set_cbs() argument 1541 tc = netdev_txq_to_tc(priv->ndev, qopt->queue); in cpsw_set_cbs() 1554 if (!qopt->enable && !priv->fifo_bw[fifo]) in cpsw_set_cbs() 1578 bw = qopt->enable ? qopt->idleslope : 0; in cpsw_set_cbs() 2279 num_tc = mqprio->qopt.num_tc; in cpsw_set_mqprio() 2294 tc = mqprio->qopt.prio_tc_map[i]; in cpsw_set_mqprio() 2301 count = mqprio->qopt.count[i]; in cpsw_set_mqprio() 2302 offset = mqprio->qopt.offset[i]; in cpsw_set_mqprio() 2307 if (!mqprio->qopt.hw) { in cpsw_set_mqprio() 2313 priv->mqprio_hw = mqprio->qopt.hw; in cpsw_set_mqprio()
|
| /Linux-v5.4/drivers/net/ethernet/intel/igb/ |
| D | igb_main.c | 2555 struct tc_cbs_qopt_offload *qopt) in igb_offload_cbs() argument 2565 if (qopt->queue < 0 || qopt->queue > 1) in igb_offload_cbs() 2568 err = igb_save_cbs_params(adapter, qopt->queue, qopt->enable, in igb_offload_cbs() 2569 qopt->idleslope, qopt->sendslope, in igb_offload_cbs() 2570 qopt->hicredit, qopt->locredit); in igb_offload_cbs() 2574 igb_offload_apply(adapter, qopt->queue); in igb_offload_cbs() 2789 struct tc_etf_qopt_offload *qopt) in igb_offload_txtime() argument 2799 if (qopt->queue < 0 || qopt->queue > 1) in igb_offload_txtime() 2802 err = igb_save_txtime_params(adapter, qopt->queue, qopt->enable); in igb_offload_txtime() 2806 igb_offload_apply(adapter, qopt->queue); in igb_offload_txtime()
|
| /Linux-v5.4/drivers/net/ethernet/intel/i40e/ |
| D | i40e_main.c | 1686 vsi->tc_config.numtc = vsi->mqprio_qopt.qopt.num_tc; in i40e_vsi_setup_queue_map_mqprio() 1688 num_qps = vsi->mqprio_qopt.qopt.count[0]; in i40e_vsi_setup_queue_map_mqprio() 1698 max_qcount = vsi->mqprio_qopt.qopt.count[0]; in i40e_vsi_setup_queue_map_mqprio() 1702 offset = vsi->mqprio_qopt.qopt.offset[i]; in i40e_vsi_setup_queue_map_mqprio() 1703 qcount = vsi->mqprio_qopt.qopt.count[i]; in i40e_vsi_setup_queue_map_mqprio() 1745 override_q = vsi->mqprio_qopt.qopt.count[0]; in i40e_vsi_setup_queue_map_mqprio() 5093 u8 num_tc = vsi->mqprio_qopt.qopt.num_tc; in i40e_mqprio_get_enabled_tc() 5115 return pf->vsi[pf->lan_vsi]->mqprio_qopt.qopt.num_tc; in i40e_pf_get_num_tc() 5245 if (!vsi->mqprio_qopt.qopt.hw && !(pf->flags & I40E_FLAG_DCB_ENABLED)) { in i40e_vsi_configure_bw_alloc() 5434 if (!vsi->mqprio_qopt.qopt.hw && vsi->reconfig_rss) { in i40e_vsi_config_tc() [all …]
|
| /Linux-v5.4/include/net/ |
| D | pkt_cls.h | 667 struct tc_mqprio_qopt qopt; member
|
| /Linux-v5.4/drivers/net/ethernet/hisilicon/hns3/ |
| D | hns3_enet.c | 1570 u8 *prio_tc = mqprio_qopt->qopt.prio_tc_map; in hns3_setup_tc() 1572 u8 tc = mqprio_qopt->qopt.num_tc; in hns3_setup_tc() 1574 u8 hw = mqprio_qopt->qopt.hw; in hns3_setup_tc()
|