Lines Matching refs:vport
22 struct idpf_vport *vport; in idpf_get_rxnfc() local
27 vport = idpf_netdev_to_vport(netdev); in idpf_get_rxnfc()
32 cmd->data = vport->num_rxq; in idpf_get_rxnfc()
36 cmd->data = idpf_fsteer_max_rules(vport); in idpf_get_rxnfc()
48 cmd->data = idpf_fsteer_max_rules(vport); in idpf_get_rxnfc()
152 struct idpf_vport *vport; in idpf_add_flow_steer() local
157 vport = idpf_netdev_to_vport(netdev); in idpf_add_flow_steer()
158 vport_config = vport->adapter->vport_config[np->vport_idx]; in idpf_add_flow_steer()
166 if (!idpf_sideband_action_ena(vport, fsp) || in idpf_add_flow_steer()
167 !idpf_sideband_flow_type_ena(vport, flow_type)) in idpf_add_flow_steer()
170 if (user_config->num_fsteer_fltrs > idpf_fsteer_max_rules(vport)) in idpf_add_flow_steer()
181 rule->vport_id = cpu_to_le32(vport->vport_id); in idpf_add_flow_steer()
209 err = idpf_add_del_fsteer_filters(vport->adapter, rule, in idpf_add_flow_steer()
260 struct idpf_vport *vport; in idpf_del_flow_steer() local
263 vport = idpf_netdev_to_vport(netdev); in idpf_del_flow_steer()
264 vport_config = vport->adapter->vport_config[np->vport_idx]; in idpf_del_flow_steer()
267 if (!idpf_sideband_action_ena(vport, fsp)) in idpf_del_flow_steer()
274 rule->vport_id = cpu_to_le32(vport->vport_id); in idpf_del_flow_steer()
279 err = idpf_add_del_fsteer_filters(vport->adapter, rule, in idpf_del_flow_steer()
424 struct idpf_vport *vport; in idpf_set_rxfh() local
429 vport = idpf_netdev_to_vport(netdev); in idpf_set_rxfh()
431 adapter = vport->adapter; in idpf_set_rxfh()
438 rss_data = &adapter->vport_config[vport->idx]->user_config.rss_data; in idpf_set_rxfh()
456 err = idpf_config_rss(vport); in idpf_set_rxfh()
515 struct idpf_vport *vport; in idpf_set_channels() local
527 vport = idpf_netdev_to_vport(netdev); in idpf_set_channels()
529 idx = vport->idx; in idpf_set_channels()
530 vport_config = vport->adapter->vport_config[idx]; in idpf_set_channels()
538 dev = &vport->adapter->pdev->dev; in idpf_set_channels()
562 err = idpf_initiate_soft_reset(vport, IDPF_SR_Q_CHANGE); in idpf_set_channels()
590 struct idpf_vport *vport; in idpf_get_ringparam() local
593 vport = idpf_netdev_to_vport(netdev); in idpf_get_ringparam()
597 ring->rx_pending = vport->rxq_desc_count; in idpf_get_ringparam()
598 ring->tx_pending = vport->txq_desc_count; in idpf_get_ringparam()
600 kring->tcp_data_split = idpf_vport_get_hsplit(vport); in idpf_get_ringparam()
622 struct idpf_vport *vport; in idpf_set_ringparam() local
627 vport = idpf_netdev_to_vport(netdev); in idpf_set_ringparam()
629 idx = vport->idx; in idpf_set_ringparam()
657 if (new_tx_count == vport->txq_desc_count && in idpf_set_ringparam()
658 new_rx_count == vport->rxq_desc_count && in idpf_set_ringparam()
659 kring->tcp_data_split == idpf_vport_get_hsplit(vport)) in idpf_set_ringparam()
662 if (!idpf_vport_set_hsplit(vport, kring->tcp_data_split)) { in idpf_set_ringparam()
670 config_data = &vport->adapter->vport_config[idx]->user_config; in idpf_set_ringparam()
677 for (i = 0; i < vport->num_bufqs_per_qgrp; i++) in idpf_set_ringparam()
678 vport->bufq_desc_count[i] = in idpf_set_ringparam()
680 vport->num_bufqs_per_qgrp); in idpf_set_ringparam()
682 err = idpf_initiate_soft_reset(vport, IDPF_SR_Q_DESC_CHANGE); in idpf_set_ringparam()
1033 static void idpf_add_port_stats(struct idpf_vport *vport, u64 **data) in idpf_add_port_stats() argument
1040 start = u64_stats_fetch_begin(&vport->port_stats.stats_sync); in idpf_add_port_stats()
1042 idpf_add_one_ethtool_stat(&(*data)[i], vport, in idpf_add_port_stats()
1044 } while (u64_stats_fetch_retry(&vport->port_stats.stats_sync, start)); in idpf_add_port_stats()
1054 static void idpf_collect_queue_stats(struct idpf_vport *vport) in idpf_collect_queue_stats() argument
1056 struct idpf_port_stats *pstats = &vport->port_stats; in idpf_collect_queue_stats()
1073 for (i = 0; i < vport->num_rxq_grp; i++) { in idpf_collect_queue_stats()
1074 struct idpf_rxq_group *rxq_grp = &vport->rxq_grps[i]; in idpf_collect_queue_stats()
1077 if (idpf_is_queue_model_split(vport->rxq_model)) in idpf_collect_queue_stats()
1088 if (idpf_is_queue_model_split(vport->rxq_model)) in idpf_collect_queue_stats()
1115 for (i = 0; i < vport->num_txq_grp; i++) { in idpf_collect_queue_stats()
1116 struct idpf_txq_group *txq_grp = &vport->txq_grps[i]; in idpf_collect_queue_stats()
1161 struct idpf_vport *vport; in idpf_get_ethtool_stats() local
1168 vport = idpf_netdev_to_vport(netdev); in idpf_get_ethtool_stats()
1178 idpf_collect_queue_stats(vport); in idpf_get_ethtool_stats()
1179 idpf_add_port_stats(vport, &data); in idpf_get_ethtool_stats()
1181 for (i = 0; i < vport->num_txq_grp; i++) { in idpf_get_ethtool_stats()
1182 struct idpf_txq_group *txq_grp = &vport->txq_grps[i]; in idpf_get_ethtool_stats()
1196 vport_config = vport->adapter->vport_config[vport->idx]; in idpf_get_ethtool_stats()
1206 is_splitq = idpf_is_queue_model_split(vport->rxq_model); in idpf_get_ethtool_stats()
1208 for (i = 0; i < vport->num_rxq_grp; i++) { in idpf_get_ethtool_stats()
1209 struct idpf_rxq_group *rxq_grp = &vport->rxq_grps[i]; in idpf_get_ethtool_stats()
1248 static struct idpf_q_vector *idpf_find_rxq_vec(const struct idpf_vport *vport, in idpf_find_rxq_vec() argument
1253 if (!idpf_is_queue_model_split(vport->rxq_model)) in idpf_find_rxq_vec()
1254 return vport->rxq_grps->singleq.rxqs[q_num]->q_vector; in idpf_find_rxq_vec()
1259 return vport->rxq_grps[q_grp].splitq.rxq_sets[q_idx]->rxq.q_vector; in idpf_find_rxq_vec()
1269 static struct idpf_q_vector *idpf_find_txq_vec(const struct idpf_vport *vport, in idpf_find_txq_vec() argument
1274 if (!idpf_is_queue_model_split(vport->txq_model)) in idpf_find_txq_vec()
1275 return vport->txqs[q_num]->q_vector; in idpf_find_txq_vec()
1279 return vport->txq_grps[q_grp].complq->q_vector; in idpf_find_txq_vec()
1316 const struct idpf_vport *vport; in idpf_get_q_coalesce() local
1320 vport = idpf_netdev_to_vport(netdev); in idpf_get_q_coalesce()
1325 if (q_num >= vport->num_rxq && q_num >= vport->num_txq) { in idpf_get_q_coalesce()
1330 if (q_num < vport->num_rxq) in idpf_get_q_coalesce()
1331 __idpf_get_q_coalesce(ec, idpf_find_rxq_vec(vport, q_num), in idpf_get_q_coalesce()
1334 if (q_num < vport->num_txq) in idpf_get_q_coalesce()
1335 __idpf_get_q_coalesce(ec, idpf_find_txq_vec(vport, q_num), in idpf_get_q_coalesce()
1406 netdev_err(qv->vport->netdev, "Cannot set coalesce usecs if adaptive enabled\n"); in __idpf_set_q_coalesce()
1415 netdev_err(qv->vport->netdev, in __idpf_set_q_coalesce()
1424 netdev_info(qv->vport->netdev, in __idpf_set_q_coalesce()
1469 static int idpf_set_q_coalesce(const struct idpf_vport *vport, in idpf_set_q_coalesce() argument
1476 qv = is_rxq ? idpf_find_rxq_vec(vport, q_num) : in idpf_set_q_coalesce()
1477 idpf_find_txq_vec(vport, q_num); in idpf_set_q_coalesce()
1502 struct idpf_vport *vport; in idpf_set_coalesce() local
1508 vport = idpf_netdev_to_vport(netdev); in idpf_set_coalesce()
1513 for (i = 0; i < vport->num_txq; i++) { in idpf_set_coalesce()
1515 err = idpf_set_q_coalesce(vport, q_coal, ec, i, false); in idpf_set_coalesce()
1520 for (i = 0; i < vport->num_rxq; i++) { in idpf_set_coalesce()
1522 err = idpf_set_q_coalesce(vport, q_coal, ec, i, true); in idpf_set_coalesce()
1547 struct idpf_vport *vport; in idpf_set_per_q_coalesce() local
1551 vport = idpf_netdev_to_vport(netdev); in idpf_set_per_q_coalesce()
1555 err = idpf_set_q_coalesce(vport, q_coal, ec, q_num, false); in idpf_set_per_q_coalesce()
1562 err = idpf_set_q_coalesce(vport, q_coal, ec, q_num, true); in idpf_set_per_q_coalesce()
1630 static void idpf_get_timestamp_filters(const struct idpf_vport *vport, in idpf_get_timestamp_filters() argument
1639 if (!vport->tx_tstamp_caps || in idpf_get_timestamp_filters()
1640 vport->adapter->ptp->tx_tstamp_access == IDPF_PTP_NONE) in idpf_get_timestamp_filters()
1660 struct idpf_vport *vport; in idpf_get_ts_info() local
1666 vport = idpf_netdev_to_vport(netdev); in idpf_get_ts_info()
1668 if (!vport->adapter->ptp) { in idpf_get_ts_info()
1673 if (idpf_is_cap_ena(vport->adapter, IDPF_OTHER_CAPS, VIRTCHNL2_CAP_PTP) && in idpf_get_ts_info()
1674 vport->adapter->ptp->clock) { in idpf_get_ts_info()
1675 info->phc_index = ptp_clock_index(vport->adapter->ptp->clock); in idpf_get_ts_info()
1676 idpf_get_timestamp_filters(vport, info); in idpf_get_ts_info()
1678 pci_dbg(vport->adapter->pdev, "PTP clock not detected\n"); in idpf_get_ts_info()