]> git.droids-corp.org - dpdk.git/blobdiff - drivers/net/bnxt/bnxt_ethdev.c
net/bnxt: register TruFlow flow API ops
[dpdk.git] / drivers / net / bnxt / bnxt_ethdev.c
index 2f08921336ae8ee34c380e3fb40f058b0797cccd..783e6a4f45edc1aa8ec22e08a51e3f6a1543d338 100644 (file)
@@ -3288,6 +3288,7 @@ bnxt_filter_ctrl_op(struct rte_eth_dev *dev,
                    enum rte_filter_type filter_type,
                    enum rte_filter_op filter_op, void *arg)
 {
+       struct bnxt *bp = dev->data->dev_private;
        int ret = 0;
 
        ret = is_bnxt_in_error(dev->data->dev_private);
@@ -3311,7 +3312,10 @@ bnxt_filter_ctrl_op(struct rte_eth_dev *dev,
        case RTE_ETH_FILTER_GENERIC:
                if (filter_op != RTE_ETH_FILTER_GET)
                        return -EINVAL;
-               *(const void **)arg = &bnxt_flow_ops;
+               if (bp->truflow)
+                       *(const void **)arg = &bnxt_ulp_rte_flow_ops;
+               else
+                       *(const void **)arg = &bnxt_flow_ops;
                break;
        default:
                PMD_DRV_LOG(ERR,