From: Helin Zhang <helin.zhang@intel.com>
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH v2 03/30] i40e/base: add hw flag for SRCTL access using AQ for X722
Date: Thu, 18 Feb 2016 14:29:53 +0800 [thread overview]
Message-ID: <1455777020-12095-4-git-send-email-helin.zhang@intel.com> (raw)
In-Reply-To: <1455777020-12095-1-git-send-email-helin.zhang@intel.com>
Instead of doing the MAC check, use a flag that gets set per
MAC. This way there are less chances of user error and it
can enable multiple MACs with the capability in a single place
rather than cluttering the code with MAC checks.
Signed-off-by: Helin Zhang <helin.zhang@intel.com>
---
drivers/net/i40e/base/i40e_common.c | 5 +++++
drivers/net/i40e/base/i40e_nvm.c | 4 ++--
drivers/net/i40e/base/i40e_type.h | 3 +++
3 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c
index d7c940d..5e1b39e 100644
--- a/drivers/net/i40e/base/i40e_common.c
+++ b/drivers/net/i40e/base/i40e_common.c
@@ -1032,6 +1032,11 @@ enum i40e_status_code i40e_init_shared_code(struct i40e_hw *hw)
else
hw->pf_id = (u8)(func_rid & 0x7);
+#ifdef X722_SUPPORT
+ if (hw->mac.type == I40E_MAC_X722)
+ hw->flags |= I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE;
+
+#endif
status = i40e_init_nvm(hw);
return status;
}
diff --git a/drivers/net/i40e/base/i40e_nvm.c b/drivers/net/i40e/base/i40e_nvm.c
index bfa3315..a1b150a 100644
--- a/drivers/net/i40e/base/i40e_nvm.c
+++ b/drivers/net/i40e/base/i40e_nvm.c
@@ -220,7 +220,7 @@ enum i40e_status_code i40e_read_nvm_word(struct i40e_hw *hw, u16 offset,
enum i40e_status_code ret_code = I40E_SUCCESS;
#ifdef X722_SUPPORT
- if (hw->mac.type == I40E_MAC_X722) {
+ if (hw->flags & I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE) {
ret_code = i40e_acquire_nvm(hw, I40E_RESOURCE_READ);
if (!ret_code) {
ret_code = i40e_read_nvm_word_aq(hw, offset, data);
@@ -323,7 +323,7 @@ enum i40e_status_code i40e_read_nvm_buffer(struct i40e_hw *hw, u16 offset,
enum i40e_status_code ret_code = I40E_SUCCESS;
#ifdef X722_SUPPORT
- if (hw->mac.type == I40E_MAC_X722) {
+ if (hw->flags & I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE) {
ret_code = i40e_acquire_nvm(hw, I40E_RESOURCE_READ);
if (!ret_code) {
ret_code = i40e_read_nvm_buffer_aq(hw, offset, words,
diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h
index 9483884..f566e30 100644
--- a/drivers/net/i40e/base/i40e_type.h
+++ b/drivers/net/i40e/base/i40e_type.h
@@ -658,6 +658,9 @@ struct i40e_hw {
u16 wol_proxy_vsi_seid;
#endif
+#define I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE BIT_ULL(0)
+ u64 flags;
+
/* debug mask */
u32 debug_mask;
#ifndef I40E_NDIS_SUPPORT
--
2.5.0
next prev parent reply other threads:[~2016-02-18 6:30 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-15 2:40 [dpdk-dev] [PATCH 00/29] i40e base driver update Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 01/29] i40e/base: use explicit cast from u16 to u8 Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 02/29] i40e/base: Acquire NVM, before issuing an AQ read nvm command Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 03/29] i40e/base: add hw flag for doing the SRCTL access using AQ for X722 Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 04/29] i40e/base: add changes in nvm read to support X722 Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 05/29] i40e/base: Limit DCB FW version checks to XL710/X710 devices Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 06/29] i40e/base: check for stopped admin queue Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 07/29] i40e/base: set aq count after memory allocation Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 08/29] i40e/base: clean event descriptor before use Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 09/29] i40e/base: add new device IDs and delete deprecated one Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 10/29] i40e/base: fix up recent proxy and wol bits for X722_SUPPORT Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 11/29] i40e/base: define function capabilities in only one place Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 12/29] i40e/base: Fix for PHY NVM interaction problem Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 13/29] i40e/base: set shared bit for multicast filters Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 14/29] i40e/base: add APIs to Add/remove port mirroring rules Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 15/29] i40e/base: add VEB stat control and remove L2 cloud filter Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 16/29] i40e/base: implement the API function for aq_set_switch_config Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 17/29] i40e/base: Add functions to blink led on Coppervale PHY Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 18/29] i40e/base: When in promisc mode apply promisc mode to Tx Traffic as well Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 19/29] i40e/base: Increase timeout when checking GLGEN_RSTAT_DEVSTATE bit Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 20/29] i40e/base: Save off VSI resource count when updating VSI Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 21/29] i40e/base: coding style fixes Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 22/29] i40e/base: use FW to read/write rx control registers Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 23/29] i40e/base: expose some registers to program parser, FD and RSS logic Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 24/29] i40e/base: Add a Virtchnl offload for RSS PCTYPE V2 Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 25/29] i40e/base: add AQ thermal sensor control struct Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 26/29] i40e/base: add/update structure and macro definitions Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 27/29] i40e: add base driver release info Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 28/29] i40e: add/remove new device IDs Helin Zhang
2016-01-15 2:40 ` [dpdk-dev] [PATCH 29/29] i40e: use rx control function for rx control registers Helin Zhang
2016-01-15 10:48 ` [dpdk-dev] [PATCH 00/29] i40e base driver update Bruce Richardson
2016-01-17 13:43 ` Zhang, Helin
2016-02-14 1:57 ` Wu, Jingjing
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 00/30] " Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 01/30] i40e/base: use explicit cast from u16 to u8 Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 02/30] i40e/base: acquire NVM, before issuing an AQ read nvm command Helin Zhang
2016-02-18 6:29 ` Helin Zhang [this message]
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 04/30] i40e/base: add changes in nvm read to support X722 Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 05/30] i40e/base: limit DCB FW version checks to XL710/X710 devices Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 06/30] i40e/base: check for stopped admin queue Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 07/30] i40e/base: set aq count after memory allocation Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 08/30] i40e/base: clean event descriptor before use Helin Zhang
2016-02-18 6:29 ` [dpdk-dev] [PATCH v2 09/30] i40e/base: add new device IDs and delete deprecated one Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 10/30] i40e/base: fix up recent proxy and wol bits for X722_SUPPORT Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 11/30] i40e/base: define function capabilities in only one place Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 12/30] i40e/base: fix for PHY NVM interaction problem Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 13/30] i40e/base: set shared bit for multicast filters Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 14/30] i40e/base: add APIs to Add/remove port mirroring rules Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 15/30] i40e/base: add VEB stat control and remove L2 cloud filter Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 16/30] i40e/base: implement the API function for aq_set_switch_config Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 17/30] i40e/base: add functions to blink led on Coppervale PHY Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 18/30] i40e/base: apply promisc mode to Tx Traffic Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 19/30] i40e/base: increase timeout when checking GLGEN_RSTAT_DEVSTATE bit Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 20/30] i40e/base: save off VSI resource count when updating VSI Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 21/30] i40e/base: coding style fixes Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 22/30] i40e/base: use FW to read/write rx control registers Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 23/30] i40e/base: expose some registers to program parser, FD and RSS logic Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 24/30] i40e/base: add a Virtchnl offload for RSS PCTYPE V2 Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 25/30] i40e/base: add AQ thermal sensor control struct Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 26/30] i40e/base: add/update structure and macro definitions Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 27/30] i40e: add base driver release info Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 28/30] i40e: add/remove new device IDs Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 29/30] i40e: use rx control function for rx control registers Helin Zhang
2016-02-18 6:30 ` [dpdk-dev] [PATCH v2 30/30] i40evf: use base driver defined interface Helin Zhang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1455777020-12095-4-git-send-email-helin.zhang@intel.com \
--to=helin.zhang@intel.com \
--cc=dev@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).