From patchwork Mon Jul 27 08:42:25 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xiao Wang X-Patchwork-Id: 6604 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id EDE77C4FC; Mon, 27 Jul 2015 10:42:54 +0200 (CEST) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 6F7AAC44C for ; Mon, 27 Jul 2015 10:42:53 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by fmsmga102.fm.intel.com with ESMTP; 27 Jul 2015 01:42:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,552,1432623600"; d="scan'208";a="771737499" Received: from shvmail01.sh.intel.com ([10.239.29.42]) by orsmga002.jf.intel.com with ESMTP; 27 Jul 2015 01:42:51 -0700 Received: from shecgisg004.sh.intel.com (shecgisg004.sh.intel.com [10.239.29.89]) by shvmail01.sh.intel.com with ESMTP id t6R8gn9w023294; Mon, 27 Jul 2015 16:42:49 +0800 Received: from shecgisg004.sh.intel.com (localhost [127.0.0.1]) by shecgisg004.sh.intel.com (8.13.6/8.13.6/SuSE Linux 0.8) with ESMTP id t6R8gjoP031059; Mon, 27 Jul 2015 16:42:47 +0800 Received: (from xiaowan1@localhost) by shecgisg004.sh.intel.com (8.13.6/8.13.6/Submit) id t6R8gjOo031055; Mon, 27 Jul 2015 16:42:45 +0800 From: Wang Xiao W To: dev@dpdk.org Date: Mon, 27 Jul 2015 16:42:25 +0800 Message-Id: <1437986559-31016-2-git-send-email-xiao.w.wang@intel.com> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1437986559-31016-1-git-send-email-xiao.w.wang@intel.com> References: <1437986559-31016-1-git-send-email-xiao.w.wang@intel.com> Cc: Wang Xiao W Subject: [dpdk-dev] [PATCH 02/16] fm10k: add no-op pointer for VF request_tx_timestamp_mode X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch resolves a bug in Linux where we called the request_tx_timestamp_mode function that is undefined for VF. Implement a no-op function that simply ensures that the mode is NONE, otherwise it would fail with ERR_PARAM. Signed-off-by: Wang Xiao W --- drivers/net/fm10k/base/fm10k_vf.c | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/drivers/net/fm10k/base/fm10k_vf.c b/drivers/net/fm10k/base/fm10k_vf.c index 2246688..76be9ab 100644 --- a/drivers/net/fm10k/base/fm10k_vf.c +++ b/drivers/net/fm10k/base/fm10k_vf.c @@ -546,6 +546,26 @@ STATIC s32 fm10k_configure_dglort_map_vf(struct fm10k_hw *hw, } /** + * fm10k_request_tx_timestamp_mode_vf - Request Tx timestamp mode + * @hw: pointer to hardware structure + * @glort: glort to request Tx timestamps for + * @mode: timestamp mode to request + * + * This function takes the requested timestamp mode and verifies that it was + * requested as none since the VF cannot support receipt of Tx timestamps. + * + * If the mode is non-zero ERR_PARAM, else success + **/ +STATIC s32 fm10k_request_tx_timestamp_mode_vf(struct fm10k_hw *hw, + u16 glort, + u8 mode) +{ + UNREFERENCED_2PARAMETER(hw, glort); + + return mode ? FM10K_ERR_PARAM : FM10K_SUCCESS; +} + +/** * fm10k_adjust_systime_vf - Adjust systime frequency * @hw: pointer to hardware structure * @ppb: adjustment rate in parts per billion @@ -633,7 +653,8 @@ s32 fm10k_init_ops_vf(struct fm10k_hw *hw) mac->ops.configure_dglort_map = &fm10k_configure_dglort_map_vf; mac->ops.get_host_state = &fm10k_get_host_state_generic; mac->ops.adjust_systime = &fm10k_adjust_systime_vf; - mac->ops.read_systime = &fm10k_read_systime_vf, + mac->ops.read_systime = &fm10k_read_systime_vf; + mac->ops.request_tx_timestamp_mode = &fm10k_request_tx_timestamp_mode_vf; mac->max_msix_vectors = fm10k_get_pcie_msix_count_generic(hw);