DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ajit Khaparde <ajit.khaparde@broadcom.com>
To: dev@dpdk.org
Cc: ferruh.yigit@intel.com, Rob Miller <rob.miller@broadcom.com>,
	Rob Miller <rob.miller@broadcom.com>
Subject: [dpdk-dev] [PATCH v2 13/23] net/bnxt: update HWRM API to v1.9.2.9
Date: Thu, 28 Jun 2018 13:15:39 -0700	[thread overview]
Message-ID: <20180628201549.3507-14-ajit.khaparde@broadcom.com> (raw)
In-Reply-To: <20180628201549.3507-1-ajit.khaparde@broadcom.com>

From: Rob Miller <rmiller@broadcom.com>

update HWRM API to v1.9.2.9

Signed-off-by: Rob Miller <rob.miller@broadcom.com>
Reviewed-by: Scott Branden <scott.branden@broadcom.com>
Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde@broadcom.com>
Reviewed-by: Randy Schacher <stuart.schacher@broadcom.com>
Signed-off-by: Rob Miller <rmiller@broadcom.com>
---
 drivers/net/bnxt/hsi_struct_def_dpdk.h | 113 ++++++++++++++++++++++++++++++++-
 1 file changed, 111 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bnxt/hsi_struct_def_dpdk.h b/drivers/net/bnxt/hsi_struct_def_dpdk.h
index fd6d8807e..f5c7b4228 100644
--- a/drivers/net/bnxt/hsi_struct_def_dpdk.h
+++ b/drivers/net/bnxt/hsi_struct_def_dpdk.h
@@ -686,8 +686,8 @@ struct hwrm_err_output {
 #define HWRM_VERSION_MINOR 9
 #define HWRM_VERSION_UPDATE 2
 /* non-zero means beta version */
-#define HWRM_VERSION_RSVD 6
-#define HWRM_VERSION_STR "1.9.2.6"
+#define HWRM_VERSION_RSVD 9
+#define HWRM_VERSION_STR "1.9.2.9"
 
 /****************
  * hwrm_ver_get *
@@ -3183,6 +3183,9 @@ struct hwrm_async_event_cmpl {
 	/* LLFC/PFC Configuration Change */
 	#define HWRM_ASYNC_EVENT_CMPL_EVENT_ID_LLFC_PFC_CHANGE \
 		UINT32_C(0x34)
+	/* Default VNIC Configuration Change */
+	#define HWRM_ASYNC_EVENT_CMPL_EVENT_ID_DEFAULT_VNIC_CHANGE \
+		UINT32_C(0x35)
 	/* HWRM Error */
 	#define HWRM_ASYNC_EVENT_CMPL_EVENT_ID_HWRM_ERROR \
 		UINT32_C(0xff)
@@ -3280,6 +3283,11 @@ struct hwrm_async_event_cmpl_link_status_change {
 		UINT32_C(0xffff0)
 	#define HWRM_ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PORT_ID_SFT \
 		4
+	/* Indicates the physical function this event occured on. */
+	#define HWRM_ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PF_ID_MASK \
+		UINT32_C(0xff00000)
+	#define HWRM_ASYNC_EVENT_CMPL_LINK_STATUS_CHANGE_EVENT_DATA1_PF_ID_SFT \
+		20
 } __attribute__((packed));
 
 /* hwrm_async_event_cmpl_link_mtu_change (size:128b/16B) */
@@ -4087,6 +4095,10 @@ struct hwrm_async_event_cmpl_vf_flr {
 	#define HWRM_ASYNC_EVENT_CMPL_VF_FLR_EVENT_DATA1_VF_ID_MASK \
 		UINT32_C(0xffff)
 	#define HWRM_ASYNC_EVENT_CMPL_VF_FLR_EVENT_DATA1_VF_ID_SFT 0
+	/* Indicates the physical function this event occured on. */
+	#define HWRM_ASYNC_EVENT_CMPL_VF_FLR_EVENT_DATA1_PF_ID_MASK \
+		UINT32_C(0xff0000)
+	#define HWRM_ASYNC_EVENT_CMPL_VF_FLR_EVENT_DATA1_PF_ID_SFT 16
 } __attribute__((packed));
 
 /* hwrm_async_event_cmpl_vf_mac_addr_change (size:128b/16B) */
@@ -4354,6 +4366,88 @@ struct hwrm_async_event_cmpl_llfc_pfc_change {
 		5
 } __attribute__((packed));
 
+/* hwrm_async_event_cmpl_default_vnic_change (size:128b/16B) */
+struct hwrm_async_event_cmpl_default_vnic_change {
+	uint16_t	type;
+	/*
+	 * This field indicates the exact type of the completion.
+	 * By convention, the LSB identifies the length of the
+	 * record in 16B units.  Even values indicate 16B
+	 * records.  Odd values indicate 32B
+	 * records.
+	 */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_MASK \
+		UINT32_C(0x3f)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_SFT \
+		0
+	/* HWRM Asynchronous Event Information */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_HWRM_ASYNC_EVENT \
+		UINT32_C(0x2e)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_LAST \
+		HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_TYPE_HWRM_ASYNC_EVENT
+	/* unused1 is 10 b */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_UNUSED1_MASK \
+		UINT32_C(0xffc0)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_UNUSED1_SFT \
+		6
+	/* Identifiers of events. */
+	uint16_t	event_id;
+	/* Notification of a default vnic allocaiton or free */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_ID_ALLOC_FREE_NOTIFICATION \
+		UINT32_C(0x35)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_ID_LAST \
+		HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_ID_ALLOC_FREE_NOTIFICATION
+	/* Event specific data */
+	uint32_t	event_data2;
+	uint8_t	opaque_v;
+	/*
+	 * This value is written by the NIC such that it will be different
+	 * for each pass through the completion queue.   The even passes
+	 * will write 1.  The odd passes will write 0.
+	 */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_V \
+		UINT32_C(0x1)
+	/* opaque is 7 b */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_OPAQUE_MASK \
+		UINT32_C(0xfe)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_OPAQUE_SFT 1
+	/* 8-lsb timestamp from POR (100-msec resolution) */
+	uint8_t	timestamp_lo;
+	/* 16-lsb timestamp from POR (100-msec resolution) */
+	uint16_t	timestamp_hi;
+	/* Event specific data */
+	uint32_t	event_data1;
+	/* Indicates default vnic configuration change */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_MASK \
+		UINT32_C(0x3)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_SFT \
+		0
+	/*
+	 * If this field is set to 1, then it indicates that
+	 * a default VNIC has been allocate.
+	 */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_DEF_VNIC_ALLOC \
+		UINT32_C(0x1)
+	/*
+	 * If this field is set to 2, then it indicates that
+	 * a default VNIC has been freed.
+	 */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_DEF_VNIC_FREE \
+		UINT32_C(0x2)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_LAST \
+		HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_DEF_VNIC_STATE_DEF_VNIC_FREE
+	/* Indicates the physical function this event occured on. */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_PF_ID_MASK \
+		UINT32_C(0x3fc)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_PF_ID_SFT \
+		2
+	/* Indicates the virtual function this event occured on */
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_VF_ID_MASK \
+		UINT32_C(0x3fffc00)
+	#define HWRM_ASYNC_EVENT_CMPL_DEFAULT_VNIC_CHANGE_EVENT_DATA1_VF_ID_SFT \
+		10
+} __attribute__((packed));
+
 /* hwrm_async_event_cmpl_hwrm_error (size:128b/16B) */
 struct hwrm_async_event_cmpl_hwrm_error {
 	uint16_t	type;
@@ -5196,6 +5290,21 @@ struct hwrm_func_qcaps_output {
 	 */
 	#define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_PCIE_STATS_SUPPORTED \
 		UINT32_C(0x10000)
+	/*
+	 * If the query is for a VF, then this flag shall be ignored,
+	 * If this query is for a PF and this flag is set to 1,
+	 * then the PF has the capability to adopt the VF's belonging
+	 * to another PF.
+	 */
+	#define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_ADOPTED_PF_SUPPORTED \
+		UINT32_C(0x20000)
+	/*
+	 * If the query is for a VF, then this flag shall be ignored,
+	 * If this query is for a PF and this flag is set to 1,
+	 * then the PF has the capability to administer another PF.
+	 */
+	#define HWRM_FUNC_QCAPS_OUTPUT_FLAGS_ADMIN_PF_SUPPORTED \
+		UINT32_C(0x40000)
 	/*
 	 * This value is current MAC address configured for this
 	 * function. A value of 00-00-00-00-00-00 indicates no
-- 
2.15.2 (Apple Git-101.1)

  parent reply	other threads:[~2018-06-28 20:15 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-19 21:30 [dpdk-dev] [PATCH 00/31] bnxt patchset Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 01/31] net/bnxt: fix clear port stats Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 02/31] net/bnxt: add Tx batching support Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 03/31] net/bnxt: Rx processing optimization Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 04/31] net/bnxt: set min and max descriptor count for Tx and Rx rings Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 05/31] net/bnxt: fix dev close operation Ajit Khaparde
2018-06-26 15:28   ` Ferruh Yigit
2018-06-28 20:16     ` Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 06/31] net/bnxt: set ring coalesce parameters for Stratus NIC Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 07/31] net/bnxt: fix HW Tx checksum offload check Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 08/31] net/bnxt: add support for VF id 0xd800 Ajit Khaparde
2018-06-26 15:28   ` Ferruh Yigit
2018-06-28 20:14     ` Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 09/31] net/bnxt: fix rx/tx queue start/stop operations Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 10/31] net/bnxt: code cleanup style of bnxt cpr Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 11/31] net/bnxt: code cleanup style of bnxt rxr Ajit Khaparde
2018-06-26 15:29   ` Ferruh Yigit
2018-06-19 21:30 ` [dpdk-dev] [PATCH 12/31] net/bnxt: code cleanup style of rte pmd bnxt file Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 13/31] net/bnxt: code cleanup style of bnxt stats Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 14/31] net/bnxt: code cleanup style of bnxt vnic Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 15/31] net/bnxt: code cleanup style of bnxt txq Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 16/31] net/bnxt: code cleanup style of bnxt rxq Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 17/31] net/bnxt: code cleanup style of bnxt vnic Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 18/31] net/bnxt: code cleanup style of bnxt txr Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 19/31] net/bnxt: code cleanup style of bnxt ring Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 20/31] net/bnxt: code cleanup style of bnxt ethdev Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 21/31] net/bnxt: move function check zero bytes to bnxt util.h Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 22/31] net/bnxt: filter/flow refactoring Ajit Khaparde
2018-06-26 15:29   ` Ferruh Yigit
2018-06-19 21:30 ` [dpdk-dev] [PATCH 23/31] net/bnxt: check for invalid vnic id Ajit Khaparde
2018-06-26 15:30   ` Ferruh Yigit
2018-06-19 21:30 ` [dpdk-dev] [PATCH 24/31] net/bnxt: update HWRM API to v1.9.2.9 Ajit Khaparde
2018-06-26 15:30   ` Ferruh Yigit
2018-06-28 20:14     ` Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 25/31] net/bnxt: fix Tx with multiple mbuf Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 26/31] net/bnxt: Revert reset of L2 filter id in clear_ntuple_filter Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 27/31] net/bnxt: check filter type before clearing it Ajit Khaparde
2018-06-26 15:30   ` Ferruh Yigit
2018-06-19 21:30 ` [dpdk-dev] [PATCH 28/31] net/bnxt: fix set MTU Ajit Khaparde
2018-06-26 15:30   ` Ferruh Yigit
2018-06-28 20:13     ` Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 29/31] net/bnxt: fix incorrect IO address handling in Tx Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 30/31] net/bnxt: allocate RSS context only if RSS mode is enabled Ajit Khaparde
2018-06-19 21:30 ` [dpdk-dev] [PATCH 31/31] net/bnxt: fix to move a flow to a different queue Ajit Khaparde
2018-06-26 15:27 ` [dpdk-dev] [PATCH 00/31] bnxt patchset Ferruh Yigit
2018-06-28 20:15   ` Ajit Khaparde
2018-06-28 20:15   ` [dpdk-dev] [PATCH v2 00/23] " Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 01/23] net/bnxt: fix clear port stats Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 02/23] net/bnxt: add Tx batching support Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 03/23] net/bnxt: optimize receive processing code Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 04/23] net/bnxt: set MIN/MAX descriptor count fox Tx and Rx Rings Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 05/23] net/bnxt: fix dev close operation Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 06/23] net/bnxt: set ring coalesce parameters for Stratus NIC Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 07/23] net/bnxt: fix HW Tx checksum offload check Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 08/23] net/bnxt: add support for VF id 0xd800 Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 09/23] net/bnxt: fix Rx/Tx queue start/stop operations Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 10/23] net/bnxt: move function check zero bytes to bnxt util.h Ajit Khaparde
2018-07-02 12:20       ` Ferruh Yigit
2018-07-02 12:55         ` Ferruh Yigit
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 11/23] net/bnxt: refactor filter/flow Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 12/23] net/bnxt: check for invalid vnic id Ajit Khaparde
2018-06-28 20:15     ` Ajit Khaparde [this message]
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 14/23] net/bnxt: fix Tx with multiple mbuf Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 15/23] net/bnxt: revert reset of L2 filter id Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 16/23] net/bnxt: check filter type before clearing it Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 17/23] net/bnxt: fix set MTU Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 18/23] net/bnxt: fix incorrect IO address handling in Tx Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 19/23] net/bnxt: allocate RSS context only if RSS mode is enabled Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 20/23] net/bnxt: fix to move a flow to a different queue Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 21/23] net/bnxt: check VF resources if resource manager is enabled Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 22/23] net/bnxt: fix Rx ring count limitation Ajit Khaparde
2018-06-28 20:15     ` [dpdk-dev] [PATCH v2 23/23] net/bnxt: use correct flags during VLAN configuration Ajit Khaparde
2018-07-02 15:48     ` [dpdk-dev] [PATCH v2 00/23] bnxt patchset Ferruh Yigit

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=20180628201549.3507-14-ajit.khaparde@broadcom.com \
    --to=ajit.khaparde@broadcom.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=rob.miller@broadcom.com \
    /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).