From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Chen Jing D(Mark)" Subject: [PATCH 1/4] net/i40e: change version number to support Linux VF Date: Tue, 3 Jan 2017 08:59:16 +0800 Message-ID: <1483405159-9237-2-git-send-email-jing.d.chen@intel.com> References: <1483405159-9237-1-git-send-email-jing.d.chen@intel.com> Cc: ferruh.yigit@intel.com, vincent.jardin@6wind.com, jingjing.wu@intel.com, "Chen Jing D(Mark)" To: dev@dpdk.org Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id DE7D91094 for ; Tue, 3 Jan 2017 09:02:45 +0100 (CET) In-Reply-To: <1483405159-9237-1-git-send-email-jing.d.chen@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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) --- drivers/net/i40e/i40e_pf.c | 16 ++++++++++++++-- 1 files changed, 14 insertions(+), 2 deletions(-) diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e/i40e_pf.c index 97b8ecc..229f71a 100644 --- a/drivers/net/i40e/i40e_pf.c +++ b/drivers/net/i40e/i40e_pf.c @@ -278,8 +278,20 @@ { 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. + * + * TODO: + * Discuss with Linux driver maintainer if possible to carry more info + * in this function to identify it's Linux or DPDK host. + */ + info.major = I40E_VIRTCHNL_VERSION_MAJOR; + info.minor = I40E_VIRTCHNL_VERSION_MINOR_NO_VF_CAPS; + i40e_pf_host_send_msg_to_vf(vf, I40E_VIRTCHNL_OP_VERSION, I40E_SUCCESS, (uint8_t *)&info, sizeof(info)); } -- 1.7.7.6