net/ice/base: support init RXDID descs fields
[dpdk.git] / drivers / net / ice / base / ice_fdir.c
index 4bc8e6d..9ef91b3 100644 (file)
@@ -186,7 +186,7 @@ ice_set_dflt_val_fd_desc(struct ice_fd_fltr_desc_ctx *fd_fltr_ctx)
        fd_fltr_ctx->desc_prof_prio = ICE_FXD_FLTR_QW1_PROF_PRIO_ZERO;
        fd_fltr_ctx->desc_prof = ICE_FXD_FLTR_QW1_PROF_ZERO;
        fd_fltr_ctx->swap = ICE_FXD_FLTR_QW1_SWAP_SET;
-       fd_fltr_ctx->fdid_prio = ICE_FXD_FLTR_QW1_FDID_PRI_ZERO;
+       fd_fltr_ctx->fdid_prio = ICE_FXD_FLTR_QW1_FDID_PRI_ONE;
        fd_fltr_ctx->fdid_mdid = ICE_FXD_FLTR_QW1_FDID_MDID_FD;
        fd_fltr_ctx->fdid = ICE_FXD_FLTR_QW1_FDID_ZERO;
 }
@@ -692,8 +692,13 @@ bool ice_fdir_is_dup_fltr(struct ice_hw *hw, struct ice_fdir_fltr *input)
                                ret = ice_fdir_comp_rules(rule, input, false);
                        else
                                ret = ice_fdir_comp_rules(rule, input, true);
-                       if (ret)
-                               break;
+                       if (ret) {
+                               if (rule->fltr_id == input->fltr_id &&
+                                   rule->q_index != input->q_index)
+                                       ret = false;
+                               else
+                                       break;
+                       }
                }
        }