From: Ajit Khaparde <ajit.khaparde@broadcom.com>
To: dev@dpdk.org
Subject: [PATCH v2 06/14] net/bnxt: add support for p7 device family
Date: Sat, 9 Dec 2023 17:24:47 -0800 [thread overview]
Message-ID: <20231210012455.20229-7-ajit.khaparde@broadcom.com> (raw)
In-Reply-To: <20231210012455.20229-1-ajit.khaparde@broadcom.com>
[-- Attachment #1: Type: text/plain, Size: 4298 bytes --]
Add support for the P7 device family.
Signed-off-by: Ajit Khaparde <ajit.khaparde@broadcom.com>
---
drivers/net/bnxt/bnxt.h | 14 ++++++++++++--
drivers/net/bnxt/bnxt_ethdev.c | 25 +++++++++++++++++++++++++
2 files changed, 37 insertions(+), 2 deletions(-)
diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h
index 6af668e92f..3a1d8a6ff6 100644
--- a/drivers/net/bnxt/bnxt.h
+++ b/drivers/net/bnxt/bnxt.h
@@ -72,6 +72,11 @@
#define BROADCOM_DEV_ID_58814 0xd814
#define BROADCOM_DEV_ID_58818 0xd818
#define BROADCOM_DEV_ID_58818_VF 0xd82e
+#define BROADCOM_DEV_ID_57608 0x1760
+#define BROADCOM_DEV_ID_57604 0x1761
+#define BROADCOM_DEV_ID_57602 0x1762
+#define BROADCOM_DEV_ID_57601 0x1763
+#define BROADCOM_DEV_ID_5760X_VF 0x1819
#define BROADCOM_DEV_957508_N2100 0x5208
#define BROADCOM_DEV_957414_N225 0x4145
@@ -685,6 +690,7 @@ struct bnxt {
#define BNXT_FLAG_FLOW_XSTATS_EN BIT(25)
#define BNXT_FLAG_DFLT_MAC_SET BIT(26)
#define BNXT_FLAG_GFID_ENABLE BIT(27)
+#define BNXT_FLAG_CHIP_P7 BIT(30)
#define BNXT_PF(bp) (!((bp)->flags & BNXT_FLAG_VF))
#define BNXT_VF(bp) ((bp)->flags & BNXT_FLAG_VF)
#define BNXT_NPAR(bp) ((bp)->flags & BNXT_FLAG_NPAR_PF)
@@ -694,12 +700,16 @@ struct bnxt {
#define BNXT_USE_KONG(bp) ((bp)->flags & BNXT_FLAG_KONG_MB_EN)
#define BNXT_VF_IS_TRUSTED(bp) ((bp)->flags & BNXT_FLAG_TRUSTED_VF_EN)
#define BNXT_CHIP_P5(bp) ((bp)->flags & BNXT_FLAG_CHIP_P5)
+#define BNXT_CHIP_P7(bp) ((bp)->flags & BNXT_FLAG_CHIP_P7)
+#define BNXT_CHIP_P5_P7(bp) (BNXT_CHIP_P5(bp) || BNXT_CHIP_P7(bp))
#define BNXT_STINGRAY(bp) ((bp)->flags & BNXT_FLAG_STINGRAY)
-#define BNXT_HAS_NQ(bp) BNXT_CHIP_P5(bp)
-#define BNXT_HAS_RING_GRPS(bp) (!BNXT_CHIP_P5(bp))
+#define BNXT_HAS_NQ(bp) BNXT_CHIP_P5_P7(bp)
+#define BNXT_HAS_RING_GRPS(bp) (!BNXT_CHIP_P5_P7(bp))
#define BNXT_FLOW_XSTATS_EN(bp) ((bp)->flags & BNXT_FLAG_FLOW_XSTATS_EN)
#define BNXT_HAS_DFLT_MAC_SET(bp) ((bp)->flags & BNXT_FLAG_DFLT_MAC_SET)
#define BNXT_GFID_ENABLED(bp) ((bp)->flags & BNXT_FLAG_GFID_ENABLE)
+#define BNXT_P7_MAX_NQ_RING_CNT 512
+#define BNXT_P7_CQ_MAX_L2_ENT 8192
uint32_t flags2;
#define BNXT_FLAGS2_PTP_TIMESYNC_ENABLED BIT(0)
diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
index 999e4f1398..1e4182071a 100644
--- a/drivers/net/bnxt/bnxt_ethdev.c
+++ b/drivers/net/bnxt/bnxt_ethdev.c
@@ -84,6 +84,11 @@ static const struct rte_pci_id bnxt_pci_id_map[] = {
{ RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_58814) },
{ RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_58818) },
{ RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_58818_VF) },
+ { RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_57608) },
+ { RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_57604) },
+ { RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_57602) },
+ { RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_57601) },
+ { RTE_PCI_DEVICE(PCI_VENDOR_ID_BROADCOM, BROADCOM_DEV_ID_5760X_VF) },
{ .vendor_id = 0, /* sentinel */ },
};
@@ -4681,6 +4686,7 @@ static bool bnxt_vf_pciid(uint16_t device_id)
case BROADCOM_DEV_ID_57500_VF1:
case BROADCOM_DEV_ID_57500_VF2:
case BROADCOM_DEV_ID_58818_VF:
+ case BROADCOM_DEV_ID_5760X_VF:
/* FALLTHROUGH */
return true;
default:
@@ -4706,7 +4712,23 @@ static bool bnxt_p5_device(uint16_t device_id)
case BROADCOM_DEV_ID_58812:
case BROADCOM_DEV_ID_58814:
case BROADCOM_DEV_ID_58818:
+ /* FALLTHROUGH */
+ return true;
+ default:
+ return false;
+ }
+}
+
+/* Phase 7 device */
+static bool bnxt_p7_device(uint16_t device_id)
+{
+ switch (device_id) {
case BROADCOM_DEV_ID_58818_VF:
+ case BROADCOM_DEV_ID_57608:
+ case BROADCOM_DEV_ID_57604:
+ case BROADCOM_DEV_ID_57602:
+ case BROADCOM_DEV_ID_57601:
+ case BROADCOM_DEV_ID_5760X_VF:
/* FALLTHROUGH */
return true;
default:
@@ -5874,6 +5896,9 @@ static int bnxt_drv_init(struct rte_eth_dev *eth_dev)
if (bnxt_p5_device(pci_dev->id.device_id))
bp->flags |= BNXT_FLAG_CHIP_P5;
+ if (bnxt_p7_device(pci_dev->id.device_id))
+ bp->flags |= BNXT_FLAG_CHIP_P7;
+
if (pci_dev->id.device_id == BROADCOM_DEV_ID_58802 ||
pci_dev->id.device_id == BROADCOM_DEV_ID_58804 ||
pci_dev->id.device_id == BROADCOM_DEV_ID_58808 ||
--
2.39.2 (Apple Git-143)
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4218 bytes --]
next prev parent reply other threads:[~2023-12-10 1:32 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-10 1:24 [PATCH v2 00/14] support new 5760X P7 devices Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 01/14] net/bnxt: refactor epoch setting Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 02/14] net/bnxt: update HWRM API Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 03/14] net/bnxt: log a message when multicast promisc mode changes Ajit Khaparde
2023-12-10 17:56 ` Stephen Hemminger
2023-12-10 22:58 ` Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 04/14] net/bnxt: use the correct COS queue for Tx Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 05/14] net/bnxt: refactor mem zone allocation Ajit Khaparde
2023-12-10 1:24 ` Ajit Khaparde [this message]
2023-12-10 1:24 ` [PATCH v2 07/14] net/bnxt: refactor code to support P7 devices Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 08/14] net/bnxt: fix array overflow Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 09/14] net/bnxt: add support for backing store v2 Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 10/14] net/bnxt: refactor the ulp initialization Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 11/14] net/bnxt: modify sending new HWRM commands to firmware Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 12/14] net/bnxt: retry HWRM ver get if the command fails Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 13/14] net/bnxt: cap ring resources for P7 devices Ajit Khaparde
2023-12-10 1:24 ` [PATCH v2 14/14] net/bnxt: add support for v3 Rx completion Ajit Khaparde
2023-12-13 5:33 ` [PATCH v2 00/14] support new 5760X P7 devices Ajit Khaparde
2023-12-13 7:57 ` David Marchand
2023-12-13 14:49 ` Ajit Khaparde
2023-12-13 19:09 ` Ajit Khaparde
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=20231210012455.20229-7-ajit.khaparde@broadcom.com \
--to=ajit.khaparde@broadcom.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.