From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 87157A0524; Mon, 27 Jul 2020 05:38:49 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 2F5651C0AC; Mon, 27 Jul 2020 05:38:48 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 38A0C1C023 for ; Mon, 27 Jul 2020 05:38:46 +0200 (CEST) IronPort-SDR: gb7KvNTVFKF990ez+4gPBvVi6ol8L+MH4kPfU6Cjx1YeuLXHUvJ0iuW8qjge6rOV5lJppthsa9 pJm1P+qPaUsA== X-IronPort-AV: E=McAfee;i="6000,8403,9694"; a="212475962" X-IronPort-AV: E=Sophos;i="5.75,401,1589266800"; d="scan'208";a="212475962" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Jul 2020 20:38:45 -0700 IronPort-SDR: f4s2zH0Sc3dHwHQHlOF89Yvf9tJC6LDTPKIPUGw6kfb2AdVTXZFOPK3Z+u+QUB1mJR0+01p1yi VQ58HUR8estw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,401,1589266800"; d="scan'208";a="327887252" Received: from jguo15x-mobl.ccr.corp.intel.com (HELO [10.67.68.176]) ([10.67.68.176]) by FMSMGA003.fm.intel.com with ESMTP; 26 Jul 2020 20:38:43 -0700 To: Guinan Sun , dev@dpdk.org Cc: Beilei Xing , Dawid Lukwinski References: <20200721074000.30449-1-guinanx.sun@intel.com> <20200721074000.30449-2-guinanx.sun@intel.com> From: Jeff Guo Message-ID: <27f4ae53-2d3c-7462-acdd-9229028e6e52@intel.com> Date: Mon, 27 Jul 2020 11:38:42 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 MIME-Version: 1.0 In-Reply-To: <20200721074000.30449-2-guinanx.sun@intel.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-US Subject: Re: [dpdk-dev] [PATCH 1/8] net/i40e/base: enable FEC on/off flag setting for X722 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Acked-by: Jeff Guo On 7/21/2020 3:39 PM, Guinan Sun wrote: > Starting with API version 1.10 firmware for X722 devices has ability > to change FEC settings in PHY. Code added in this patch > checks API version and sets appropriate capability flag. > > Signed-off-by: Dawid Lukwinski > Signed-off-by: Guinan Sun > --- > drivers/net/i40e/base/i40e_adminq.c | 6 ++++++ > drivers/net/i40e/base/i40e_adminq_cmd.h | 2 ++ > drivers/net/i40e/base/i40e_type.h | 1 + > 3 files changed, 9 insertions(+) > > diff --git a/drivers/net/i40e/base/i40e_adminq.c b/drivers/net/i40e/base/i40e_adminq.c > index c89e1fb3f..0da45f03e 100644 > --- a/drivers/net/i40e/base/i40e_adminq.c > +++ b/drivers/net/i40e/base/i40e_adminq.c > @@ -603,6 +603,12 @@ STATIC void i40e_set_hw_flags(struct i40e_hw *hw) > (aq->api_maj_ver == 1 && > aq->api_min_ver >= I40E_MINOR_VER_GET_LINK_INFO_X722)) > hw->flags |= I40E_HW_FLAG_AQ_PHY_ACCESS_CAPABLE; > + > + if (aq->api_maj_ver > 1 || > + (aq->api_maj_ver == 1 && > + aq->api_min_ver >= I40E_MINOR_VER_FW_REQUEST_FEC_X722)) > + hw->flags |= I40E_HW_FLAG_X722_FEC_REQUEST_CAPABLE; > + > /* fall through */ > default: > break; > diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h > index 1905167f5..f790183be 100644 > --- a/drivers/net/i40e/base/i40e_adminq_cmd.h > +++ b/drivers/net/i40e/base/i40e_adminq_cmd.h > @@ -25,6 +25,8 @@ > #define I40E_MINOR_VER_GET_LINK_INFO_X722 0x0009 > /* API version 1.6 for X722 devices adds ability to stop FW LLDP agent */ > #define I40E_MINOR_VER_FW_LLDP_STOPPABLE_X722 0x0006 > +/* API version 1.10 for X722 devices adds ability to request FEC encoding */ > +#define I40E_MINOR_VER_FW_REQUEST_FEC_X722 0x000A > > struct i40e_aq_desc { > __le16 flags; > diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h > index 014a4c132..b5b5b928d 100644 > --- a/drivers/net/i40e/base/i40e_type.h > +++ b/drivers/net/i40e/base/i40e_type.h > @@ -745,6 +745,7 @@ struct i40e_hw { > #define I40E_HW_FLAG_FW_LLDP_PERSISTENT BIT_ULL(5) > #define I40E_HW_FLAG_AQ_PHY_ACCESS_EXTENDED BIT_ULL(6) > #define I40E_HW_FLAG_DROP_MODE BIT_ULL(7) > +#define I40E_HW_FLAG_X722_FEC_REQUEST_CAPABLE BIT_ULL(8) > u64 flags; > > /* Used in set switch config AQ command */