DPDK-dev Archive on lore.kernel.org
 help / color / Atom feed
From: Xiao Zhang <xiao.zhang@intel.com>
To: dev@dpdk.org
Cc: beilei.xing@intel.com, haiyue.wang@intel.com,
	qi.z.zhang@intel.com, Xiao Zhang <xiao.zhang@intel.com>,
Subject: [dpdk-dev] [v3] net/i40e: fix SFP X722 not work with FW4.16
Date: Fri, 19 Jul 2019 18:26:34 +0800
Message-ID: <1563531994-10076-1-git-send-email-xiao.zhang@intel.com> (raw)
In-Reply-To: <1563490319-53151-1-git-send-email-xiao.zhang@intel.com>

set_switch_config adminq operation was used to set TPID for SFP X722
with FW4.16, but adminq is not supported which lead to failure. Since
all FW versions of SFP X722 do not support adminq, disable adminq flag
to use resigter setting to make it work.

Fixes: 73cd7d6dc8e1 ("net/i40e: use set switch AQ instead of register
Cc: stable@dpdk.org

Signed-off-by: Xiao Zhang <xiao.zhang@intel.com>
Modify the commit log to make it not confused and add fixed line.
Unset adminq flag instead of only checking device id when set TPID.
Check device id when setting TPID, use adminq if not SFP X722, else 
use register.
 drivers/net/i40e/i40e_ethdev.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 2b9fc45..2b2c877 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -1358,6 +1358,10 @@ eth_i40e_dev_init(struct rte_eth_dev *dev, void *init_params __rte_unused)
 		PMD_INIT_LOG(ERR, "Failed to init adminq: %d", ret);
 		return -EIO;
+	/* Firmware of SFP x722 does not support adminq option */
+	if (hw->device_id == I40E_DEV_ID_SFP_X722)
+		hw->flags &= ~I40E_HW_FLAG_802_1AD_CAPABLE;
 	PMD_INIT_LOG(INFO, "FW %d.%d API %d.%d NVM %02d.%02d.%02d eetrack %04x",
 		     hw->aq.fw_maj_ver, hw->aq.fw_min_ver,
 		     hw->aq.api_maj_ver, hw->aq.api_min_ver,

  parent reply index

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-18 17:13 [dpdk-dev] [DPDK] " Xiao Zhang
2019-07-18  8:23 ` Wang, Haiyue
2019-07-18  8:25 ` Wang, Haiyue
2019-07-18  8:32   ` Zhang, Xiao
2019-07-18 22:51 ` [dpdk-dev] [v2] " Xiao Zhang
2019-07-19  0:56   ` Zhang, Qi Z
2019-07-19  1:02     ` Wang, Haiyue
2019-07-19  1:14       ` Zhang, Xiao
2019-07-19 10:26   ` Xiao Zhang [this message]
2019-07-19 10:59     ` [dpdk-dev] [v4] " Xiao Zhang
2019-07-19  2:17       ` Wang, Haiyue
2019-07-19  5:26         ` Zhang, Qi Z
2019-07-19 15:30       ` Stillwell Jr, Paul M
2019-07-19 18:17         ` [dpdk-dev] [dpdk-stable] " Ferruh Yigit
2019-07-20  0:53           ` Zhang, Xiao

Reply instructions:

You may reply publically 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:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1563531994-10076-1-git-send-email-xiao.zhang@intel.com \
    --to=xiao.zhang@intel.com \
    --cc=beilei.xing@intel.com \
    --cc=dev@dpdk.org \
    --cc=haiyue.wang@intel.com \
    --cc=qi.z.zhang@intel.com \
    --cc=stable@dpdk.org \


* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

DPDK-dev Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/dpdk-dev/0 dpdk-dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dpdk-dev dpdk-dev/ https://lore.kernel.org/dpdk-dev \
		dev@dpdk.org dpdk-dev@archiver.kernel.org
	public-inbox-index dpdk-dev

Newsgroup available over NNTP:

AGPL code for this site: git clone https://public-inbox.org/ public-inbox