From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH 4/4] bnx2x: enable BNX2X poll mode driver
Date: Thu, 7 May 2015 16:25:35 -0700 [thread overview]
Message-ID: <1431041135-6289-5-git-send-email-stephen@networkplumber.org> (raw)
In-Reply-To: <1431041135-6289-1-git-send-email-stephen@networkplumber.org>
This is build infrastructure changes for bnx2x driver.
- enable BNX2X poll mode driver in default config.
- add it to mk
- put entry in MAINTAINERS
Note: I intentionally did not list myself as maintainer of this
driver. There is no official support for this driver.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
---
MAINTAINERS | 3 +++
config/common_linuxapp | 10 +++++++++
lib/Makefile | 1 +
lib/librte_eal/common/include/rte_pci_dev_ids.h | 30 +++++++++++++++++++++++++
lib/librte_pmd_bnx2x/rte_pmd_bnx2x_version.map | 4 ++++
mk/rte.app.mk | 8 +++++++
6 files changed, 56 insertions(+)
create mode 100644 lib/librte_pmd_bnx2x/rte_pmd_bnx2x_version.map
diff --git a/MAINTAINERS b/MAINTAINERS
index f53b87e..f9340c6 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -258,6 +258,9 @@ M: John McNamara <john.mcnamara@intel.com>
F: lib/librte_pmd_pcap/
F: doc/guides/nics/pcap_ring.rst
+Qlogic/Broadcom bnx2x
+F: lib/librte_pmd_bnx2x/
+
Ring PMD
M: Bruce Richardson <bruce.richardson@intel.com>
F: lib/librte_pmd_ring/
diff --git a/config/common_linuxapp b/config/common_linuxapp
index 0078dc9..ef991f2 100644
--- a/config/common_linuxapp
+++ b/config/common_linuxapp
@@ -214,6 +214,16 @@ CONFIG_RTE_LIBRTE_ENIC_PMD=y
CONFIG_RTE_LIBRTE_ENIC_DEBUG=n
#
+# Compile burst-oriented Broadcom PMD driver
+#
+CONFIG_RTE_LIBRTE_BNX2X_PMD=y
+CONFIG_RTE_LIBRTE_BNX2X_DEBUG_INIT=n
+CONFIG_RTE_LIBRTE_BNX2X_DEBUG=n
+CONFIG_RTE_LIBRTE_BNX2X_MF_SUPPORT=n
+CONFIG_RTE_LIBRTE_BNX2X_DEBUG_TX=n
+CONFIG_RTE_LIBRTE_BNX2X_DEBUG_RX=n
+
+#
# Compile burst-oriented VIRTIO PMD driver
#
CONFIG_RTE_LIBRTE_VIRTIO_PMD=y
diff --git a/lib/Makefile b/lib/Makefile
index d94355d..c89092f 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -47,6 +47,7 @@ DIRS-$(CONFIG_RTE_LIBRTE_I40E_PMD) += librte_pmd_i40e
DIRS-$(CONFIG_RTE_LIBRTE_FM10K_PMD) += librte_pmd_fm10k
DIRS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += librte_pmd_mlx4
DIRS-$(CONFIG_RTE_LIBRTE_ENIC_PMD) += librte_pmd_enic
+DIRS-$(CONFIG_RTE_LIBRTE_BNX2X_PMD) += librte_pmd_bnx2x
DIRS-$(CONFIG_RTE_LIBRTE_PMD_BOND) += librte_pmd_bond
DIRS-$(CONFIG_RTE_LIBRTE_PMD_RING) += librte_pmd_ring
DIRS-$(CONFIG_RTE_LIBRTE_PMD_PCAP) += librte_pmd_pcap
diff --git a/lib/librte_eal/common/include/rte_pci_dev_ids.h b/lib/librte_eal/common/include/rte_pci_dev_ids.h
index 21d2eed..be4c35d 100644
--- a/lib/librte_eal/common/include/rte_pci_dev_ids.h
+++ b/lib/librte_eal/common/include/rte_pci_dev_ids.h
@@ -140,6 +140,14 @@
#define RTE_PCI_DEV_ID_DECL_FM10KVF(vend, dev)
#endif
+#ifndef RTE_PCI_DEV_ID_DECL_BNX2X
+#define RTE_PCI_DEV_ID_DECL_BNX2X(vend, dev)
+#endif
+
+#ifndef RTE_PCI_DEV_ID_DECL_BNX2XVF
+#define RTE_PCI_DEV_ID_DECL_BNX2XVF(vend, dev)
+#endif
+
#ifndef PCI_VENDOR_ID_INTEL
/** Vendor ID used by Intel devices */
#define PCI_VENDOR_ID_INTEL 0x8086
@@ -155,6 +163,11 @@
#define PCI_VENDOR_ID_VMWARE 0x15AD
#endif
+#ifndef PCI_VENDOR_ID_BROADCOM
+/** Vendor ID used by Broadcom devices */
+#define PCI_VENDOR_ID_BROADCOM 0x14E4
+#endif
+
/******************** Physical EM devices from e1000_hw.h ********************/
#define E1000_DEV_ID_82542 0x1000
@@ -548,6 +561,21 @@ RTE_PCI_DEV_ID_DECL_VMXNET3(PCI_VENDOR_ID_VMWARE, VMWARE_DEV_ID_VMXNET3)
RTE_PCI_DEV_ID_DECL_FM10KVF(PCI_VENDOR_ID_INTEL, FM10K_DEV_ID_VF)
+/****************** Qualcom devices ******************/
+
+/* Broadcom/Qualcom BNX2X */
+#define BNX2X_DEV_ID_57711 0x164F
+#define BNX2X_DEV_ID_57810 0x168E
+#define BNX2X_DEV_ID_57810_MF 0x16AE
+#define BNX2X_DEV_ID_57810_VF 0x16AF
+
+RTE_PCI_DEV_ID_DECL_BNX2X(PCI_VENDOR_ID_BROADCOM, BNX2X_DEV_ID_57711)
+RTE_PCI_DEV_ID_DECL_BNX2X(PCI_VENDOR_ID_BROADCOM, BNX2X_DEV_ID_57810)
+#ifdef RTE_LIBRTE_BNX2X_MF_SUPPORT
+RTE_PCI_DEV_ID_DECL_BNX2X(PCI_VENDOR_ID_BROADCOM, BNX2X_DEV_ID_57810_MF)
+#endif
+RTE_PCI_DEV_ID_DECL_BNX2XVF(PCI_VENDOR_ID_BROADCOM, BNX2X_DEV_ID_57810_VF)
+
/*
* Undef all RTE_PCI_DEV_ID_DECL_* here.
*/
@@ -560,5 +588,7 @@ RTE_PCI_DEV_ID_DECL_FM10KVF(PCI_VENDOR_ID_INTEL, FM10K_DEV_ID_VF)
#undef RTE_PCI_DEV_ID_DECL_I40EVF
#undef RTE_PCI_DEV_ID_DECL_VIRTIO
#undef RTE_PCI_DEV_ID_DECL_VMXNET3
+#undef RTE_PCI_DEV_ID_DECL_BNX2X
+#undef RTE_PCI_DEV_ID_DECL_BNX2XVF
#undef RTE_PCI_DEV_ID_DECL_FM10K
#undef RTE_PCI_DEV_ID_DECL_FM10KVF
diff --git a/lib/librte_pmd_bnx2x/rte_pmd_bnx2x_version.map b/lib/librte_pmd_bnx2x/rte_pmd_bnx2x_version.map
new file mode 100644
index 0000000..ef35398
--- /dev/null
+++ b/lib/librte_pmd_bnx2x/rte_pmd_bnx2x_version.map
@@ -0,0 +1,4 @@
+DPDK_2.0 {
+
+ local: *;
+};
diff --git a/mk/rte.app.mk b/mk/rte.app.mk
index 62a76ae..3bc0f5d 100644
--- a/mk/rte.app.mk
+++ b/mk/rte.app.mk
@@ -151,6 +151,10 @@ ifeq ($(CONFIG_RTE_LIBRTE_MLX4_PMD),y)
LDLIBS += -libverbs
endif
+ifeq ($(CONFIG_RTE_LIBRTE_BNX2X_PMD),y)
+LDLIBS += -lz
+endif
+
LDLIBS += --start-group
ifeq ($(CONFIG_RTE_BUILD_COMBINE_LIBS),n)
@@ -219,6 +223,10 @@ ifeq ($(CONFIG_RTE_LIBRTE_ENIC_PMD),y)
LDLIBS += -lrte_pmd_enic
endif
+ifeq ($(CONFIG_RTE_LIBRTE_BNX2X_PMD),y)
+LDLIBS += -lrte_pmd_bnx2x
+endif
+
ifeq ($(CONFIG_RTE_LIBRTE_I40E_PMD),y)
LDLIBS += -lrte_pmd_i40e
endif
--
2.1.4
prev parent reply other threads:[~2015-05-07 23:25 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-05-07 23:25 [dpdk-dev] [PATCH 0/4 v4] bnx2x: new " Stephen Hemminger
2015-05-07 23:25 ` [dpdk-dev] [PATCH 1/4] pci: allow access to PCI config space Stephen Hemminger
2015-05-11 12:54 ` Neil Horman
[not found] ` <38426478085b4e779e18967cd1b6ae4f@BRMWP-EXMB11.corp.brocade.com>
2015-05-11 15:23 ` Stephen Hemminger
2015-05-11 15:37 ` Neil Horman
2015-05-11 17:30 ` Stephen Hemminger
2015-05-11 17:31 ` Stephen Hemminger
2015-05-12 9:56 ` Bruce Richardson
2015-05-07 23:25 ` [dpdk-dev] [PATCH 2/4] bnx2x: new poll mode driver (part1) Stephen Hemminger
2015-05-07 23:25 ` [dpdk-dev] [PATCH 3/4] bnx2x: new poll mode driver (part2) Stephen Hemminger
2015-05-07 23:25 ` Stephen Hemminger [this message]
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=1431041135-6289-5-git-send-email-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--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).