| /linux-6.15/drivers/net/ethernet/ti/icssg/ |
| H A D | icssg_ethtool.c | 211 struct ethtool_coalesce *coal, in emac_get_coalesce() argument 227 struct ethtool_coalesce *coal) in emac_get_per_queue_coalesce() argument 243 struct ethtool_coalesce *coal, in emac_set_coalesce() argument 253 if (coal->rx_coalesce_usecs && in emac_set_coalesce() 254 coal->rx_coalesce_usecs < ICSSG_MIN_COALESCE_USECS) { in emac_set_coalesce() 257 coal->rx_coalesce_usecs = ICSSG_MIN_COALESCE_USECS; in emac_set_coalesce() 260 if (coal->tx_coalesce_usecs && in emac_set_coalesce() 264 coal->tx_coalesce_usecs = ICSSG_MIN_COALESCE_USECS; in emac_set_coalesce() 274 struct ethtool_coalesce *coal) in emac_set_per_queue_coalesce() argument 285 if (coal->tx_coalesce_usecs && in emac_set_per_queue_coalesce() [all …]
|
| /linux-6.15/drivers/infiniband/ulp/ipoib/ |
| H A D | ipoib_ethtool.c | 75 struct ethtool_coalesce *coal, in ipoib_get_coalesce() argument 81 coal->rx_coalesce_usecs = priv->ethtool.coalesce_usecs; in ipoib_get_coalesce() 82 coal->rx_max_coalesced_frames = priv->ethtool.max_coalesced_frames; in ipoib_get_coalesce() 88 struct ethtool_coalesce *coal, in ipoib_set_coalesce() argument 99 if (coal->rx_coalesce_usecs > 0xffff || in ipoib_set_coalesce() 100 coal->rx_max_coalesced_frames > 0xffff) in ipoib_set_coalesce() 104 coal->rx_max_coalesced_frames, in ipoib_set_coalesce() 105 coal->rx_coalesce_usecs); in ipoib_set_coalesce() 111 priv->ethtool.coalesce_usecs = coal->rx_coalesce_usecs; in ipoib_set_coalesce() 112 priv->ethtool.max_coalesced_frames = coal->rx_max_coalesced_frames; in ipoib_set_coalesce()
|
| /linux-6.15/net/ethtool/ |
| H A D | coalesce.c | 220 coal->rx_coalesce_usecs, supported) || in coalesce_fill_reply() 224 coal->rx_coalesce_usecs_irq, supported) || in coalesce_fill_reply() 228 coal->tx_coalesce_usecs, supported) || in coalesce_fill_reply() 232 coal->tx_coalesce_usecs_irq, supported) || in coalesce_fill_reply() 242 coal->pkt_rate_low, supported) || in coalesce_fill_reply() 244 coal->rx_coalesce_usecs_low, supported) || in coalesce_fill_reply() 248 coal->tx_coalesce_usecs_low, supported) || in coalesce_fill_reply() 252 coal->pkt_rate_high, supported) || in coalesce_fill_reply() 254 coal->rx_coalesce_usecs_high, supported) || in coalesce_fill_reply() 258 coal->tx_coalesce_usecs_high, supported) || in coalesce_fill_reply() [all …]
|
| /linux-6.15/drivers/s390/net/ |
| H A D | qeth_ethtool.c | 114 struct ethtool_coalesce *coal) in __qeth_set_coalesce() argument 116 WRITE_ONCE(queue->coalesce_usecs, coal->tx_coalesce_usecs); in __qeth_set_coalesce() 119 if (coal->tx_coalesce_usecs && in __qeth_set_coalesce() 122 qeth_tx_arm_timer(queue, coal->tx_coalesce_usecs); in __qeth_set_coalesce() 126 struct ethtool_coalesce *coal, in qeth_set_coalesce() argument 137 if (!coal->tx_coalesce_usecs && !coal->tx_max_coalesced_frames) in qeth_set_coalesce() 141 __qeth_set_coalesce(dev, queue, coal); in qeth_set_coalesce() 290 struct ethtool_coalesce *coal) in qeth_get_per_queue_coalesce() argument 303 coal->tx_coalesce_usecs = queue->coalesce_usecs; in qeth_get_per_queue_coalesce() 309 struct ethtool_coalesce *coal) in qeth_set_per_queue_coalesce() argument [all …]
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | en_ethtool.c | 597 struct ethtool_coalesce *coal, in mlx5e_get_coalesce() argument 607 struct ethtool_coalesce *coal) in mlx5e_ethtool_get_per_queue_coalesce() argument 627 if (coal->use_adaptive_rx_coalesce) { in mlx5e_ethtool_get_per_queue_coalesce() 639 if (coal->use_adaptive_tx_coalesce) { in mlx5e_ethtool_get_per_queue_coalesce() 661 struct ethtool_coalesce *coal) in mlx5e_get_per_queue_coalesce() argument 736 coal->rx_coalesce_usecs); in mlx5e_ethtool_set_coalesce() 746 coal->rx_max_coalesced_frames); in mlx5e_ethtool_set_coalesce() 835 struct ethtool_coalesce *coal) in mlx5e_ethtool_set_per_queue_coalesce() argument 889 coal->rx_coalesce_usecs, in mlx5e_ethtool_set_per_queue_coalesce() 899 coal->tx_coalesce_usecs, in mlx5e_ethtool_set_per_queue_coalesce() [all …]
|
| /linux-6.15/drivers/net/ethernet/aquantia/atlantic/ |
| H A D | aq_ethtool.c | 556 struct ethtool_coalesce *coal, in aq_ethtool_get_coalesce() argument 569 coal->rx_max_coalesced_frames = 0; in aq_ethtool_get_coalesce() 570 coal->tx_max_coalesced_frames = 0; in aq_ethtool_get_coalesce() 572 coal->rx_coalesce_usecs = 0; in aq_ethtool_get_coalesce() 573 coal->tx_coalesce_usecs = 0; in aq_ethtool_get_coalesce() 574 coal->rx_max_coalesced_frames = 1; in aq_ethtool_get_coalesce() 575 coal->tx_max_coalesced_frames = 1; in aq_ethtool_get_coalesce() 582 struct ethtool_coalesce *coal, in aq_ethtool_set_coalesce() argument 594 coal->tx_max_coalesced_frames > 1) in aq_ethtool_set_coalesce() 599 if (!(coal->rx_max_coalesced_frames == !coal->rx_coalesce_usecs)) in aq_ethtool_set_coalesce() [all …]
|
| /linux-6.15/drivers/net/ethernet/huawei/hinic/ |
| H A D | hinic_ethtool.c | 632 struct ethtool_coalesce *coal, u16 queue) in __hinic_get_coalesce() argument 678 struct hinic_intr_coal_info *coal, in set_queue_coalesce() argument 691 intr_coal->pending_limt = coal->pending_limt; in set_queue_coalesce() 746 struct ethtool_coalesce *coal, u16 queue) in __hinic_set_coalesce() argument 755 err = is_coalesce_exceed_limit(coal); in __hinic_set_coalesce() 759 if (coal->rx_coalesce_usecs || coal->rx_max_coalesced_frames) { in __hinic_set_coalesce() 767 if (coal->tx_coalesce_usecs || coal->tx_max_coalesced_frames) { in __hinic_set_coalesce() 799 struct ethtool_coalesce *coal, in hinic_get_coalesce() argument 807 struct ethtool_coalesce *coal, in hinic_set_coalesce() argument 815 struct ethtool_coalesce *coal) in hinic_get_per_queue_coalesce() argument [all …]
|
| /linux-6.15/drivers/net/ethernet/fungible/funeth/ |
| H A D | funeth_ethtool.c | 466 struct ethtool_coalesce *coal, in fun_get_coalesce() argument 472 coal->rx_coalesce_usecs = fp->rx_coal_usec; in fun_get_coalesce() 474 coal->use_adaptive_rx_coalesce = !fp->cq_irq_db; in fun_get_coalesce() 475 coal->tx_coalesce_usecs = fp->tx_coal_usec; in fun_get_coalesce() 481 struct ethtool_coalesce *coal, in fun_set_coalesce() argument 491 (coal->rx_coalesce_usecs | coal->rx_max_coalesced_frames) == 0 || in fun_set_coalesce() 494 (coal->tx_coalesce_usecs | coal->tx_max_coalesced_frames) == 0) in fun_set_coalesce() 498 if ((coal->rx_max_coalesced_frames > 1 && !coal->rx_coalesce_usecs) || in fun_set_coalesce() 499 (coal->tx_max_coalesced_frames > 1 && !coal->tx_coalesce_usecs)) in fun_set_coalesce() 502 fp->rx_coal_usec = coal->rx_coalesce_usecs; in fun_set_coalesce() [all …]
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx4/ |
| H A D | en_ethtool.c | 985 struct ethtool_coalesce *coal, in mlx4_en_get_coalesce() argument 991 coal->tx_coalesce_usecs = priv->tx_usecs; in mlx4_en_get_coalesce() 995 coal->rx_coalesce_usecs = priv->rx_usecs; in mlx4_en_get_coalesce() 998 coal->pkt_rate_low = priv->pkt_rate_low; in mlx4_en_get_coalesce() 1000 coal->pkt_rate_high = priv->pkt_rate_high; in mlx4_en_get_coalesce() 1009 struct ethtool_coalesce *coal, in mlx4_en_set_coalesce() argument 1015 if (!coal->tx_max_coalesced_frames_irq) in mlx4_en_set_coalesce() 1037 coal->rx_max_coalesced_frames; in mlx4_en_set_coalesce() 1041 coal->rx_coalesce_usecs; in mlx4_en_set_coalesce() 1046 priv->tx_usecs = coal->tx_coalesce_usecs; in mlx4_en_set_coalesce() [all …]
|
| /linux-6.15/drivers/net/ethernet/pensando/ionic/ |
| H A D | ionic_regs.h | 21 u32 coal; member 54 int intr_idx, u32 coal) in ionic_intr_coal_init() argument 56 iowrite32(coal, &intr_ctrl[intr_idx].coal_init); in ionic_intr_coal_init()
|
| /linux-6.15/drivers/net/ethernet/ti/ |
| H A D | am65-cpsw-ethtool.c | 916 struct ethtool_coalesce *coal) in am65_cpsw_get_per_queue_coalesce() argument 926 coal->tx_coalesce_usecs = tx_chn->tx_pace_timeout / 1000; in am65_cpsw_get_per_queue_coalesce() 929 coal->rx_coalesce_usecs = rx_flow->rx_pace_timeout / 1000; in am65_cpsw_get_per_queue_coalesce() 934 static int am65_cpsw_get_coalesce(struct net_device *ndev, struct ethtool_coalesce *coal, in am65_cpsw_get_coalesce() argument 938 return am65_cpsw_get_per_queue_coalesce(ndev, 0, coal); in am65_cpsw_get_coalesce() 942 struct ethtool_coalesce *coal) in am65_cpsw_set_per_queue_coalesce() argument 952 if (coal->tx_coalesce_usecs && coal->tx_coalesce_usecs < 20) in am65_cpsw_set_per_queue_coalesce() 955 tx_chn->tx_pace_timeout = coal->tx_coalesce_usecs * 1000; in am65_cpsw_set_per_queue_coalesce() 958 if (coal->rx_coalesce_usecs && coal->rx_coalesce_usecs < 20) in am65_cpsw_set_per_queue_coalesce() 961 rx_flow->rx_pace_timeout = coal->rx_coalesce_usecs * 1000; in am65_cpsw_set_per_queue_coalesce() [all …]
|
| H A D | cpsw_ethtool.c | 155 int cpsw_get_coalesce(struct net_device *ndev, struct ethtool_coalesce *coal, in cpsw_get_coalesce() argument 161 coal->rx_coalesce_usecs = cpsw->coal_intvl; in cpsw_get_coalesce() 165 int cpsw_set_coalesce(struct net_device *ndev, struct ethtool_coalesce *coal, in cpsw_set_coalesce() argument 177 coal_intvl = coal->rx_coalesce_usecs; in cpsw_set_coalesce() 182 if (!coal->rx_coalesce_usecs) { in cpsw_set_coalesce()
|
| H A D | davinci_emac.c | 390 struct ethtool_coalesce *coal, in emac_get_coalesce() argument 396 coal->rx_coalesce_usecs = priv->coal_intvl; in emac_get_coalesce() 412 struct ethtool_coalesce *coal, in emac_set_coalesce() argument 420 if (!coal->rx_coalesce_usecs) { in emac_set_coalesce() 435 coal_intvl = coal->rx_coalesce_usecs; in emac_set_coalesce() 1486 struct ethtool_coalesce coal; in emac_dev_open() local 1488 coal.rx_coalesce_usecs = (priv->coal_intvl << 4); in emac_dev_open() 1489 emac_set_coalesce(ndev, &coal, NULL, NULL); in emac_dev_open()
|
| /linux-6.15/drivers/net/ethernet/qlogic/netxen/ |
| H A D | netxen_nic_ethtool.c | 762 adapter->coal.flags = NETXEN_NIC_INTR_DEFAULT; in netxen_set_intr_coalesce() 763 adapter->coal.normal.data.rx_time_us = in netxen_set_intr_coalesce() 765 adapter->coal.normal.data.rx_packets = in netxen_set_intr_coalesce() 768 adapter->coal.flags = 0; in netxen_set_intr_coalesce() 769 adapter->coal.normal.data.rx_time_us = in netxen_set_intr_coalesce() 771 adapter->coal.normal.data.rx_packets = in netxen_set_intr_coalesce() 774 adapter->coal.normal.data.tx_time_us = ethcoal->tx_coalesce_usecs; in netxen_set_intr_coalesce() 775 adapter->coal.normal.data.tx_packets = in netxen_set_intr_coalesce() 796 ethcoal->rx_coalesce_usecs = adapter->coal.normal.data.rx_time_us; in netxen_get_intr_coalesce() 799 adapter->coal.normal.data.rx_packets; in netxen_get_intr_coalesce() [all …]
|
| /linux-6.15/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ |
| H A D | ethtool.c | 119 struct ethtool_coalesce *coal, in mlx5i_set_coalesce() argument 125 return mlx5e_ethtool_set_coalesce(priv, coal, kernel_coal, extack); in mlx5i_set_coalesce() 129 struct ethtool_coalesce *coal, in mlx5i_get_coalesce() argument 135 return mlx5e_ethtool_get_coalesce(priv, coal, kernel_coal, extack); in mlx5i_get_coalesce()
|
| /linux-6.15/drivers/net/netdevsim/ |
| H A D | ethtool.c | 46 struct ethtool_coalesce *coal, in nsim_get_coalesce() argument 52 memcpy(coal, &ns->ethtool.coalesce, sizeof(ns->ethtool.coalesce)); in nsim_get_coalesce() 57 struct ethtool_coalesce *coal, in nsim_set_coalesce() argument 63 memcpy(&ns->ethtool.coalesce, coal, sizeof(ns->ethtool.coalesce)); in nsim_set_coalesce()
|
| /linux-6.15/include/linux/pds/ |
| H A D | pds_intr.h | 117 pds_core_intr_coal_init(struct pds_core_intr __iomem *intr_ctrl, u32 coal) in pds_core_intr_coal_init() argument 119 iowrite32(coal, &intr_ctrl->coal_init); in pds_core_intr_coal_init()
|
| /linux-6.15/drivers/net/ethernet/qlogic/qede/ |
| H A D | qede_ethtool.c | 753 struct ethtool_coalesce *coal, in qede_get_coalesce() argument 808 coal->rx_coalesce_usecs = rx_coal; in qede_get_coalesce() 809 coal->tx_coalesce_usecs = tx_coal; in qede_get_coalesce() 851 rxc = (u16)coal->rx_coalesce_usecs; in qede_set_coalesce() 852 txc = (u16)coal->tx_coalesce_usecs; in qede_set_coalesce() 2142 struct ethtool_coalesce *coal) in qede_set_per_coalesce() argument 2159 rxc = (u16)coal->rx_coalesce_usecs; in qede_set_per_coalesce() 2160 txc = (u16)coal->tx_coalesce_usecs; in qede_set_per_coalesce() 2209 struct ethtool_coalesce *coal) in qede_get_per_coalesce() argument 2258 coal->rx_coalesce_usecs = rx_coal; in qede_get_per_coalesce() [all …]
|
| /linux-6.15/drivers/net/ethernet/qlogic/qlcnic/ |
| H A D | qlcnic_hw.c | 780 req.words[0] = cpu_to_le64(((u64) adapter->ahw->coal.flag) << 32); in qlcnic_82xx_set_rx_coalesce() 781 req.words[2] = cpu_to_le64(adapter->ahw->coal.rx_packets | in qlcnic_82xx_set_rx_coalesce() 782 ((u64) adapter->ahw->coal.rx_time_us) << 16); in qlcnic_82xx_set_rx_coalesce() 783 req.words[5] = cpu_to_le64(adapter->ahw->coal.timer_out | in qlcnic_82xx_set_rx_coalesce() 784 ((u64) adapter->ahw->coal.type) << 32 | in qlcnic_82xx_set_rx_coalesce() 785 ((u64) adapter->ahw->coal.sts_ring_mask) << 40); in qlcnic_82xx_set_rx_coalesce() 798 struct qlcnic_nic_intr_coalesce *coal = &adapter->ahw->coal; in qlcnic_82xx_config_intr_coalesce() local 801 coal->flag = QLCNIC_INTR_DEFAULT; in qlcnic_82xx_config_intr_coalesce() 802 coal->rx_time_us = ethcoal->rx_coalesce_usecs; in qlcnic_82xx_config_intr_coalesce() 803 coal->rx_packets = ethcoal->rx_max_coalesced_frames; in qlcnic_82xx_config_intr_coalesce()
|
| H A D | qlcnic_83xx_hw.c | 2197 struct qlcnic_nic_intr_coalesce *coal = &adapter->ahw->coal; in qlcnic_83xx_set_rx_intr_coal() local 2208 temp = coal->rx_time_us; in qlcnic_83xx_set_rx_intr_coal() 2210 cmd.req.arg[3] = coal->flag; in qlcnic_83xx_set_rx_intr_coal() 2224 struct qlcnic_nic_intr_coalesce *coal = &adapter->ahw->coal; in qlcnic_83xx_set_tx_intr_coal() local 2235 temp = coal->tx_time_us; in qlcnic_83xx_set_tx_intr_coal() 2237 cmd.req.arg[3] = coal->flag; in qlcnic_83xx_set_tx_intr_coal() 2269 struct qlcnic_nic_intr_coalesce *coal = &adapter->ahw->coal; in qlcnic_83xx_config_intr_coal() local 2281 coal->flag = QLCNIC_INTR_DEFAULT; in qlcnic_83xx_config_intr_coal() 2287 coal->tx_packets = tx_max_frames; in qlcnic_83xx_config_intr_coal() 2292 coal->rx_packets = rx_max_frames; in qlcnic_83xx_config_intr_coal() [all …]
|
| H A D | qlcnic_sriov_pf.c | 1198 struct qlcnic_nic_intr_coalesce *coal = &adapter->ahw->coal; in qlcnic_sriov_validate_cfg_intrcoal() local 1210 if (ctx_id != vf->rx_ctx_id || pkts > coal->rx_packets || in qlcnic_sriov_validate_cfg_intrcoal() 1211 time < coal->rx_time_us) in qlcnic_sriov_validate_cfg_intrcoal() 1215 if (ctx_id != vf->tx_ctx_id || pkts > coal->tx_packets || in qlcnic_sriov_validate_cfg_intrcoal() 1216 time < coal->tx_time_us) in qlcnic_sriov_validate_cfg_intrcoal() 1229 vf->rx_ctx_id, coal->rx_packets, coal->rx_time_us, in qlcnic_sriov_validate_cfg_intrcoal() 1230 vf->tx_ctx_id, coal->tx_packets, coal->tx_time_us); in qlcnic_sriov_validate_cfg_intrcoal()
|
| /linux-6.15/drivers/net/ethernet/tehuti/ |
| H A D | tn40.h | 34 #define TN40_INT_REG_VAL(coal, coal_rc, rxf_th, pck_th) ( \ argument 35 FIELD_PREP(GENMASK(14, 0), (coal)) | \
|
| /linux-6.15/drivers/net/ethernet/hisilicon/hns3/ |
| H A D | hns3_debugfs.c | 486 struct hns3_enet_coalesce *coal; in hns3_get_coal_info() local 493 coal = &tqp_vector->tx_group.coal; in hns3_get_coal_info() 497 ql_enable = tqp_vector->tx_group.coal.ql_enable; in hns3_get_coal_info() 499 coal = &tqp_vector->rx_group.coal; in hns3_get_coal_info() 503 ql_enable = tqp_vector->rx_group.coal.ql_enable; in hns3_get_coal_info() 518 sprintf(result[j++], "%u", coal->int_gl); in hns3_get_coal_info() 519 sprintf(result[j++], "%u", coal->int_ql); in hns3_get_coal_info()
|
| H A D | hns3_ethtool.c | 1527 tx_vector->tx_group.coal.adapt_enable = in hns3_set_coalesce_per_queue() 1529 rx_vector->rx_group.coal.adapt_enable = in hns3_set_coalesce_per_queue() 1532 tx_vector->tx_group.coal.int_gl = cmd->tx_coalesce_usecs; in hns3_set_coalesce_per_queue() 1533 rx_vector->rx_group.coal.int_gl = cmd->rx_coalesce_usecs; in hns3_set_coalesce_per_queue() 1535 tx_vector->tx_group.coal.int_ql = cmd->tx_max_coalesced_frames; in hns3_set_coalesce_per_queue() 1539 tx_vector->tx_group.coal.int_gl); in hns3_set_coalesce_per_queue() 1541 rx_vector->rx_group.coal.int_gl); in hns3_set_coalesce_per_queue() 1546 if (tx_vector->tx_group.coal.ql_enable) in hns3_set_coalesce_per_queue() 1548 tx_vector->tx_group.coal.int_ql); in hns3_set_coalesce_per_queue() 1549 if (rx_vector->rx_group.coal.ql_enable) in hns3_set_coalesce_per_queue() [all …]
|
| /linux-6.15/drivers/net/ethernet/broadcom/bnxt/ |
| H A D | bnxt_ethtool.c | 62 struct ethtool_coalesce *coal, in bnxt_get_coalesce() argument 70 memset(coal, 0, sizeof(*coal)); in bnxt_get_coalesce() 76 coal->rx_coalesce_usecs = hw_coal->coal_ticks; in bnxt_get_coalesce() 78 coal->rx_coalesce_usecs_irq = hw_coal->coal_ticks_irq; in bnxt_get_coalesce() 86 coal->tx_coalesce_usecs = hw_coal->coal_ticks; in bnxt_get_coalesce() 88 coal->tx_coalesce_usecs_irq = hw_coal->coal_ticks_irq; in bnxt_get_coalesce() 100 struct ethtool_coalesce *coal, in bnxt_set_coalesce() argument 110 if (coal->use_adaptive_rx_coalesce) { in bnxt_set_coalesce() 126 hw_coal->coal_ticks = coal->rx_coalesce_usecs; in bnxt_set_coalesce() 138 hw_coal->coal_ticks = coal->tx_coalesce_usecs; in bnxt_set_coalesce() [all …]
|