net/hinic/base: modify VHD type for SDI
authorXiaoyun Wang <cloud.wangxiaoyun@huawei.com>
Sat, 25 Jul 2020 08:15:35 +0000 (16:15 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 29 Jul 2020 22:41:23 +0000 (00:41 +0200)
For ovs offload scenario, when fw processes the virtio header,
there is no need to offset; and for standard card scenarios,
fw does not care about the vhd_type parameter, so in order to
be compatible with these two scenarios, use 0 offset instead.

Signed-off-by: Xiaoyun Wang <cloud.wangxiaoyun@huawei.com>
drivers/net/hinic/base/hinic_pmd_nicio.c
drivers/net/hinic/base/hinic_pmd_nicio.h

index 2914e99..576fe59 100644 (file)
@@ -578,7 +578,7 @@ int hinic_init_qp_ctxts(struct hinic_hwdev *hwdev)
        rx_buf_sz = nic_io->rq_buf_size;
 
        /* update rx buf size to function table */
-       err = hinic_set_rx_vhd_mode(hwdev, 0, rx_buf_sz);
+       err = hinic_set_rx_vhd_mode(hwdev, HINIC_VHD_TYPE_0B, rx_buf_sz);
        if (err) {
                PMD_DRV_LOG(ERR, "Set rx vhd mode failed, rc: %d", err);
                return err;
index 9a487d0..600c073 100644 (file)
@@ -8,6 +8,11 @@
 #define RX_BUF_LEN_16K                 16384
 #define RX_BUF_LEN_1_5K                        1536
 
+/* vhd type */
+#define HINIC_VHD_TYPE_0B              2
+#define HINIC_VHD_TYPE_10B             1
+#define HINIC_VHD_TYPE_12B             0
+
 #define HINIC_Q_CTXT_MAX               42
 
 /* performance: ci addr RTE_CACHE_SIZE(64B) alignment */