Lines Matching refs:pcifunc

19 static void nix_free_tx_vtag_entries(struct rvu *rvu, u16 pcifunc);
22 static int nix_update_mce_rule(struct rvu *rvu, u16 pcifunc,
28 struct nix_hw *nix_hw, u16 pcifunc);
29 static int nix_free_all_bandprof(struct rvu *rvu, u16 pcifunc);
79 u16 pcifunc; member
99 bool is_nixlf_attached(struct rvu *rvu, u16 pcifunc) in is_nixlf_attached() argument
101 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in is_nixlf_attached()
104 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in is_nixlf_attached()
124 int nix_get_nixlf(struct rvu *rvu, u16 pcifunc, int *nixlf, int *nix_blkaddr) in nix_get_nixlf() argument
126 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_get_nixlf()
130 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in nix_get_nixlf()
134 *nixlf = rvu_get_lf(rvu, &hw->block[blkaddr], pcifunc, 0); in nix_get_nixlf()
144 int nix_get_struct_ptrs(struct rvu *rvu, u16 pcifunc, in nix_get_struct_ptrs() argument
149 pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_get_struct_ptrs()
150 *blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in nix_get_struct_ptrs()
258 int lvl, u16 pcifunc, u16 schq) in is_valid_txschq() argument
280 if (rvu_get_pf(map_func) != rvu_get_pf(pcifunc)) in is_valid_txschq()
286 if (map_func != pcifunc) in is_valid_txschq()
292 static int nix_interface_init(struct rvu *rvu, u16 pcifunc, int type, int nixlf, in nix_interface_init() argument
295 struct rvu_pfvf *parent_pf, *pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_interface_init()
304 pf = rvu_get_pf(pcifunc); in nix_interface_init()
317 "PF_Func 0x%x: Invalid pkind\n", pcifunc); in nix_interface_init()
331 vf = (pcifunc & RVU_PFVF_FUNC_MASK) - 1; in nix_interface_init()
375 rvu_npc_install_promisc_entry(rvu, pcifunc, nixlf, in nix_interface_init()
381 from_vf = !!(pcifunc & RVU_PFVF_FUNC_MASK); in nix_interface_init()
382 parent_pf = &rvu->pf[rvu_get_pf(pcifunc)]; in nix_interface_init()
391 vf = (pcifunc & RVU_PFVF_FUNC_MASK) - 1; in nix_interface_init()
400 pcifunc); in nix_interface_init()
414 rvu_npc_install_promisc_entry(rvu, pcifunc, nixlf, in nix_interface_init()
423 rvu_npc_install_ucast_entry(rvu, pcifunc, nixlf, in nix_interface_init()
427 err = nix_update_mce_rule(rvu, pcifunc, NIXLF_BCAST_ENTRY, true); in nix_interface_init()
431 pcifunc); in nix_interface_init()
435 rvu_npc_install_bcast_match_entry(rvu, pcifunc, in nix_interface_init()
444 static void nix_interface_deinit(struct rvu *rvu, u16 pcifunc, u8 nixlf) in nix_interface_deinit() argument
446 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_interface_deinit()
453 err = nix_update_mce_rule(rvu, pcifunc, NIXLF_BCAST_ENTRY, false); in nix_interface_deinit()
457 pcifunc); in nix_interface_deinit()
461 rvu_npc_disable_mcam_entries(rvu, pcifunc, nixlf); in nix_interface_deinit()
464 rvu_cgx_disable_dmac_entries(rvu, pcifunc); in nix_interface_deinit()
471 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_bp_disable() local
477 pf = rvu_get_pf(pcifunc); in rvu_mbox_handler_nix_bp_disable()
478 type = is_afvf(pcifunc) ? NIX_INTF_TYPE_LBK : NIX_INTF_TYPE_CGX; in rvu_mbox_handler_nix_bp_disable()
482 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_bp_disable()
483 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_bp_disable()
504 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, req->hdr.pcifunc); in rvu_nix_get_bpid()
515 pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in rvu_nix_get_bpid()
573 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_bp_enable() local
579 pf = rvu_get_pf(pcifunc); in rvu_mbox_handler_nix_bp_enable()
580 type = is_afvf(pcifunc) ? NIX_INTF_TYPE_LBK : NIX_INTF_TYPE_CGX; in rvu_mbox_handler_nix_bp_enable()
581 if (is_sdp_pfvf(pcifunc)) in rvu_mbox_handler_nix_bp_enable()
589 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_bp_enable()
590 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_bp_enable()
842 u16 pcifunc = req->hdr.pcifunc; in rvu_nix_blk_aq_enq_inst() local
860 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_nix_blk_aq_enq_inst()
861 nixlf = rvu_get_lf(rvu, block, pcifunc, 0); in rvu_nix_blk_aq_enq_inst()
867 (req->ctype == NIX_AQ_CTYPE_BANDPROF && !pcifunc))) { in rvu_nix_blk_aq_enq_inst()
909 nix_hw, pcifunc)) in rvu_nix_blk_aq_enq_inst()
925 pcifunc, req->sq.smq)) in rvu_nix_blk_aq_enq_inst()
1083 req->hdr.pcifunc, ctype, req->qidx); in rvu_nix_verify_aq_ctx()
1088 req->hdr.pcifunc); in rvu_nix_verify_aq_ctx()
1136 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, req->hdr.pcifunc); in rvu_nix_aq_enq_inst()
1181 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, req->hdr.pcifunc); in nix_lf_hwctx_disable()
1191 aq_req.hdr.pcifunc = req->hdr.pcifunc; in nix_lf_hwctx_disable()
1246 lock_ctx_req.hdr.pcifunc = req->hdr.pcifunc; in nix_lf_hwctx_lockdown()
1254 req->hdr.pcifunc, in nix_lf_hwctx_lockdown()
1301 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_lf_alloc() local
1313 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_lf_alloc()
1314 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_lf_alloc()
1319 nixlf = rvu_get_lf(rvu, block, pcifunc, 0); in rvu_mbox_handler_nix_lf_alloc()
1327 req->npa_func = pcifunc; in rvu_mbox_handler_nix_lf_alloc()
1336 req->sso_func = pcifunc; in rvu_mbox_handler_nix_lf_alloc()
1474 intf = is_afvf(pcifunc) ? NIX_INTF_TYPE_LBK : NIX_INTF_TYPE_CGX; in rvu_mbox_handler_nix_lf_alloc()
1475 if (is_sdp_pfvf(pcifunc)) in rvu_mbox_handler_nix_lf_alloc()
1478 err = nix_interface_init(rvu, pcifunc, intf, nixlf, rsp, in rvu_mbox_handler_nix_lf_alloc()
1484 rvu_npc_disable_default_entries(rvu, pcifunc, nixlf); in rvu_mbox_handler_nix_lf_alloc()
1529 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_lf_free() local
1534 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_lf_free()
1535 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_lf_free()
1540 nixlf = rvu_get_lf(rvu, block, pcifunc, 0); in rvu_mbox_handler_nix_lf_free()
1545 rvu_npc_disable_mcam_entries(rvu, pcifunc, nixlf); in rvu_mbox_handler_nix_lf_free()
1547 rvu_npc_free_mcam_entries(rvu, pcifunc, nixlf); in rvu_mbox_handler_nix_lf_free()
1551 nix_free_tx_vtag_entries(rvu, pcifunc); in rvu_mbox_handler_nix_lf_free()
1553 nix_interface_deinit(rvu, pcifunc, nixlf); in rvu_mbox_handler_nix_lf_free()
1572 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_mark_format_cfg() local
1578 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_mark_format_cfg()
1579 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_mark_format_cfg()
1595 rvu_get_pf(pcifunc), pcifunc & RVU_PFVF_FUNC_MASK); in rvu_mbox_handler_nix_mark_format_cfg()
1808 static int nix_get_tx_link(struct rvu *rvu, u16 pcifunc) in nix_get_tx_link() argument
1811 int pf = rvu_get_pf(pcifunc); in nix_get_tx_link()
1814 if (is_afvf(pcifunc)) {/* LBK links */ in nix_get_tx_link()
1825 static void nix_get_txschq_range(struct rvu *rvu, u16 pcifunc, in nix_get_txschq_range() argument
1829 int pf = rvu_get_pf(pcifunc); in nix_get_txschq_range()
1831 if (is_afvf(pcifunc)) { /* LBK links */ in nix_get_txschq_range()
1844 static int nix_check_txschq_alloc_req(struct rvu *rvu, int lvl, u16 pcifunc, in nix_check_txschq_alloc_req() argument
1859 link = nix_get_tx_link(rvu, pcifunc); in nix_check_txschq_alloc_req()
1870 nix_get_txschq_range(rvu, pcifunc, link, &start, &end); in nix_check_txschq_alloc_req()
1871 schq = start + (pcifunc & RVU_PFVF_FUNC_MASK); in nix_check_txschq_alloc_req()
1897 u16 pcifunc = rsp->hdr.pcifunc; in nix_txsch_alloc() local
1925 idx = pcifunc & RVU_PFVF_FUNC_MASK; in nix_txsch_alloc()
1981 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_txsch_alloc() local
1990 rc = nix_get_nixlf(rvu, pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_txsch_alloc()
2004 rc = nix_check_txschq_alloc_req(rvu, lvl, pcifunc, nix_hw, req); in rvu_mbox_handler_nix_txsch_alloc()
2020 link = nix_get_tx_link(rvu, pcifunc); in rvu_mbox_handler_nix_txsch_alloc()
2026 nix_get_txschq_range(rvu, pcifunc, link, &start, &end); in rvu_mbox_handler_nix_txsch_alloc()
2039 pfvf_map[schq] = TXSCH_MAP(pcifunc, 0); in rvu_mbox_handler_nix_txsch_alloc()
2048 pfvf_map[schq] = TXSCH_MAP(pcifunc, 0); in rvu_mbox_handler_nix_txsch_alloc()
2068 int smq, u16 pcifunc, int nixlf) in nix_smq_flush() argument
2070 int pf = rvu_get_pf(pcifunc); in nix_smq_flush()
2113 static int nix_txschq_free(struct rvu *rvu, u16 pcifunc) in nix_txschq_free() argument
2121 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in nix_txschq_free()
2129 nixlf = rvu_get_lf(rvu, &hw->block[blkaddr], pcifunc, 0); in nix_txschq_free()
2142 if (TXSCH_MAP_FUNC(txsch->pfvf_map[schq]) != pcifunc) in nix_txschq_free()
2149 nix_get_tx_link(rvu, pcifunc)); in nix_txschq_free()
2154 if (!(pcifunc & RVU_PFVF_FUNC_MASK)) { in nix_txschq_free()
2156 schq = nix_get_tx_link(rvu, pcifunc); in nix_txschq_free()
2167 if (TXSCH_MAP_FUNC(txsch->pfvf_map[schq]) != pcifunc) in nix_txschq_free()
2169 nix_smq_flush(rvu, blkaddr, schq, pcifunc, nixlf); in nix_txschq_free()
2182 if (TXSCH_MAP_FUNC(txsch->pfvf_map[schq]) != pcifunc) in nix_txschq_free()
2203 u16 pcifunc = req->hdr.pcifunc; in nix_txschq_free_one() local
2210 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in nix_txschq_free_one()
2218 nixlf = rvu_get_lf(rvu, &hw->block[blkaddr], pcifunc, 0); in nix_txschq_free_one()
2232 if (TXSCH_MAP_FUNC(pfvf_map[schq]) != pcifunc) { in nix_txschq_free_one()
2247 nix_smq_flush(rvu, blkaddr, schq, pcifunc, nixlf)) { in nix_txschq_free_one()
2267 return nix_txschq_free(rvu, req->hdr.pcifunc); in rvu_mbox_handler_nix_txsch_free()
2272 static bool is_txschq_hierarchy_valid(struct rvu *rvu, u16 pcifunc, int blkaddr, in is_txschq_hierarchy_valid() argument
2283 if (!is_valid_txschq(rvu, blkaddr, lvl, pcifunc, schq)) in is_txschq_hierarchy_valid()
2289 !is_valid_txschq(rvu, blkaddr, NIX_TXSCH_LVL_TL4, pcifunc, parent)) in is_txschq_hierarchy_valid()
2294 !is_valid_txschq(rvu, blkaddr, NIX_TXSCH_LVL_TL3, pcifunc, parent)) in is_txschq_hierarchy_valid()
2299 !is_valid_txschq(rvu, blkaddr, NIX_TXSCH_LVL_TL2, pcifunc, parent)) in is_txschq_hierarchy_valid()
2304 !is_valid_txschq(rvu, blkaddr, NIX_TXSCH_LVL_TL1, pcifunc, parent)) in is_txschq_hierarchy_valid()
2352 u16 pcifunc, int blkaddr) in nix_tl1_default_cfg() argument
2357 schq = nix_get_tx_link(rvu, pcifunc); in nix_tl1_default_cfg()
2388 u16 pcifunc = req->hdr.pcifunc; in nix_txschq_cfg_read() local
2397 !is_valid_txschq(rvu, blkaddr, req->lvl, pcifunc, schq)) in nix_txschq_cfg_read()
2407 u16 pcifunc, struct nix_txsch *txsch) in rvu_nix_tx_tl2_cfg() argument
2411 u8 pf = rvu_get_pf(pcifunc); in rvu_nix_tx_tl2_cfg()
2420 if (TXSCH_MAP_FUNC(txsch->pfvf_map[schq]) != pcifunc) in rvu_nix_tx_tl2_cfg()
2441 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_txschq_cfg() local
2452 err = nix_get_nixlf(rvu, pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_txschq_cfg()
2467 pcifunc & RVU_PFVF_FUNC_MASK) { in rvu_mbox_handler_nix_txschq_cfg()
2470 nix_tl1_default_cfg(rvu, nix_hw, pcifunc, blkaddr); in rvu_mbox_handler_nix_txschq_cfg()
2482 if (!is_txschq_hierarchy_valid(rvu, pcifunc, blkaddr, in rvu_mbox_handler_nix_txschq_cfg()
2502 pcifunc, 0); in rvu_mbox_handler_nix_txschq_cfg()
2531 nix_smq_flush(rvu, blkaddr, schq, pcifunc, nixlf); in rvu_mbox_handler_nix_txschq_cfg()
2537 rvu_nix_tx_tl2_cfg(rvu, blkaddr, pcifunc, in rvu_mbox_handler_nix_txschq_cfg()
2566 u16 pcifunc, int index) in nix_tx_vtag_free() argument
2575 if (vlan->entry2pfvf_map[index] != pcifunc) in nix_tx_vtag_free()
2589 static void nix_free_tx_vtag_entries(struct rvu *rvu, u16 pcifunc) in nix_free_tx_vtag_entries() argument
2595 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in nix_free_tx_vtag_entries()
2608 if (vlan->entry2pfvf_map[index] == pcifunc) in nix_free_tx_vtag_entries()
2609 nix_tx_vtag_free(rvu, blkaddr, pcifunc, index); in nix_free_tx_vtag_entries()
2651 u16 pcifunc = req->hdr.pcifunc; in nix_tx_vtag_decfg() local
2662 if (vlan->entry2pfvf_map[idx0] != pcifunc || in nix_tx_vtag_decfg()
2663 vlan->entry2pfvf_map[idx1] != pcifunc) in nix_tx_vtag_decfg()
2669 err = nix_tx_vtag_free(rvu, blkaddr, pcifunc, idx0); in nix_tx_vtag_decfg()
2675 err = nix_tx_vtag_free(rvu, blkaddr, pcifunc, idx1); in nix_tx_vtag_decfg()
2688 u16 pcifunc = req->hdr.pcifunc; in nix_tx_vtag_cfg() local
2702 vlan->entry2pfvf_map[rsp->vtag0_idx] = pcifunc; in nix_tx_vtag_cfg()
2713 vlan->entry2pfvf_map[rsp->vtag1_idx] = pcifunc; in nix_tx_vtag_cfg()
2720 nix_tx_vtag_free(rvu, blkaddr, pcifunc, rsp->vtag0_idx); in nix_tx_vtag_cfg()
2729 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_vtag_cfg() local
2732 err = nix_get_nixlf(rvu, pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_vtag_cfg()
2758 int mce, u8 op, u16 pcifunc, int next, bool eol) in nix_blk_setup_mce() argument
2763 aq_req.hdr.pcifunc = 0; in nix_blk_setup_mce()
2772 aq_req.mce.pf_func = pcifunc; in nix_blk_setup_mce()
2781 rvu_get_pf(pcifunc), pcifunc & RVU_PFVF_FUNC_MASK); in nix_blk_setup_mce()
2788 u16 pcifunc, bool add) in nix_update_mce_list_entry() argument
2796 if (mce->pcifunc == pcifunc && !add) { in nix_update_mce_list_entry()
2799 } else if (mce->pcifunc == pcifunc && add) { in nix_update_mce_list_entry()
2820 mce->pcifunc = pcifunc; in nix_update_mce_list_entry()
2829 int nix_update_mce_list(struct rvu *rvu, u16 pcifunc, in nix_update_mce_list() argument
2843 idx = mce_idx + (pcifunc & RVU_PFVF_FUNC_MASK); in nix_update_mce_list()
2849 pcifunc >> RVU_PFVF_PF_SHIFT); in nix_update_mce_list()
2853 err = nix_get_struct_ptrs(rvu, pcifunc, &nix_hw, &blkaddr); in nix_update_mce_list()
2860 err = nix_update_mce_list_entry(mce_list, pcifunc, add); in nix_update_mce_list()
2881 mce->pcifunc, next_idx, in nix_update_mce_list()
2893 void nix_get_mce_list(struct rvu *rvu, u16 pcifunc, int type, in nix_get_mce_list() argument
2900 !is_pf_cgxmapped(rvu, rvu_get_pf(pcifunc & ~RVU_PFVF_FUNC_MASK))) { in nix_get_mce_list()
2907 pfvf = rvu_get_pfvf(rvu, pcifunc & ~RVU_PFVF_FUNC_MASK); in nix_get_mce_list()
2924 static int nix_update_mce_rule(struct rvu *rvu, u16 pcifunc, in nix_update_mce_rule() argument
2934 if (is_afvf(pcifunc) || is_sdp_pfvf(pcifunc)) in nix_update_mce_rule()
2940 pf = rvu_get_pf(pcifunc); in nix_update_mce_rule()
2944 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in nix_update_mce_rule()
2948 nixlf = rvu_get_lf(rvu, &hw->block[blkaddr], pcifunc, 0); in nix_update_mce_rule()
2952 nix_get_mce_list(rvu, pcifunc, type, &mce_list, &mce_idx); in nix_update_mce_rule()
2955 pcifunc & ~RVU_PFVF_FUNC_MASK, in nix_update_mce_rule()
2957 err = nix_update_mce_list(rvu, pcifunc, mce_list, in nix_update_mce_rule()
2967 u16 pcifunc; in nix_setup_mce_tables() local
2999 pcifunc = (pf << RVU_PFVF_PF_SHIFT); in nix_setup_mce_tables()
3000 pcifunc |= idx; in nix_setup_mce_tables()
3009 pcifunc, 0, true); in nix_setup_mce_tables()
3017 pcifunc, 0, true); in nix_setup_mce_tables()
3025 pcifunc, 0, true); in nix_setup_mce_tables()
3235 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_get_hw_info() local
3239 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_get_hw_info()
3243 if (is_afvf(pcifunc)) in rvu_mbox_handler_nix_get_hw_info()
3269 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_stats_rst() local
3273 err = nix_get_nixlf(rvu, pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_stats_rst()
3605 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_rss_flowkey_cfg() local
3610 err = nix_get_nixlf(rvu, pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_rss_flowkey_cfg()
3627 rvu_npc_update_flowkey_alg_idx(rvu, pcifunc, nixlf, req->group, in rvu_mbox_handler_nix_rss_flowkey_cfg()
3705 bool from_vf = req->hdr.pcifunc & RVU_PFVF_FUNC_MASK; in rvu_mbox_handler_nix_set_mac_addr()
3706 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_set_mac_addr() local
3710 err = nix_get_nixlf(rvu, pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_set_mac_addr()
3714 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_set_mac_addr()
3726 rvu_npc_install_ucast_entry(rvu, pcifunc, nixlf, in rvu_mbox_handler_nix_set_mac_addr()
3732 rvu_switch_update_rules(rvu, pcifunc); in rvu_mbox_handler_nix_set_mac_addr()
3741 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_get_mac_addr() local
3744 if (!is_nixlf_attached(rvu, pcifunc)) in rvu_mbox_handler_nix_get_mac_addr()
3747 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_get_mac_addr()
3758 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_set_rx_mode() local
3762 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_set_rx_mode()
3769 if (is_vf(pcifunc) && !nix_rx_multicast && in rvu_mbox_handler_nix_set_rx_mode()
3777 if (is_vf(pcifunc) && !test_bit(PF_SET_VF_TRUSTED, &pfvf->flags) && in rvu_mbox_handler_nix_set_rx_mode()
3781 err = nix_get_nixlf(rvu, pcifunc, &nixlf, NULL); in rvu_mbox_handler_nix_set_rx_mode()
3787 err = nix_update_mce_rule(rvu, pcifunc, NIXLF_ALLMULTI_ENTRY, in rvu_mbox_handler_nix_set_rx_mode()
3792 pcifunc); in rvu_mbox_handler_nix_set_rx_mode()
3797 err = nix_update_mce_rule(rvu, pcifunc, NIXLF_PROMISC_ENTRY, in rvu_mbox_handler_nix_set_rx_mode()
3802 pcifunc); in rvu_mbox_handler_nix_set_rx_mode()
3809 rvu_npc_install_allmulti_entry(rvu, pcifunc, nixlf, in rvu_mbox_handler_nix_set_rx_mode()
3813 rvu_npc_enable_allmulti_entry(rvu, pcifunc, nixlf, false); in rvu_mbox_handler_nix_set_rx_mode()
3818 rvu_npc_install_promisc_entry(rvu, pcifunc, nixlf, in rvu_mbox_handler_nix_set_rx_mode()
3823 rvu_npc_exact_promisc_enable(rvu, pcifunc); in rvu_mbox_handler_nix_set_rx_mode()
3826 rvu_npc_enable_promisc_entry(rvu, pcifunc, nixlf, false); in rvu_mbox_handler_nix_set_rx_mode()
3829 rvu_npc_exact_promisc_disable(rvu, pcifunc); in rvu_mbox_handler_nix_set_rx_mode()
3836 struct nix_frs_cfg *req, u16 pcifunc) in nix_find_link_frs() argument
3838 int pf = rvu_get_pf(pcifunc); in nix_find_link_frs()
3845 pfvf = rvu_get_pfvf(rvu, pcifunc); in nix_find_link_frs()
3882 u16 pcifunc, u64 tx_credits) in nix_config_link_credits() argument
3885 int pf = rvu_get_pf(pcifunc); in nix_config_link_credits()
3912 schq = nix_get_tx_link(rvu, pcifunc); in nix_config_link_credits()
3955 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_set_hw_frs() local
3956 int pf = rvu_get_pf(pcifunc); in rvu_mbox_handler_nix_set_hw_frs()
3965 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_set_hw_frs()
3973 if (is_afvf(pcifunc)) in rvu_mbox_handler_nix_set_hw_frs()
3992 if (TXSCH_MAP_FUNC(txsch->pfvf_map[schq]) != pcifunc) in rvu_mbox_handler_nix_set_hw_frs()
4018 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_set_hw_frs()
4025 nix_find_link_frs(rvu, req, pcifunc); in rvu_mbox_handler_nix_set_hw_frs()
4045 return nix_config_link_credits(rvu, blkaddr, link, pcifunc, in rvu_mbox_handler_nix_set_hw_frs()
4055 err = nix_get_nixlf(rvu, req->hdr.pcifunc, &nixlf, &blkaddr); in rvu_mbox_handler_nix_set_rx_cfg()
4530 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_lf_start_rx() local
4534 err = nix_get_nixlf(rvu, pcifunc, &nixlf, NULL); in rvu_mbox_handler_nix_lf_start_rx()
4538 rvu_npc_enable_default_entries(rvu, pcifunc, nixlf); in rvu_mbox_handler_nix_lf_start_rx()
4540 npc_mcam_enable_flows(rvu, pcifunc); in rvu_mbox_handler_nix_lf_start_rx()
4542 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_lf_start_rx()
4545 rvu_switch_update_rules(rvu, pcifunc); in rvu_mbox_handler_nix_lf_start_rx()
4547 return rvu_cgx_start_stop_io(rvu, pcifunc, true); in rvu_mbox_handler_nix_lf_start_rx()
4553 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_lf_stop_rx() local
4557 err = nix_get_nixlf(rvu, pcifunc, &nixlf, NULL); in rvu_mbox_handler_nix_lf_stop_rx()
4561 rvu_npc_disable_mcam_entries(rvu, pcifunc, nixlf); in rvu_mbox_handler_nix_lf_stop_rx()
4563 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_lf_stop_rx()
4566 return rvu_cgx_start_stop_io(rvu, pcifunc, false); in rvu_mbox_handler_nix_lf_stop_rx()
4571 void rvu_nix_lf_teardown(struct rvu *rvu, u16 pcifunc, int blkaddr, int nixlf) in rvu_nix_lf_teardown() argument
4573 struct rvu_pfvf *pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_nix_lf_teardown()
4575 int pf = rvu_get_pf(pcifunc); in rvu_nix_lf_teardown()
4582 ctx_req.hdr.pcifunc = pcifunc; in rvu_nix_lf_teardown()
4585 rvu_npc_disable_mcam_entries(rvu, pcifunc, nixlf); in rvu_nix_lf_teardown()
4586 rvu_npc_free_mcam_entries(rvu, pcifunc, nixlf); in rvu_nix_lf_teardown()
4587 nix_interface_deinit(rvu, pcifunc, nixlf); in rvu_nix_lf_teardown()
4589 nix_txschq_free(rvu, pcifunc); in rvu_nix_lf_teardown()
4593 rvu_cgx_start_stop_io(rvu, pcifunc, false); in rvu_nix_lf_teardown()
4617 rvu_npc_set_parse_mode(rvu, pcifunc, OTX2_PRIV_FLAGS_DEFAULT, in rvu_nix_lf_teardown()
4627 if (npc_config_ts_kpuaction(rvu, pf, pcifunc, false)) in rvu_nix_lf_teardown()
4633 rvu_cgx_prio_flow_ctrl_cfg(rvu, pcifunc, 0, 0, 0); in rvu_nix_lf_teardown()
4636 rvu_cgx_cfg_pause_frm(rvu, pcifunc, 0, 0); in rvu_nix_lf_teardown()
4640 nix_free_all_bandprof(rvu, pcifunc); in rvu_nix_lf_teardown()
4644 err = rvu_cpt_ctx_flush(rvu, pcifunc); in rvu_nix_lf_teardown()
4653 static int rvu_nix_lf_ptp_tx_cfg(struct rvu *rvu, u16 pcifunc, bool enable) in rvu_nix_lf_ptp_tx_cfg() argument
4661 pf = rvu_get_pf(pcifunc); in rvu_nix_lf_ptp_tx_cfg()
4665 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_nix_lf_ptp_tx_cfg()
4670 nixlf = rvu_get_lf(rvu, block, pcifunc, 0); in rvu_nix_lf_ptp_tx_cfg()
4689 return rvu_nix_lf_ptp_tx_cfg(rvu, req->hdr.pcifunc, true); in rvu_mbox_handler_nix_lf_ptp_tx_enable()
4695 return rvu_nix_lf_ptp_tx_cfg(rvu, req->hdr.pcifunc, false); in rvu_mbox_handler_nix_lf_ptp_tx_disable()
4702 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_lso_format_cfg() local
4708 pfvf = rvu_get_pfvf(rvu, pcifunc); in rvu_mbox_handler_nix_lso_format_cfg()
4709 blkaddr = rvu_get_blkaddr(rvu, BLKTYPE_NIX, pcifunc); in rvu_mbox_handler_nix_lso_format_cfg()
4866 err = nix_get_nixlf(rvu, req->hdr.pcifunc, &lf, &blkaddr); in rvu_mbox_handler_nix_inline_ipsec_lf_cfg()
4900 void rvu_nix_reset_mac(struct rvu_pfvf *pfvf, int pcifunc) in rvu_nix_reset_mac() argument
4902 bool from_vf = !!(pcifunc & RVU_PFVF_FUNC_MASK); in rvu_nix_reset_mac()
5085 struct nix_hw *nix_hw, u16 pcifunc) in nix_verify_bandprof() argument
5101 if (pcifunc && ipolicer->pfvf_map[prof_idx] != pcifunc) in nix_verify_bandprof()
5124 ipolicer->pfvf_map[prof_idx] != pcifunc) in nix_verify_bandprof()
5135 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_bandprof_alloc() local
5142 err = nix_get_struct_ptrs(rvu, pcifunc, &nix_hw, &blkaddr); in rvu_mbox_handler_nix_bandprof_alloc()
5164 ipolicer->pfvf_map[prof] = pcifunc; in rvu_mbox_handler_nix_bandprof_alloc()
5171 static int nix_free_all_bandprof(struct rvu *rvu, u16 pcifunc) in nix_free_all_bandprof() argument
5180 err = nix_get_struct_ptrs(rvu, pcifunc, &nix_hw, &blkaddr); in nix_free_all_bandprof()
5192 if (ipolicer->pfvf_map[prof_idx] != pcifunc) in nix_free_all_bandprof()
5214 u16 pcifunc = req->hdr.pcifunc; in rvu_mbox_handler_nix_bandprof_free() local
5219 return nix_free_all_bandprof(rvu, pcifunc); in rvu_mbox_handler_nix_bandprof_free()
5224 err = nix_get_struct_ptrs(rvu, pcifunc, &nix_hw, &blkaddr); in rvu_mbox_handler_nix_bandprof_free()
5240 ipolicer->pfvf_map[prof_idx] != pcifunc) in rvu_mbox_handler_nix_bandprof_free()
5262 u16 pcifunc, u8 ctype, u32 qidx) in nix_aq_context_read() argument
5265 aq_req->hdr.pcifunc = pcifunc; in nix_aq_context_read()
5282 aq_req->hdr.pcifunc = 0x00; in nix_ipolicer_map_leaf_midprofs()
5297 int rvu_nix_setup_ratelimit_aggr(struct rvu *rvu, u16 pcifunc, in rvu_nix_setup_ratelimit_aggr() argument
5310 rc = nix_get_struct_ptrs(rvu, pcifunc, &nix_hw, &blkaddr); in rvu_nix_setup_ratelimit_aggr()
5315 rc = nix_aq_context_read(rvu, nix_hw, &aq_req, &aq_rsp, pcifunc, in rvu_nix_setup_ratelimit_aggr()
5320 __func__, rq_idx, pcifunc); in rvu_nix_setup_ratelimit_aggr()
5409 aq_req.hdr.pcifunc = 0x00; in rvu_nix_setup_ratelimit_aggr()
5509 err = nix_get_struct_ptrs(rvu, req->hdr.pcifunc, &nix_hw, &blkaddr); in rvu_mbox_handler_nix_bandprof_get_hwinfo()