Home
last modified time | relevance | path

Searched refs:pfvf (Results 1 – 25 of 29) sorted by relevance

12

/linux/drivers/net/ethernet/marvell/octeontx2/nic/
H A Dotx2_common.c22 static bool otx2_is_pfc_enabled(struct otx2_nic *pfvf) in otx2_is_pfc_enabled() argument
24 return IS_ENABLED(CONFIG_DCB) && !!pfvf->pfc_en; in otx2_is_pfc_enabled()
28 struct otx2_nic *pfvf, int qidx) in otx2_nix_rq_op_stats() argument
33 ptr = otx2_get_regaddr(pfvf, NIX_LF_RQ_OP_OCTS); in otx2_nix_rq_op_stats()
36 ptr = otx2_get_regaddr(pfvf, NIX_LF_RQ_OP_PKTS); in otx2_nix_rq_op_stats()
41 struct otx2_nic *pfvf, int qidx) in otx2_nix_sq_op_stats() argument
46 ptr = otx2_get_regaddr(pfvf, NIX_LF_SQ_OP_OCTS); in otx2_nix_sq_op_stats()
49 ptr = otx2_get_regaddr(pfvf, NIX_LF_SQ_OP_PKTS); in otx2_nix_sq_op_stats()
53 void otx2_update_lmac_stats(struct otx2_nic *pfvf) in otx2_update_lmac_stats() argument
57 if (!netif_running(pfvf->netdev)) in otx2_update_lmac_stats()
[all …]
H A Dqos_sq.c19 static void otx2_qos_aura_pool_free(struct otx2_nic *pfvf, int pool_id) in otx2_qos_aura_pool_free() argument
23 if (!pfvf->qset.pool) in otx2_qos_aura_pool_free()
26 pool = &pfvf->qset.pool[pool_id]; in otx2_qos_aura_pool_free()
27 qmem_free(pfvf->dev, pool->stack); in otx2_qos_aura_pool_free()
28 qmem_free(pfvf->dev, pool->fc_addr); in otx2_qos_aura_pool_free()
33 static int otx2_qos_sq_aura_pool_init(struct otx2_nic *pfvf, int qidx) in otx2_qos_sq_aura_pool_init() argument
35 struct otx2_qset *qset = &pfvf->qset; in otx2_qos_sq_aura_pool_init()
37 struct otx2_hw *hw = &pfvf->hw; in otx2_qos_sq_aura_pool_init()
56 pool_id = otx2_get_pool_idx(pfvf, AURA_NIX_SQ, qidx); in otx2_qos_sq_aura_pool_init()
57 pool = &pfvf->qset.pool[pool_id]; in otx2_qos_sq_aura_pool_init()
[all …]
H A Dqos.c26 static void otx2_qos_update_tx_netdev_queues(struct otx2_nic *pfvf) in otx2_qos_update_tx_netdev_queues() argument
28 struct otx2_hw *hw = &pfvf->hw; in otx2_qos_update_tx_netdev_queues()
31 qos_txqs = bitmap_weight(pfvf->qos.qos_sq_bmap, in otx2_qos_update_tx_netdev_queues()
36 err = netif_set_real_num_tx_queues(pfvf->netdev, tx_queues); in otx2_qos_update_tx_netdev_queues()
38 netdev_err(pfvf->netdev, in otx2_qos_update_tx_netdev_queues()
71 static int otx2_qos_quantum_to_dwrr_weight(struct otx2_nic *pfvf, u32 quantum) in otx2_qos_quantum_to_dwrr_weight() argument
75 weight = quantum / pfvf->hw.dwrr_mtu; in otx2_qos_quantum_to_dwrr_weight()
76 if (quantum % pfvf->hw.dwrr_mtu) in otx2_qos_quantum_to_dwrr_weight()
82 static void otx2_config_sched_shaping(struct otx2_nic *pfvf, in otx2_config_sched_shaping() argument
100 mtu_to_dwrr_weight(pfvf, pfvf->tx_max_pktlen); in otx2_config_sched_shaping()
[all …]
H A Dotx2_ethtool.c75 static struct cgx_fw_data *otx2_get_fwdata(struct otx2_nic *pfvf);
80 struct otx2_nic *pfvf = netdev_priv(netdev); in otx2_get_drvinfo() local
83 strscpy(info->bus_info, pci_name(pfvf->pdev), sizeof(info->bus_info)); in otx2_get_drvinfo()
86 static void otx2_get_qset_strings(struct otx2_nic *pfvf, u8 **data, int qset) in otx2_get_qset_strings() argument
88 int start_qidx = qset * pfvf->hw.rx_queues; in otx2_get_qset_strings()
91 for (qidx = 0; qidx < pfvf->hw.rx_queues; qidx++) in otx2_get_qset_strings()
96 for (qidx = 0; qidx < otx2_get_total_tx_queues(pfvf); qidx++) in otx2_get_qset_strings()
98 if (qidx >= pfvf->hw.non_qos_queues) in otx2_get_qset_strings()
101 pfvf->hw.non_qos_queues, in otx2_get_qset_strings()
111 struct otx2_nic *pfvf = netdev_priv(netdev); in otx2_get_strings() local
[all …]
H A Dotx2_txrx.c40 static bool otx2_xdp_rcv_pkt_handler(struct otx2_nic *pfvf,
57 static int otx2_nix_cq_op_status(struct otx2_nic *pfvf, in otx2_nix_cq_op_status() argument
63 status = otx2_atomic64_fetch_add(incr, pfvf->cq_op_addr); in otx2_nix_cq_op_status()
67 dev_err(pfvf->dev, "CQ stopped due to error"); in otx2_nix_cq_op_status()
105 static void otx2_xdp_snd_pkt_handler(struct otx2_nic *pfvf, in otx2_xdp_snd_pkt_handler() argument
120 otx2_dma_unmap_page(pfvf, sg->dma_addr[0], sg->size[0], DMA_TO_DEVICE); in otx2_xdp_snd_pkt_handler()
125 static void otx2_snd_pkt_handler(struct otx2_nic *pfvf, in otx2_snd_pkt_handler() argument
138 if (unlikely(snd_comp->status) && netif_msg_tx_err(pfvf)) in otx2_snd_pkt_handler()
140 pfvf->netdev->name, cq->cint_idx, in otx2_snd_pkt_handler()
151 timestamp = pfvf->ptp->convert_tx_ptp_tstmp(timestamp); in otx2_snd_pkt_handler()
[all …]
H A Dotx2_xsk.c17 int otx2_xsk_pool_alloc_buf(struct otx2_nic *pfvf, struct otx2_pool *pool, in otx2_xsk_pool_alloc_buf() argument
36 static int otx2_xsk_ctx_disable(struct otx2_nic *pfvf, u16 qidx, int aura_id) in otx2_xsk_ctx_disable() argument
43 if (test_bit(CN10K_LMTST, &pfvf->hw.cap_flag)) { in otx2_xsk_ctx_disable()
44 cn10k_rq_aq = otx2_mbox_alloc_msg_nix_cn10k_aq_enq(&pfvf->mbox); in otx2_xsk_ctx_disable()
53 rq_aq = otx2_mbox_alloc_msg_nix_aq_enq(&pfvf->mbox); in otx2_xsk_ctx_disable()
63 aura_aq = otx2_mbox_alloc_msg_npa_aq_enq(&pfvf->mbox); in otx2_xsk_ctx_disable()
73 pool_aq = otx2_mbox_alloc_msg_npa_aq_enq(&pfvf->mbox); in otx2_xsk_ctx_disable()
84 return otx2_sync_mbox_msg(&pfvf->mbox); in otx2_xsk_ctx_disable()
87 otx2_mbox_reset(&pfvf->mbox.mbox, 0); in otx2_xsk_ctx_disable()
91 static void otx2_clean_up_rq(struct otx2_nic *pfvf, int qidx) in otx2_clean_up_rq() argument
[all …]
H A Dcn10k.h13 static inline int mtu_to_dwrr_weight(struct otx2_nic *pfvf, int mtu) in mtu_to_dwrr_weight() argument
20 weight = mtu / pfvf->hw.dwrr_mtu; in mtu_to_dwrr_weight()
21 if (mtu % pfvf->hw.dwrr_mtu) in mtu_to_dwrr_weight()
30 int cn10k_lmtst_init(struct otx2_nic *pfvf);
31 int cn10k_free_all_ipolicers(struct otx2_nic *pfvf);
32 int cn10k_alloc_matchall_ipolicer(struct otx2_nic *pfvf);
33 int cn10k_free_matchall_ipolicer(struct otx2_nic *pfvf);
34 int cn10k_set_matchall_ipolicer_rate(struct otx2_nic *pfvf,
36 int cn10k_map_unmap_rq_policer(struct otx2_nic *pfvf, int rq_idx,
38 int cn10k_alloc_leaf_profile(struct otx2_nic *pfvf, u16 *leaf);
[all …]
H A Dotx2_ptp.c51 struct otx2_nic *pfvf = ptp->nic; in otx2_ptp_hw_adjtime() local
58 mutex_lock(&pfvf->mbox.lock); in otx2_ptp_hw_adjtime()
61 mutex_unlock(&pfvf->mbox.lock); in otx2_ptp_hw_adjtime()
67 mutex_unlock(&pfvf->mbox.lock); in otx2_ptp_hw_adjtime()
117 struct otx2_nic *pfvf = ptp->nic; in otx2_ptp_hw_settime() local
127 mutex_lock(&pfvf->mbox.lock); in otx2_ptp_hw_settime()
130 mutex_unlock(&pfvf->mbox.lock); in otx2_ptp_hw_settime()
137 mutex_unlock(&pfvf->mbox.lock); in otx2_ptp_hw_settime()
234 struct otx2_nic *pfvf = ptp->nic; in otx2_ptp_tc_adjtime() local
236 mutex_lock(&pfvf->mbox.lock); in otx2_ptp_tc_adjtime()
[all …]
H A Dotx2_ptp.h26 int otx2_ptp_init(struct otx2_nic *pfvf);
27 void otx2_ptp_destroy(struct otx2_nic *pfvf);
29 int otx2_ptp_clock_index(struct otx2_nic *pfvf);
30 int otx2_ptp_tstamp2time(struct otx2_nic *pfvf, u64 tstamp, u64 *tsns);
H A Dotx2_pf.c53 static int otx2_config_hw_tx_tstamp(struct otx2_nic *pfvf, bool enable);
54 static int otx2_config_hw_rx_tstamp(struct otx2_nic *pfvf, bool enable);
462 pf = vf_mbox->pfvf; in otx2_pfvf_mbox_handler()
499 struct otx2_nic *pf = vf_mbox->pfvf; in otx2_pfvf_mbox_up_handler()
652 mbox->pfvf = pf; in otx2_pfvf_mbox_init()
861 pf = af_mbox->pfvf; in otx2_pfaf_mbox_handler()
1010 struct otx2_nic *pf = af_mbox->pfvf; in otx2_pfaf_mbox_up_handler()
1205 mbox->pfvf = pf; in otx2_pfaf_mbox_init()
1276 int otx2_reset_mac_stats(struct otx2_nic *pfvf) in otx2_reset_mac_stats() argument
1281 mutex_lock(&pfvf->mbox.lock); in otx2_reset_mac_stats()
[all …]
H A Dqos.h26 int otx2_qos_get_qid(struct otx2_nic *pfvf);
27 void otx2_qos_free_qid(struct otx2_nic *pfvf, int qidx);
28 int otx2_qos_enable_sq(struct otx2_nic *pfvf, int qidx);
29 void otx2_qos_disable_sq(struct otx2_nic *pfvf, int qidx);
H A Dotx2_xsk.h17 int otx2_xsk_pool_alloc_buf(struct otx2_nic *pfvf, struct otx2_pool *pool,
20 void otx2_zc_napi_handler(struct otx2_nic *pfvf, struct xsk_buff_pool *pool,
22 void otx2_attach_xsk_buff(struct otx2_nic *pfvf, struct otx2_snd_queue *sq, int qidx);
H A Dcn10k_ipsec.h229 bool otx2_sqe_add_sg_ipsec(struct otx2_nic *pfvf, struct otx2_snd_queue *sq,
251 otx2_sqe_add_sg_ipsec(struct otx2_nic *pfvf, struct otx2_snd_queue *sq, in otx2_sqe_add_sg_ipsec() argument
/linux/drivers/net/ethernet/marvell/octeontx2/af/
H A Drvu_switch.c13 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_switch_enable_lbk_link() local
16 nix_hw = get_nix_hw(rvu->hw, pfvf->nix_blkaddr); in rvu_switch_enable_lbk_link()
18 rvu_nix_tx_tl2_cfg(rvu, pfvf->nix_blkaddr, pcifunc, in rvu_switch_enable_lbk_link()
27 struct rvu_pfvf *pfvf; in rvu_switch_install_rx_rule() local
29 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_switch_install_rx_rule()
34 if (!test_bit(NIXLF_INITIALIZED, &pfvf->flags)) in rvu_switch_install_rx_rule()
37 ether_addr_copy(req.packet.dmac, pfvf->mac_addr); in rvu_switch_install_rx_rule()
42 req.channel = pfvf->rx_chan_base; in rvu_switch_install_rx_rule()
44 req.intf = pfvf->nix_rx_intf; in rvu_switch_install_rx_rule()
55 struct rvu_pfvf *pfvf; in rvu_switch_install_tx_rule() local
[all …]
H A Drvu_sdp.c56 struct rvu_pfvf *pfvf; in rvu_sdp_init() local
61 pfvf = &rvu->pf[sdp_pf_num[0]]; in rvu_sdp_init()
62 pfvf->sdp_info = &rvu->fwdata->channel_data.info; in rvu_sdp_init()
72 pfvf = &rvu->pf[sdp_pf_num[i]]; in rvu_sdp_init()
74 pfvf->sdp_info = devm_kzalloc(rvu->dev, in rvu_sdp_init()
77 if (!pfvf->sdp_info) { in rvu_sdp_init()
97 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in rvu_mbox_handler_set_sdp_chan_info() local
99 memcpy(pfvf->sdp_info, &req->info, sizeof(struct sdp_node_info)); in rvu_mbox_handler_set_sdp_chan_info()
H A Drvu_nix.c110 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in is_nixlf_attached() local
114 if (!pfvf->nixlf || blkaddr < 0) in is_nixlf_attached()
135 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_get_nixlf() local
140 if (!pfvf->nixlf || blkaddr < 0) in nix_get_nixlf()
156 struct rvu_pfvf *pfvf; in nix_get_struct_ptrs() local
158 pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_get_struct_ptrs()
160 if (!pfvf->nixlf || *blkaddr < 0) in nix_get_struct_ptrs()
334 struct rvu_pfvf *parent_pf, *pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_interface_init() local
350 pfvf->cgx_lmac = rvu->pf2cgxlmac_map[pf]; in nix_interface_init()
351 rvu_get_cgx_lmac_id(pfvf->cgx_lmac, &cgx_id, &lmac_id); in nix_interface_init()
[all …]
H A Drvu_cn10k.c115 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_update_lmtaddr() local
134 if (!pfvf->lmt_base_addr) in rvu_update_lmtaddr()
135 pfvf->lmt_base_addr = val; in rvu_update_lmtaddr()
152 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in rvu_mbox_handler_lmtst_tbl_setup() local
223 if (!pfvf->lmt_map_ent_w1) in rvu_mbox_handler_lmtst_tbl_setup()
224 pfvf->lmt_map_ent_w1 = val; in rvu_mbox_handler_lmtst_tbl_setup()
256 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_reset_lmt_map_tbl() local
263 if (pfvf->lmt_base_addr || pfvf->lmt_map_ent_w1) { in rvu_reset_lmt_map_tbl()
269 if (pfvf->lmt_base_addr) { in rvu_reset_lmt_map_tbl()
271 &pfvf->lmt_base_addr, in rvu_reset_lmt_map_tbl()
[all …]
H A Drvu_rep.c38 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, event->pcifunc); in rvu_rep_up_notify() local
45 ether_addr_copy(pfvf->mac_addr, event->evt_data.mac); in rvu_rep_up_notify()
239 struct rvu_pfvf *pfvf; in rvu_rep_install_rx_rule() local
242 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_rep_install_rx_rule()
270 req.intf = pfvf->nix_rx_intf; in rvu_rep_install_rx_rule()
280 struct rvu_pfvf *pfvf; in rvu_rep_install_tx_rule() local
285 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_rep_install_tx_rule()
294 lbkid = pfvf->nix_blkaddr == BLKADDR_NIX0 ? 0 : 1; in rvu_rep_install_tx_rule()
305 req.intf = pfvf->nix_tx_intf; in rvu_rep_install_tx_rule()
415 struct rvu_pfvf *pfvf; in rvu_rep_pf_init() local
[all …]
H A Drvu_npc.c67 void rvu_npc_set_pkind(struct rvu *rvu, int pkind, struct rvu_pfvf *pfvf) in rvu_npc_set_pkind() argument
132 struct rvu_pfvf *pfvf; in npc_get_ucast_mcam_index() local
134 pfvf = rvu_get_pfvf(rvu, pcifunc); in npc_get_ucast_mcam_index()
140 if (pfvf->nix_blkaddr == blkaddr) in npc_get_ucast_mcam_index()
481 struct rvu_pfvf *pfvf; in npc_fixup_vf_rule() local
493 pfvf = rvu_get_pfvf(rvu, target_func); in npc_fixup_vf_rule()
498 test_bit(NIXLF_INITIALIZED, &pfvf->flags))) in npc_fixup_vf_rule()
707 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_npc_install_ucast_entry() local
725 if (!npc_is_feature_supported(rvu, BIT_ULL(NPC_DMAC), pfvf->nix_rx_intf)) in rvu_npc_install_ucast_entry()
754 req.intf = pfvf->nix_rx_intf; in rvu_npc_install_ucast_entry()
[all …]
H A Drvu_npc_fs.c1323 static int npc_update_rx_entry(struct rvu *rvu, struct rvu_pfvf *pfvf, in npc_update_rx_entry() argument
1351 if (pfvf->def_ucast_rule) { in npc_update_rx_entry()
1352 action = pfvf->def_ucast_rule->rx_action; in npc_update_rx_entry()
1384 static int npc_update_tx_entry(struct rvu *rvu, struct rvu_pfvf *pfvf, in npc_update_tx_entry() argument
1429 int nixlf, struct rvu_pfvf *pfvf, in npc_install_flow() argument
1434 struct rvu_npc_mcam_rule *def_ucast_rule = pfvf->def_ucast_rule; in npc_install_flow()
1463 err = npc_update_rx_entry(rvu, pfvf, &mdata, req, target, in npc_install_flow()
1468 err = npc_update_tx_entry(rvu, pfvf, &mdata, req, target); in npc_install_flow()
1599 rule->intf = pfvf->nix_tx_intf; in npc_install_flow()
1601 rule->intf = pfvf->nix_rx_intf; in npc_install_flow()
[all …]
H A Drvu_cgx.c111 struct rvu_pfvf *pfvf = &rvu->pf[pf]; in rvu_map_cgx_nix_block() local
116 pfvf->nix_blkaddr = BLKADDR_NIX0; in rvu_map_cgx_nix_block()
118 pfvf->nix_blkaddr = BLKADDR_NIX1; in rvu_map_cgx_nix_block()
685 struct rvu_pfvf *pfvf; in rvu_mbox_handler_cgx_mac_addr_set() local
696 pfvf = &rvu->pf[pf]; in rvu_mbox_handler_cgx_mac_addr_set()
697 ether_addr_copy(pfvf->mac_addr, req->mac_addr); in rvu_mbox_handler_cgx_mac_addr_set()
775 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in rvu_mbox_handler_cgx_mac_addr_get() local
780 ether_addr_copy(rsp->mac_addr, pfvf->mac_addr); in rvu_mbox_handler_cgx_mac_addr_get()
825 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_cgx_ptp_rx_cfg() local
852 pfvf->hw_rx_tstamp_en = enable; in rvu_cgx_ptp_rx_cfg()
[all …]
H A Dmcs_rvu_if.c94 struct mcs_pfvf *pfvf; in mcs_add_intr_wq_entry() local
98 pfvf = &mcs->vf[rvu_get_hwvf(rvu, pcifunc)]; in mcs_add_intr_wq_entry()
100 pfvf = &mcs->pf[rvu_get_pf(rvu->pdev, pcifunc)]; in mcs_add_intr_wq_entry()
102 event->intr_mask &= pfvf->intr_mask; in mcs_add_intr_wq_entry()
105 if (!(pfvf->intr_mask && event->intr_mask)) in mcs_add_intr_wq_entry()
184 struct mcs_pfvf *pfvf; in rvu_mbox_handler_mcs_intr_cfg() local
194 pfvf = &mcs->vf[rvu_get_hwvf(rvu, pcifunc)]; in rvu_mbox_handler_mcs_intr_cfg()
196 pfvf = &mcs->pf[rvu_get_pf(rvu->pdev, pcifunc)]; in rvu_mbox_handler_mcs_intr_cfg()
199 pfvf->intr_mask = req->intr_mask; in rvu_mbox_handler_mcs_intr_cfg()
/linux/drivers/net/ethernet/chelsio/cxgb4/
H A Dsmt.c209 static struct smt_entry *t4_smt_alloc_switching(struct adapter *adap, u16 pfvf, in t4_smt_alloc_switching() argument
222 e->pfvf = pfvf; in t4_smt_alloc_switching()
H A Dsmt.h60 u16 pfvf; member
/linux/drivers/net/ethernet/marvell/octeontx2/af/cn20k/
H A Dnpc.c1347 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in rvu_mbox_handler_npc_cn20k_mcam_write_entry() local
1370 nix_intf = pfvf->nix_tx_intf; in rvu_mbox_handler_npc_cn20k_mcam_write_entry()
1372 nix_intf = pfvf->nix_rx_intf; in rvu_mbox_handler_npc_cn20k_mcam_write_entry()
1418 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in rvu_mbox_handler_npc_cn20k_mcam_alloc_and_write_entry() local
1457 nix_intf = pfvf->nix_tx_intf; in rvu_mbox_handler_npc_cn20k_mcam_alloc_and_write_entry()
1459 nix_intf = pfvf->nix_rx_intf; in rvu_mbox_handler_npc_cn20k_mcam_alloc_and_write_entry()
1498 struct rvu_pfvf *pfvf; in rvu_mbox_handler_npc_cn20k_read_base_steer_rule() local
1507 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_npc_cn20k_read_base_steer_rule()
1508 rsp->entry.kw[0] = pfvf->rx_chan_base; in rvu_mbox_handler_npc_cn20k_read_base_steer_rule()
4301 struct rvu_pfvf *pfvf; in npc_cn20k_dft_rules_alloc() local
[all …]

12