From: Bernard Iremonger <bernard.iremonger@intel.com>
To: dev@dpdk.org
Subject: [dpdk-dev] [PATCH v5 03/28] librte_ether: add function rte_eth_copy_dev_info
Date: Fri, 23 Oct 2015 18:36:08 +0100 [thread overview]
Message-ID: <1445621793-3630-4-git-send-email-bernard.iremonger@intel.com> (raw)
In-Reply-To: <1445621793-3630-1-git-send-email-bernard.iremonger@intel.com>
Signed-off-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
lib/librte_ether/rte_ethdev.c | 14 ++++++++++++++
lib/librte_ether/rte_ethdev.h | 14 ++++++++++++++
lib/librte_ether/rte_ether_version.map | 7 +++++++
3 files changed, 35 insertions(+)
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index f593f6e..ce1d000 100644
--- a/lib/librte_ether/rte_ethdev.c
+++ b/lib/librte_ether/rte_ethdev.c
@@ -3342,3 +3342,17 @@ rte_eth_dev_set_eeprom(uint8_t port_id, struct rte_dev_eeprom_info *info)
FUNC_PTR_OR_ERR_RET(*dev->dev_ops->set_eeprom, -ENOTSUP);
return (*dev->dev_ops->set_eeprom)(dev, info);
}
+
+void
+rte_eth_copy_dev_info(struct rte_eth_dev *eth_dev, struct rte_pci_device *pci_dev)
+{
+ if ((eth_dev == NULL) || (pci_dev == NULL)) {
+ PMD_DEBUG_TRACE("NULL pointer eth_dev=%p pci_dev=%p\n",
+ eth_dev, pci_dev);
+ }
+
+ eth_dev->data->dev_flags = pci_dev->driver->drv_flags;
+ eth_dev->data->kdrv = pci_dev->kdrv;
+ eth_dev->data->numa_node = pci_dev->numa_node;
+ eth_dev->data->drv_name = pci_dev->driver->name;
+}
diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
index 1517fe2..37bba9f 100644
--- a/lib/librte_ether/rte_ethdev.h
+++ b/lib/librte_ether/rte_ethdev.h
@@ -3613,6 +3613,20 @@ extern int rte_eth_timesync_read_rx_timestamp(uint8_t port_id,
extern int rte_eth_timesync_read_tx_timestamp(uint8_t port_id,
struct timespec *timestamp);
+/**
+ * Copy pci device info to the Ethernet device data.
+ *
+ * @param eth_dev
+ * The *eth_dev* pointer is the address of the *rte_eth_dev* structure.
+ * @param pci_dev
+ * The *pci_dev* pointer is the address of the *rte_pci_device* structure.
+ *
+ * @return
+ * - 0 on success, negative on error
+ */
+extern void rte_eth_copy_dev_info(struct rte_eth_dev *eth_dev, struct rte_pci_device *pci_dev);
+
+
#ifdef __cplusplus
}
#endif
diff --git a/lib/librte_ether/rte_ether_version.map b/lib/librte_ether/rte_ether_version.map
index 8345a6c..e6a43be 100644
--- a/lib/librte_ether/rte_ether_version.map
+++ b/lib/librte_ether/rte_ether_version.map
@@ -127,3 +127,10 @@ DPDK_2.1 {
rte_eth_timesync_read_tx_timestamp;
} DPDK_2.0;
+
+DPDK_2.2 {
+ global:
+
+ rte_eth_copy_dev_info;
+
+} DPDK_2.1;
--
1.9.1
next prev parent reply other threads:[~2015-10-23 17:55 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <PATCH v5>
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 00/28] remove pci driver from vdevs Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 01/28] librte_eal: add RTE_KDRV_NONE for vdevs Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 02/28] librte_ether: add fields from rte_pci_driver to rte_eth_dev_data Bernard Iremonger
2015-10-23 17:36 ` Bernard Iremonger [this message]
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 04/28] ixgbe: copy pci device info to eth_dev data Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 05/28] e1000: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 06/28] i40e: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 07/28] fm10k: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 08/28] bnx2x: " Bernard Iremonger
2015-10-23 22:37 ` Harish Patil
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 09/28] cxgbe: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 10/28] enic: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 11/28] mlx4: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 12/28] virtio: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 13/28] vmxnet3: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 14/28] null: copy " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 15/28] ring: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 16/28] pcap: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 17/28] af_packet: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 18/28] xenvirt: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 19/28] mpipe: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 20/28] bonding: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 21/28] librte_ether: remove branches on pci_dev Bernard Iremonger
2015-10-29 11:51 ` Bruce Richardson
2015-10-29 14:32 ` Iremonger, Bernard
2015-10-29 14:35 ` Bruce Richardson
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 22/28] null: remove pci device Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 23/28] ring: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 24/28] pcap: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 25/28] af_packet: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 26/28] xenvirt: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 27/28] mpipe: " Bernard Iremonger
2015-10-23 17:36 ` [dpdk-dev] [PATCH v5 28/28] bonding: " Bernard Iremonger
2015-10-29 12:18 ` [dpdk-dev] [PATCH v5 00/28] remove pci driver from vdevs Bruce Richardson
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=1445621793-3630-4-git-send-email-bernard.iremonger@intel.com \
--to=bernard.iremonger@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).