net/i40e: change version number to support Linux VF
authorChen Jing D(Mark) <jing.d.chen@intel.com>
Fri, 13 Jan 2017 03:13:18 +0000 (11:13 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 17 Jan 2017 18:48:02 +0000 (19:48 +0100)
i40e PF host only support to work with DPDK VF driver, Linux
VF driver is not supported. This change will enhance in version
number returned.

Current version info returned won't be able to be recognized
by Linux VF driver, change to values that both DPDK VF and Linux
driver can recognize.

The expense is original DPDK host specific feature like
CFG_VLAN_PVID and CONFIG_VSI_QUEUES_EXT will not available.

DPDK VF also can't identify host driver by version number returned.
It always assume talking with Linux PF.

Signed-off-by: Chen Jing D(Mark) <jing.d.chen@intel.com>
Acked-by: Helin Zhang <helin.zhang@intel.com>
Acked-by: Vincent Jardin <vincent.jardin@6wind.com>
drivers/net/i40e/i40e_pf.c

index 263e843..25f2fc9 100644 (file)
@@ -279,8 +279,15 @@ i40e_pf_host_process_cmd_version(struct i40e_pf_vf *vf, bool b_op)
 {
        struct i40e_virtchnl_version_info info;
 
-       info.major = I40E_DPDK_VERSION_MAJOR;
-       info.minor = I40E_DPDK_VERSION_MINOR;
+       /* Respond like a Linux PF host in order to support both DPDK VF and
+        * Linux VF driver. The expense is original DPDK host specific feature
+        * like CFG_VLAN_PVID and CONFIG_VSI_QUEUES_EXT will not available.
+        *
+        * DPDK VF also can't identify host driver by version number returned.
+        * It always assume talking with Linux PF.
+        */
+       info.major = I40E_VIRTCHNL_VERSION_MAJOR;
+       info.minor = I40E_VIRTCHNL_VERSION_MINOR_NO_VF_CAPS;
 
        if (b_op)
                i40e_pf_host_send_msg_to_vf(vf, I40E_VIRTCHNL_OP_VERSION,