Lines Matching refs:intf

60 bool npc_is_feature_supported(struct rvu *rvu, u64 features, u8 intf)
66 mcam_features = is_npc_intf_tx(intf) ? mcam->tx_features : mcam->rx_features;
85 u8 nr_bits, int start_kwi, int offset, u8 intf)
98 if (is_npc_intf_tx(intf))
139 static bool npc_is_field_present(struct rvu *rvu, enum key_fields type, u8 intf)
145 if (is_npc_intf_tx(intf))
159 u64 cfg, u8 lid, u8 lt, u8 intf)
163 if (is_npc_intf_tx(intf))
199 enum key_fields type, u8 start_lid, u8 intf)
210 if (is_npc_intf_tx(intf)) {
220 (intf, lid, lt, ld));
225 lid, lt, intf);
234 start_kwi, offset, intf);
248 u8 intf)
250 if (!npc_is_field_present(rvu, type, intf) ||
251 npc_check_overlap(rvu, blkaddr, type, 0, intf))
257 u8 key_nibble, u8 intf)
272 npc_set_kw_masks(mcam, type, nr_bits, kwi, offset, intf);
276 u8 key_nibble, u8 intf)
325 npc_set_kw_masks(mcam, type, nr_bits, kwi, offset, intf);
328 static void npc_handle_multi_layer_fields(struct rvu *rvu, int blkaddr, u8 intf)
352 if (is_npc_intf_tx(intf)) {
414 if (npc_check_overlap(rvu, blkaddr, NPC_ETYPE, start_lid, intf)) {
444 if (npc_check_overlap(rvu, blkaddr, NPC_OUTER_VID, start_lid, intf)) {
460 u8 lt, u64 cfg, u8 intf)
476 if (is_npc_intf_tx(intf)) {
492 npc_set_layer_mdata(mcam, (name), cfg, lid, lt, intf); \
497 start_kwi, offset, intf); \
512 if (mkex_hash->lid_lt_ld_hash_en[intf][lid][lt][0])
517 if (mkex_hash->lid_lt_ld_hash_en[intf][lid][lt][1])
560 static void npc_set_features(struct rvu *rvu, int blkaddr, u8 intf)
567 if (is_npc_intf_tx(intf))
571 if (npc_check_field(rvu, blkaddr, hdr, intf))
584 if (!npc_check_field(rvu, blkaddr, NPC_LD, intf))
594 if (npc_check_field(rvu, blkaddr, NPC_LD, intf)) {
601 if (npc_check_field(rvu, blkaddr, NPC_LE, intf))
606 if (!npc_check_field(rvu, blkaddr, NPC_LB, intf))
610 if (npc_check_field(rvu, blkaddr, NPC_IPSEC_SPI, intf) &&
615 if (npc_check_field(rvu, blkaddr, NPC_LB, intf))
620 if (npc_check_field(rvu, blkaddr, NPC_LXMB, intf))
624 if (npc_check_field(rvu, blkaddr, hdr, intf))
633 static int npc_scan_kex(struct rvu *rvu, int blkaddr, u8 intf)
645 cfg = rvu_read64(rvu, blkaddr, NPC_AF_INTFX_KEX_CFG(intf));
648 npc_scan_parse_result(mcam, bitnr, key_nibble, intf);
659 npc_scan_exact_result(mcam, bitnr, key_nibble, intf);
669 (intf, lid, lt, ld));
673 intf);
721 static int npc_check_unsupported_flows(struct rvu *rvu, u64 features, u8 intf)
728 if (is_npc_intf_tx(intf))
755 u64 val_hi, u64 mask_lo, u64 mask_hi, u8 intf)
765 if (is_npc_intf_tx(intf))
837 struct rvu_npc_mcam_rule *output, u8 intf)
861 mask_lo, mask_hi, intf);
875 mask_lo, mask_hi, intf);
882 u64 features, u8 intf)
892 NPC_LT_LB_STAG_QINQ & NPC_LT_LB_CTAG, 0, intf);
897 ~0ULL, 0, intf);
900 ~0ULL, 0, intf);
906 struct rvu_npc_mcam_rule *output, u8 intf,
922 0, ~0ULL, 0, intf);
925 0, ~0ULL, 0, intf);
928 0, ~0ULL, 0, intf);
931 0, ~0ULL, 0, intf);
934 0, ~0ULL, 0, intf);
939 0, ~0ULL, 0, intf);
943 0, ~0ULL, 0, intf);
948 output->lxmb, 0, intf);
954 (mask_lo), (mask_hi), intf); \
1041 npc_update_ipv6_flow(rvu, entry, features, pkt, mask, output, intf);
1042 npc_update_vlan_features(rvu, entry, features, intf);
1044 npc_update_field_hash(rvu, intf, entry, blkaddr, features,
1280 req->intf, blkaddr);
1282 if (is_npc_intf_rx(req->intf)) {
1293 if (is_npc_intf_tx(req->intf))
1310 &dummy, req->intf,
1343 write_req.intf = req->intf;
1357 if (is_npc_intf_tx(req->intf))
1369 if (is_npc_intf_tx(req->intf))
1370 rule->intf = pfvf->nix_tx_intf;
1372 rule->intf = pfvf->nix_rx_intf;
1402 if (is_npc_intf_rx(req->intf) && req->match_id &&
1432 if (!is_npc_interface_valid(rvu, req->intf))
1439 if (npc_check_field(rvu, blkaddr, NPC_DMAC, req->intf))
1451 if (!npc_is_field_present(rvu, NPC_LXMB, req->intf)) {
1489 err = npc_check_unsupported_flows(rvu, req->features, req->intf);
1500 if ((req->features & BIT_ULL(NPC_DMAC)) && is_npc_intf_rx(req->intf) &&
1508 if (err && is_npc_intf_rx(req->intf) && !pf_set_vfs_mac)
1520 if (is_npc_intf_tx(req->intf))
1620 u8 intf, enable;
1626 entry, &intf, &enable);
1630 0xffffffffffffull, 0, intf);
1634 write_req.intf = pfvf->nix_rx_intf;
1660 if (is_npc_intf_rx(rule->intf) &&
1792 req.intf = NIX_INTF_RX;
1823 if (!is_npc_interface_valid(rvu, req->intf))
1826 if (npc_check_field(rvu, blkaddr, req->field, req->intf))