/kernel/linux/linux-5.10/drivers/net/ethernet/chelsio/cxgb4/ |
H A D | cxgb4_tc_mqprio.c | 9 struct tc_mqprio_qopt_offload *mqprio) in cxgb4_mqprio_validate() 19 if (!mqprio->qopt.num_tc) in cxgb4_mqprio_validate() 22 if (mqprio->qopt.hw != TC_MQPRIO_HW_OFFLOAD_TCS) { in cxgb4_mqprio_validate() 25 } else if (mqprio->mode != TC_MQPRIO_MODE_CHANNEL) { in cxgb4_mqprio_validate() 28 } else if (mqprio->shaper != TC_MQPRIO_SHAPER_BW_RATE) { in cxgb4_mqprio_validate() 31 } else if (mqprio->qopt.num_tc > adap->params.nsched_cls) { in cxgb4_mqprio_validate() 47 for (i = 0; i < mqprio->qopt.num_tc; i++) { in cxgb4_mqprio_validate() 48 qoffset = max_t(u16, mqprio->qopt.offset[i], qoffset); in cxgb4_mqprio_validate() 49 qcount += mqprio->qopt.count[i]; in cxgb4_mqprio_validate() 51 start_a = mqprio in cxgb4_mqprio_validate() 8 cxgb4_mqprio_validate(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_mqprio_validate() argument 317 cxgb4_mqprio_alloc_tc(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_mqprio_alloc_tc() argument 427 cxgb4_mqprio_enable_offload(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_mqprio_enable_offload() argument 573 cxgb4_setup_tc_mqprio(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_setup_tc_mqprio() argument [all...] |
H A D | cxgb4_tc_mqprio.h | 29 struct tc_mqprio_qopt_offload mqprio; /* MQPRIO offload params */ member 41 struct tc_mqprio_qopt_offload *mqprio);
|
/kernel/linux/linux-6.6/drivers/net/ethernet/chelsio/cxgb4/ |
H A D | cxgb4_tc_mqprio.c | 9 struct tc_mqprio_qopt_offload *mqprio) in cxgb4_mqprio_validate() 19 if (!mqprio->qopt.num_tc) in cxgb4_mqprio_validate() 22 if (mqprio->qopt.hw != TC_MQPRIO_HW_OFFLOAD_TCS) { in cxgb4_mqprio_validate() 25 } else if (mqprio->mode != TC_MQPRIO_MODE_CHANNEL) { in cxgb4_mqprio_validate() 28 } else if (mqprio->shaper != TC_MQPRIO_SHAPER_BW_RATE) { in cxgb4_mqprio_validate() 31 } else if (mqprio->qopt.num_tc > adap->params.nsched_cls) { in cxgb4_mqprio_validate() 47 for (i = 0; i < mqprio->qopt.num_tc; i++) { in cxgb4_mqprio_validate() 48 qoffset = max_t(u16, mqprio->qopt.offset[i], qoffset); in cxgb4_mqprio_validate() 49 qcount += mqprio->qopt.count[i]; in cxgb4_mqprio_validate() 51 start_a = mqprio in cxgb4_mqprio_validate() 8 cxgb4_mqprio_validate(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_mqprio_validate() argument 317 cxgb4_mqprio_alloc_tc(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_mqprio_alloc_tc() argument 427 cxgb4_mqprio_enable_offload(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_mqprio_enable_offload() argument 573 cxgb4_setup_tc_mqprio(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) cxgb4_setup_tc_mqprio() argument [all...] |
H A D | cxgb4_tc_mqprio.h | 29 struct tc_mqprio_qopt_offload mqprio; /* MQPRIO offload params */ member 41 struct tc_mqprio_qopt_offload *mqprio);
|
/kernel/linux/linux-5.10/drivers/net/ethernet/aquantia/atlantic/ |
H A D | aq_main.c | 347 struct tc_mqprio_qopt_offload *mqprio, in aq_validate_mqprio_opt() 350 const bool has_min_rate = !!(mqprio->flags & TC_MQPRIO_F_MIN_RATE); in aq_validate_mqprio_opt() 376 struct tc_mqprio_qopt_offload *mqprio = type_data; in aq_ndo_setup_tc() local 386 has_min_rate = !!(mqprio->flags & TC_MQPRIO_F_MIN_RATE); in aq_ndo_setup_tc() 387 has_max_rate = !!(mqprio->flags & TC_MQPRIO_F_MAX_RATE); in aq_ndo_setup_tc() 389 err = aq_validate_mqprio_opt(aq_nic, mqprio, mqprio->qopt.num_tc); in aq_ndo_setup_tc() 393 for (i = 0; i < mqprio->qopt.num_tc; i++) { in aq_ndo_setup_tc() 395 u64 max_rate = mqprio->max_rate[i]; in aq_ndo_setup_tc() 402 u64 min_rate = mqprio in aq_ndo_setup_tc() 346 aq_validate_mqprio_opt(struct aq_nic_s *self, struct tc_mqprio_qopt_offload *mqprio, const unsigned int num_tc) aq_validate_mqprio_opt() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/aquantia/atlantic/ |
H A D | aq_main.c | 379 struct tc_mqprio_qopt_offload *mqprio, in aq_validate_mqprio_opt() 382 const bool has_min_rate = !!(mqprio->flags & TC_MQPRIO_F_MIN_RATE); in aq_validate_mqprio_opt() 408 struct tc_mqprio_qopt_offload *mqprio = type_data; in aq_ndo_setup_tc() local 418 has_min_rate = !!(mqprio->flags & TC_MQPRIO_F_MIN_RATE); in aq_ndo_setup_tc() 419 has_max_rate = !!(mqprio->flags & TC_MQPRIO_F_MAX_RATE); in aq_ndo_setup_tc() 421 err = aq_validate_mqprio_opt(aq_nic, mqprio, mqprio->qopt.num_tc); in aq_ndo_setup_tc() 425 for (i = 0; i < mqprio->qopt.num_tc; i++) { in aq_ndo_setup_tc() 427 u64 max_rate = mqprio->max_rate[i]; in aq_ndo_setup_tc() 434 u64 min_rate = mqprio in aq_ndo_setup_tc() 378 aq_validate_mqprio_opt(struct aq_nic_s *self, struct tc_mqprio_qopt_offload *mqprio, const unsigned int num_tc) aq_validate_mqprio_opt() argument [all...] |
/kernel/linux/linux-5.10/net/sched/ |
H A D | sch_mqprio.c | 45 struct tc_mqprio_qopt_offload mqprio = { { 0 } }; in mqprio_destroy() local 52 &mqprio); in mqprio_destroy() 149 "mqprio TCA_OPTIONS can only contain netlink attributes in hardware mode"); in mqprio_parse_nlattr() 281 /* If the mqprio options indicate that hardware should own in mqprio_init() 286 struct tc_mqprio_qopt_offload mqprio = {.qopt = *qopt}; in mqprio_init() local 294 mqprio.flags = priv->flags; in mqprio_init() 296 mqprio.mode = priv->mode; in mqprio_init() 298 mqprio.shaper = priv->shaper; in mqprio_init() 300 for (i = 0; i < mqprio.qopt.num_tc; i++) in mqprio_init() 301 mqprio in mqprio_init() [all...] |
H A D | sch_taprio.c | 929 NL_SET_ERR_MSG(extack, "'mqprio' configuration is necessary"); in taprio_parse_mqprio_opt() 934 * configured the mqprio part in taprio_parse_mqprio_opt() 1399 const struct tc_mqprio_qopt *mqprio) in taprio_mqprio_cmp() 1403 if (!mqprio || mqprio->num_tc != dev->num_tc) in taprio_mqprio_cmp() 1406 for (i = 0; i < mqprio->num_tc; i++) in taprio_mqprio_cmp() 1407 if (dev->tc_to_txq[i].count != mqprio->count[i] || in taprio_mqprio_cmp() 1408 dev->tc_to_txq[i].offset != mqprio->offset[i]) in taprio_mqprio_cmp() 1412 if (dev->prio_tc_map[i] != mqprio->prio_tc_map[i]) in taprio_mqprio_cmp() 1452 struct tc_mqprio_qopt *mqprio in taprio_change() local 1398 taprio_mqprio_cmp(const struct net_device *dev, const struct tc_mqprio_qopt *mqprio) taprio_mqprio_cmp() argument [all...] |
/kernel/linux/linux-6.6/net/sched/ |
H A D | sch_mqprio.c | 40 struct tc_mqprio_qopt_offload mqprio = { in mqprio_enable_offload() local 52 mqprio.flags = priv->flags; in mqprio_enable_offload() 54 mqprio.mode = priv->mode; in mqprio_enable_offload() 56 mqprio.shaper = priv->shaper; in mqprio_enable_offload() 58 for (i = 0; i < mqprio.qopt.num_tc; i++) in mqprio_enable_offload() 59 mqprio.min_rate[i] = priv->min_rate[i]; in mqprio_enable_offload() 61 for (i = 0; i < mqprio.qopt.num_tc; i++) in mqprio_enable_offload() 62 mqprio.max_rate[i] = priv->max_rate[i]; in mqprio_enable_offload() 68 mqprio_fp_to_offload(priv->fp, &mqprio); in mqprio_enable_offload() 71 &mqprio); in mqprio_enable_offload() 82 struct tc_mqprio_qopt_offload mqprio = { { 0 } }; mqprio_disable_offload() local [all...] |
H A D | sch_taprio.c | 1190 NL_SET_ERR_MSG(extack, "'mqprio' configuration is necessary"); in taprio_parse_mqprio_opt() 1195 * configured the mqprio part in taprio_parse_mqprio_opt() 1547 mqprio_qopt_reconstruct(dev, &offload->mqprio.qopt); in taprio_enable_offload() 1548 offload->mqprio.extack = extack; in taprio_enable_offload() 1550 mqprio_fp_to_offload(q->fp, &offload->mqprio); in taprio_enable_offload() 1570 offload->mqprio.extack = NULL; in taprio_enable_offload() 1800 const struct tc_mqprio_qopt *mqprio) in taprio_mqprio_cmp() 1804 if (!mqprio || mqprio->num_tc != dev->num_tc) in taprio_mqprio_cmp() 1807 for (i = 0; i < mqprio in taprio_mqprio_cmp() 1799 taprio_mqprio_cmp(const struct net_device *dev, const struct tc_mqprio_qopt *mqprio) taprio_mqprio_cmp() argument 1854 struct tc_mqprio_qopt *mqprio = NULL; taprio_change() local [all...] |
H A D | sch_mqprio_lib.c | 118 struct tc_mqprio_qopt_offload *mqprio) in mqprio_fp_to_offload() 127 mqprio->preemptible_tcs = preemptible_tcs; in mqprio_fp_to_offload() 117 mqprio_fp_to_offload(u32 fp[TC_QOPT_MAX_QUEUE], struct tc_mqprio_qopt_offload *mqprio) mqprio_fp_to_offload() argument
|
H A D | sch_mqprio_lib.h | 18 struct tc_mqprio_qopt_offload *mqprio);
|
/kernel/linux/linux-6.6/drivers/net/ethernet/microchip/lan966x/ |
H A D | lan966x_tc.c | 11 struct tc_mqprio_qopt_offload *mqprio) in lan966x_tc_setup_qdisc_mqprio() 13 u8 num_tc = mqprio->qopt.num_tc; in lan966x_tc_setup_qdisc_mqprio() 15 mqprio->qopt.hw = TC_MQPRIO_HW_OFFLOAD_TCS; in lan966x_tc_setup_qdisc_mqprio() 10 lan966x_tc_setup_qdisc_mqprio(struct lan966x_port *port, struct tc_mqprio_qopt_offload *mqprio) lan966x_tc_setup_qdisc_mqprio() argument
|
/kernel/linux/linux-6.6/drivers/net/ethernet/sfc/siena/ |
H A D | tx.c | 362 struct tc_mqprio_qopt *mqprio = type_data; in efx_siena_setup_tc() local 372 num_tc = mqprio->num_tc; in efx_siena_setup_tc() 377 mqprio->hw = TC_MQPRIO_HW_OFFLOAD_TCS; in efx_siena_setup_tc()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/ti/ |
H A D | cpsw_priv.c | 994 struct tc_mqprio_qopt_offload *mqprio = type_data; in cpsw_set_mqprio() local 1002 num_tc = mqprio->qopt.num_tc; in cpsw_set_mqprio() 1006 if (mqprio->mode != TC_MQPRIO_MODE_DCB) in cpsw_set_mqprio() 1017 tc = mqprio->qopt.prio_tc_map[i]; in cpsw_set_mqprio() 1024 count = mqprio->qopt.count[i]; in cpsw_set_mqprio() 1025 offset = mqprio->qopt.offset[i]; in cpsw_set_mqprio() 1030 if (!mqprio->qopt.hw) { in cpsw_set_mqprio() 1036 priv->mqprio_hw = mqprio->qopt.hw; in cpsw_set_mqprio()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx5/core/ |
H A D | en_main.c | 2115 if (params->mqprio.mode != TC_MQPRIO_MODE_CHANNEL) { in mlx5e_txq_get_qos_node_hw_id() 2120 tc = mlx5e_mqprio_txq_to_tc(params->mqprio.tc_to_txq, txq_ix); in mlx5e_txq_get_qos_node_hw_id() 2124 if (tc >= params->mqprio.num_tc) { in mlx5e_txq_get_qos_node_hw_id() 2126 tc, params->mqprio.num_tc); in mlx5e_txq_get_qos_node_hw_id() 2130 *hw_id = params->mqprio.channel.hw_id[tc]; in mlx5e_txq_get_qos_node_hw_id() 2822 ntc = priv->channels.params.mqprio.num_tc; in mlx5e_update_netdev_queues() 2823 tc_to_txq = priv->channels.params.mqprio.tc_to_txq; in mlx5e_update_netdev_queues() 3428 params->mqprio.mode = TC_MQPRIO_MODE_DCB; in mlx5e_params_mqprio_dcb_set() 3429 params->mqprio.num_tc = num_tc; in mlx5e_params_mqprio_dcb_set() 3430 mlx5e_mqprio_build_default_tc_to_txq(params->mqprio in mlx5e_params_mqprio_dcb_set() 3448 mlx5e_params_mqprio_channel_set(struct mlx5e_params *params, struct tc_mqprio_qopt_offload *mqprio, struct mlx5e_mqprio_rl *rl) mlx5e_params_mqprio_channel_set() argument 3469 mlx5e_setup_tc_mqprio_dcb(struct mlx5e_priv *priv, struct tc_mqprio_qopt *mqprio) mlx5e_setup_tc_mqprio_dcb() argument 3498 mlx5e_mqprio_channel_validate(struct mlx5e_priv *priv, struct tc_mqprio_qopt_offload *mqprio) mlx5e_mqprio_channel_validate() argument 3583 mlx5e_setup_tc_mqprio_channel(struct mlx5e_priv *priv, struct tc_mqprio_qopt_offload *mqprio) mlx5e_setup_tc_mqprio_channel() argument 3624 mlx5e_setup_tc_mqprio(struct mlx5e_priv *priv, struct tc_mqprio_qopt_offload *mqprio) mlx5e_setup_tc_mqprio() argument [all...] |
/kernel/linux/linux-6.6/tools/testing/selftests/drivers/net/netdevsim/ |
H A D | tc-mq-visibility.sh | 28 for root in mq mqprio; do 32 [ $root == "mqprio" ] && opts='hw 0 num_tc 1 map 0 0 0 0 queues 1@0'
|
/kernel/linux/linux-5.10/drivers/net/ethernet/sfc/ |
H A D | tx.c | 609 struct tc_mqprio_qopt *mqprio = type_data; in efx_setup_tc() local 619 num_tc = mqprio->num_tc; in efx_setup_tc() 624 mqprio->hw = TC_MQPRIO_HW_OFFLOAD_TCS; in efx_setup_tc()
|
/kernel/linux/linux-5.10/drivers/net/ethernet/sfc/falcon/ |
H A D | tx.c | 429 struct tc_mqprio_qopt *mqprio = type_data; in ef4_setup_tc() local 438 num_tc = mqprio->num_tc; in ef4_setup_tc() 443 mqprio->hw = TC_MQPRIO_HW_OFFLOAD_TCS; in ef4_setup_tc()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/sfc/falcon/ |
H A D | tx.c | 430 struct tc_mqprio_qopt *mqprio = type_data; in ef4_setup_tc() local 439 num_tc = mqprio->num_tc; in ef4_setup_tc() 444 mqprio->hw = TC_MQPRIO_HW_OFFLOAD_TCS; in ef4_setup_tc()
|
/kernel/linux/linux-6.6/tools/testing/selftests/net/forwarding/ |
H A D | ethtool_mm.sh | 221 tc qdisc add dev $h1 root mqprio num_tc 4 map 0 1 2 3 \ 235 tc qdisc add dev $h2 root mqprio num_tc 4 map 0 1 2 3 \
|
/kernel/linux/linux-6.6/drivers/net/ethernet/ti/ |
H A D | cpsw_priv.c | 994 struct tc_mqprio_qopt_offload *mqprio = type_data; in cpsw_set_mqprio() local 1002 num_tc = mqprio->qopt.num_tc; in cpsw_set_mqprio() 1006 if (mqprio->mode != TC_MQPRIO_MODE_DCB) in cpsw_set_mqprio() 1015 tc = mqprio->qopt.prio_tc_map[i]; in cpsw_set_mqprio() 1022 count = mqprio->qopt.count[i]; in cpsw_set_mqprio() 1023 offset = mqprio->qopt.offset[i]; in cpsw_set_mqprio() 1028 if (!mqprio->qopt.hw) { in cpsw_set_mqprio() 1034 priv->mqprio_hw = mqprio->qopt.hw; in cpsw_set_mqprio()
|
/kernel/linux/linux-6.6/drivers/net/ethernet/marvell/ |
H A D | mvneta.c | 5218 struct tc_mqprio_qopt_offload *mqprio) in mvneta_setup_mqprio() 5224 if (mqprio->qopt.hw != TC_MQPRIO_HW_OFFLOAD_TCS) in mvneta_setup_mqprio() 5227 num_tc = mqprio->qopt.num_tc; in mvneta_setup_mqprio() 5240 netdev_set_num_tc(dev, mqprio->qopt.num_tc); in mvneta_setup_mqprio() 5242 for (tc = 0; tc < mqprio->qopt.num_tc; tc++) { in mvneta_setup_mqprio() 5243 netdev_set_tc_queue(dev, tc, mqprio->qopt.count[tc], in mvneta_setup_mqprio() 5244 mqprio->qopt.offset[tc]); in mvneta_setup_mqprio() 5246 for (rxq = mqprio->qopt.offset[tc]; in mvneta_setup_mqprio() 5247 rxq < mqprio->qopt.count[tc] + mqprio in mvneta_setup_mqprio() 5217 mvneta_setup_mqprio(struct net_device *dev, struct tc_mqprio_qopt_offload *mqprio) mvneta_setup_mqprio() argument [all...] |
/kernel/linux/linux-6.6/include/net/ |
H A D | pkt_sched.h | 234 struct tc_mqprio_qopt_offload mqprio; member
|
/kernel/linux/linux-6.6/tools/testing/selftests/drivers/net/ocelot/ |
H A D | psfp.sh | 155 tc qdisc add dev ${if_name} handle 100: parent root mqprio num_tc 8 \ 159 # Set up TC 6 for SO_TXTIME. tc-mqprio queues count from 1.
|