From: Marc Sune <marcdevel@gmail.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>,
"Xu, Qian Q" <qian.q.xu@intel.com>,
"Xing, Beilei" <beilei.xing@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>,
"Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
"Lu, Wenzhuo" <wenzhuo.lu@intel.com>,
"Richardson, Bruce" <bruce.richardson@intel.com>,
"Glynn, Michael J" <michael.j.glynn@intel.com>
Cc: Marc Sune <marcdevel@gmail.com>
Subject: [dpdk-dev] [PATCH v13 7/8] ethdev: convert speed number to bitmap flag
Date: Sat, 26 Mar 2016 02:27:19 +0100 [thread overview]
Message-ID: <1458955640-22951-8-git-send-email-marcdevel@gmail.com> (raw)
In-Reply-To: <1458955640-22951-1-git-send-email-marcdevel@gmail.com>
It is a helper for the bitmap configuration.
Signed-off-by: Marc Sune <marcdevel@gmail.com>
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
lib/librte_ether/rte_ethdev.c | 31 +++++++++++++++++++++++++++++++
lib/librte_ether/rte_ethdev.h | 13 +++++++++++++
lib/librte_ether/rte_ether_version.map | 1 +
3 files changed, 45 insertions(+)
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index 76a30fd..695b475 100644
--- a/lib/librte_ether/rte_ethdev.c
+++ b/lib/librte_ether/rte_ethdev.c
@@ -866,6 +866,37 @@ rte_eth_dev_tx_queue_config(struct rte_eth_dev *dev, uint16_t nb_queues)
return 0;
}
+uint32_t
+rte_eth_speed_bitflag(uint32_t speed, int duplex)
+{
+ switch (speed) {
+ case ETH_SPEED_NUM_10M:
+ return duplex ? ETH_LINK_SPEED_10M : ETH_LINK_SPEED_10M_HD;
+ case ETH_SPEED_NUM_100M:
+ return duplex ? ETH_LINK_SPEED_100M : ETH_LINK_SPEED_100M_HD;
+ case ETH_SPEED_NUM_1G:
+ return ETH_LINK_SPEED_1G;
+ case ETH_SPEED_NUM_2_5G:
+ return ETH_LINK_SPEED_2_5G;
+ case ETH_SPEED_NUM_5G:
+ return ETH_LINK_SPEED_5G;
+ case ETH_SPEED_NUM_10G:
+ return ETH_LINK_SPEED_10G;
+ case ETH_SPEED_NUM_20G:
+ return ETH_LINK_SPEED_20G;
+ case ETH_SPEED_NUM_25G:
+ return ETH_LINK_SPEED_25G;
+ case ETH_SPEED_NUM_40G:
+ return ETH_LINK_SPEED_40G;
+ case ETH_SPEED_NUM_50G:
+ return ETH_LINK_SPEED_50G;
+ case ETH_SPEED_NUM_56G:
+ return ETH_LINK_SPEED_56G;
+ default:
+ return 0;
+ }
+}
+
int
rte_eth_dev_configure(uint8_t port_id, uint16_t nb_rx_q, uint16_t nb_tx_q,
const struct rte_eth_conf *dev_conf)
diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h
index 9a1466b..0b436d9 100644
--- a/lib/librte_ether/rte_ethdev.h
+++ b/lib/librte_ether/rte_ethdev.h
@@ -1876,6 +1876,19 @@ struct eth_driver {
void rte_eth_driver_register(struct eth_driver *eth_drv);
/**
+ * Convert a numerical speed in Mbps to a bitmap flag that can be used in
+ * the bitmap link_speeds of the struct rte_eth_conf
+ *
+ * @param speed
+ * Numerical speed value in Mbps
+ * @param duplex
+ * ETH_LINK_[HALF/FULL]_DUPLEX (only for 10/100M speeds)
+ * @return
+ * 0 if the speed cannot be mapped
+ */
+uint32_t rte_eth_speed_bitflag(uint32_t speed, int duplex);
+
+/**
* Configure an Ethernet device.
* This function must be invoked first before any other function in the
* Ethernet API. This function can also be re-invoked when a device is in the
diff --git a/lib/librte_ether/rte_ether_version.map b/lib/librte_ether/rte_ether_version.map
index b1f4475..214ecc7 100644
--- a/lib/librte_ether/rte_ether_version.map
+++ b/lib/librte_ether/rte_ether_version.map
@@ -125,6 +125,7 @@ DPDK_16.04 {
rte_eth_dev_set_vlan_ether_type;
rte_eth_dev_udp_tunnel_port_add;
rte_eth_dev_udp_tunnel_port_delete;
+ rte_eth_speed_bitflag;
rte_eth_tx_buffer_count_callback;
rte_eth_tx_buffer_drop_callback;
rte_eth_tx_buffer_init;
--
2.1.4
next prev parent reply other threads:[~2016-03-26 1:28 UTC|newest]
Thread overview: 166+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1443993003-1059-1-git-send-email-marcdevel@gmail.com>
2015-10-25 21:59 ` [dpdk-dev] [PATCH v6 0/5] ethdev: add speed capabilities and refactor link API Marc Sune
2015-10-25 21:59 ` [dpdk-dev] [PATCH v6 1/5] ethdev: Added ETH_SPEED_CAP bitmap for ports Marc Sune
2015-11-01 22:11 ` Thomas Monjalon
2015-11-18 23:08 ` Marc Sune
2015-10-25 21:59 ` [dpdk-dev] [PATCH v6 2/5] ethdev: Fill speed capability bitmaps in the PMDs Marc Sune
2015-10-25 21:59 ` [dpdk-dev] [PATCH v6 3/5] ethdev: redesign link speed config API Marc Sune
2015-10-25 22:03 ` Marc Sune
2015-11-01 22:16 ` Thomas Monjalon
2015-11-18 22:59 ` Marc Sune
2015-10-25 21:59 ` [dpdk-dev] [PATCH v6 4/5] doc: update with link changes Marc Sune
2015-10-25 22:00 ` [dpdk-dev] [PATCH v6 5/5] ethdev: add rte_eth_speed_to_bm_flag() to ver. map Marc Sune
2015-12-16 20:37 ` [dpdk-dev] [PATCH v6 0/5] ethdev: add speed capabilities and refactor link API Marc Sune
2015-12-16 20:44 ` Olga Shern
2016-01-29 0:42 ` [dpdk-dev] [PATCH v7 " Marc Sune
2016-01-29 0:42 ` [dpdk-dev] [PATCH v7 1/5] ethdev: Added ETH_SPEED_CAP bitmap for ports Marc Sune
2016-01-29 0:42 ` [dpdk-dev] [PATCH v7 2/5] ethdev: Fill speed capability bitmaps in the PMDs Marc Sune
2016-01-29 0:42 ` [dpdk-dev] [PATCH v7 3/5] ethdev: redesign link speed config API Marc Sune
2016-01-29 9:24 ` Ananyev, Konstantin
2016-01-29 9:37 ` Thomas Monjalon
2016-01-29 9:47 ` Ananyev, Konstantin
2016-01-29 9:53 ` Thomas Monjalon
2016-01-29 10:17 ` Ananyev, Konstantin
2016-01-29 12:40 ` Marc
2016-02-01 0:40 ` Zhang, Helin
2016-02-02 0:04 ` Marc
2016-02-02 0:45 ` [dpdk-dev] FW: " Zhang, Helin
2016-01-29 16:16 ` [dpdk-dev] " Nélio Laranjeiro
2016-01-31 21:24 ` Marc
2016-01-29 0:42 ` [dpdk-dev] [PATCH v7 4/5] doc: update with link changes Marc Sune
2016-01-29 0:42 ` [dpdk-dev] [PATCH v7 5/5] ethdev: add rte_eth_speed_to_bm_flag() to ver. map Marc Sune
2016-01-29 13:05 ` Panu Matilainen
2016-01-31 21:21 ` Marc
2016-02-14 22:17 ` [dpdk-dev] [PATCH v8 0/4] ethdev: add speed capabilities and refactor link API Marc Sune
2016-02-14 22:17 ` [dpdk-dev] [PATCH v8 1/4] ethdev: Added ETH_SPEED_CAP bitmap for ports Marc Sune
2016-02-16 20:42 ` Stephen Hemminger
2016-02-14 22:17 ` [dpdk-dev] [PATCH v8 2/4] ethdev: Fill speed capability bitmaps in the PMDs Marc Sune
2016-02-15 8:43 ` Nélio Laranjeiro
2016-02-15 9:17 ` Chen, Jing D
2016-02-15 14:43 ` Rahul Lakkireddy
2016-02-15 17:14 ` Marc
2016-02-16 15:25 ` Nélio Laranjeiro
2016-02-16 22:49 ` Marc
2016-02-14 22:17 ` [dpdk-dev] [PATCH v8 3/4] ethdev: redesign link speed config API Marc Sune
2016-02-15 8:46 ` Nélio Laranjeiro
2016-02-15 11:00 ` Marc
2016-02-15 11:39 ` Olga Shern
2016-02-16 10:28 ` Matej Vido
2016-02-16 22:55 ` Marc
2016-02-14 22:17 ` [dpdk-dev] [PATCH v8 4/4] doc: update with link changes Marc Sune
2016-02-18 18:14 ` Mcnamara, John
2016-02-28 22:17 ` Marc
2016-03-01 0:45 ` [dpdk-dev] [PATCH v9 0/4] ethdev: add speed capabilities and refactor link API Marc Sune
2016-03-01 0:45 ` [dpdk-dev] [PATCH v9 1/4] ethdev: Added ETH_SPEED_CAP bitmap for ports Marc Sune
2016-03-01 0:45 ` [dpdk-dev] [PATCH v9 2/4] ethdev: Fill speed capability bitmaps in the PMDs Marc Sune
2016-03-01 0:45 ` [dpdk-dev] [PATCH v9 3/4] ethdev: redesign link speed config API Marc Sune
2016-03-09 8:45 ` Nélio Laranjeiro
2016-03-09 10:09 ` Marc
2016-03-09 10:20 ` Nélio Laranjeiro
2016-03-01 0:45 ` [dpdk-dev] [PATCH v9 4/4] doc: update with link changes Marc Sune
2016-03-08 15:00 ` [dpdk-dev] [PATCH v9 0/4] ethdev: add speed capabilities and refactor link API Marc Sune
2016-03-08 16:53 ` Nélio Laranjeiro
2016-03-09 9:29 ` Nélio Laranjeiro
2016-03-09 10:09 ` Nélio Laranjeiro
2016-03-09 20:57 ` Marc
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 0/8] ethdev: 100G and link speed API refactoring Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 1/8] ethdev: use constants for link state Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 2/8] ethdev: use constants for link duplex Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 3/8] app/testpmd: move speed and duplex parsing in a function Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 4/8] ethdev: rename link speed constants Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 5/8] ethdev: add speed capabilities Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 6/8] ethdev: redesign link speed config Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 7/8] ethdev: convert speed number to bitmap flag Thomas Monjalon
2016-03-14 21:55 ` [dpdk-dev] [PATCH v10 8/8] ethdev: add 100G link speed Thomas Monjalon
2016-03-15 0:04 ` [dpdk-dev] [PATCH v10 0/8] ethdev: 100G and link speed API refactoring Matej Vido
2016-03-15 7:12 ` Thomas Monjalon
2016-03-15 7:45 ` Matej Vido
2016-03-15 8:38 ` Nélio Laranjeiro
2016-03-15 13:12 ` [dpdk-dev] [PATCH 0/4] szedata2: " Matej Vido
2016-03-15 13:12 ` [dpdk-dev] [PATCH 1/4] szedata2: use constants for link state Matej Vido
2016-03-15 13:12 ` [dpdk-dev] [PATCH 2/4] szedata2: rename link speed constants Matej Vido
2016-03-15 13:12 ` [dpdk-dev] [PATCH 3/4] szedata2: redesign link speed config Matej Vido
2016-03-15 13:12 ` [dpdk-dev] [PATCH 4/4] szedata2: add 100G link speed Matej Vido
2016-03-15 13:41 ` Thomas Monjalon
2016-03-15 13:47 ` Matej Vido
2016-03-15 13:50 ` Matej Vido
2016-03-15 20:51 ` Thomas Monjalon
2016-03-17 18:08 ` [dpdk-dev] [PATCH v11 0/8] ethdev: 100G and link speed API refactoring Thomas Monjalon
2016-03-17 18:08 ` [dpdk-dev] [PATCH v11 1/8] ethdev: use constants for link state Thomas Monjalon
2016-03-17 18:08 ` [dpdk-dev] [PATCH v11 2/8] ethdev: use constants for link duplex Thomas Monjalon
2016-03-23 2:44 ` Zhang, Helin
2016-03-23 8:34 ` Thomas Monjalon
2016-03-17 18:09 ` [dpdk-dev] [PATCH v11 3/8] app/testpmd: move speed and duplex parsing in a function Thomas Monjalon
2016-03-17 18:09 ` [dpdk-dev] [PATCH v11 4/8] ethdev: rename link speed constants Thomas Monjalon
2016-03-23 2:52 ` Zhang, Helin
2016-03-23 8:31 ` Thomas Monjalon
2016-03-17 18:09 ` [dpdk-dev] [PATCH v11 5/8] ethdev: add speed capabilities Thomas Monjalon
2016-03-18 5:18 ` Chen, Jing D
2016-03-18 8:06 ` Thomas Monjalon
2016-03-18 9:28 ` Adrien Mazarguil
2016-03-18 10:12 ` Thomas Monjalon
2016-03-17 18:09 ` [dpdk-dev] [PATCH v11 6/8] ethdev: redesign link speed config Thomas Monjalon
2016-03-17 18:09 ` [dpdk-dev] [PATCH v11 7/8] ethdev: convert speed number to bitmap flag Thomas Monjalon
2016-03-17 18:09 ` [dpdk-dev] [PATCH v11 8/8] ethdev: add 100G link speed Thomas Monjalon
2016-03-22 19:58 ` [dpdk-dev] [PATCH v11 0/8] ethdev: 100G and link speed API refactoring Thomas Monjalon
2016-03-23 1:18 ` Xu, Qian Q
2016-03-23 8:39 ` Thomas Monjalon
2016-03-23 20:54 ` Marc
2016-03-24 6:21 ` Xu, Qian Q
2016-03-24 7:47 ` Marc
2016-03-25 1:02 ` Xu, Qian Q
2016-03-25 9:35 ` Thomas Monjalon
2016-03-25 15:07 ` Zhang, Helin
2016-03-25 15:32 ` Thomas Monjalon
2016-03-25 20:41 ` Marc
2016-03-25 21:30 ` Marc
2016-03-26 1:25 ` Marc
2016-03-26 8:08 ` Thomas Monjalon
2016-03-26 10:24 ` Marc
2016-03-27 9:53 ` Thomas Monjalon
2016-03-27 19:39 ` Marc
2016-03-28 13:42 ` Thomas Monjalon
2016-03-28 19:11 ` Marc
2016-03-24 17:32 ` Matej Vido
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 " Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 1/8] ethdev: use constants for link state Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 2/8] ethdev: use constants for link duplex Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 3/8] app/testpmd: move speed and duplex parsing in a function Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 4/8] ethdev: rename link speed constants Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 5/8] ethdev: add speed capabilities Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 6/8] ethdev: redesign link speed config Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 7/8] ethdev: convert speed number to bitmap flag Thomas Monjalon
2016-03-25 19:42 ` [dpdk-dev] [PATCH v12 8/8] ethdev: add 100G link speed Thomas Monjalon
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 0/8] ethdev: 100G and link speed API refactoring Marc Sune
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 1/8] ethdev: use constants for link state Marc Sune
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 2/8] ethdev: use constants for link duplex Marc Sune
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 3/8] app/testpmd: move speed and duplex parsing in a function Marc Sune
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 4/8] ethdev: rename link speed constants Marc Sune
2016-04-06 8:34 ` Weglicki, MichalX
2016-04-06 8:52 ` Thomas Monjalon
2016-04-06 9:16 ` Weglicki, MichalX
2016-04-06 9:34 ` Thomas Monjalon
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 5/8] ethdev: add speed capabilities Marc Sune
2016-03-29 13:31 ` Alejandro Lucero
2016-03-30 8:06 ` Marc
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 6/8] ethdev: redesign link speed config Marc Sune
2016-03-29 6:18 ` Xing, Beilei
2016-03-30 7:59 ` Marc
2016-03-31 0:57 ` Xing, Beilei
2016-03-31 12:28 ` Thomas Monjalon
2016-04-01 9:53 ` Xing, Beilei
2016-03-26 1:27 ` Marc Sune [this message]
2016-03-26 1:27 ` [dpdk-dev] [PATCH v13 8/8] ethdev: add 100G link speed Marc Sune
2016-03-26 8:11 ` [dpdk-dev] [PATCH v13 0/8] ethdev: 100G and link speed API refactoring Thomas Monjalon
2016-03-31 16:17 ` Adrien Mazarguil
2016-03-30 9:23 ` Thomas Monjalon
2016-03-31 6:25 ` Lu, Wenzhuo
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 " Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 1/8] ethdev: use constants for link state Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 2/8] ethdev: use constants for link duplex Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 3/8] app/testpmd: move speed and duplex parsing in a function Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 4/8] ethdev: rename link speed constants Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 5/8] ethdev: add speed capabilities Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 6/8] ethdev: redesign link speed config Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 7/8] ethdev: convert speed number to bitmap flag Marc Sune
2016-03-31 22:12 ` [dpdk-dev] [PATCH v14 8/8] ethdev: add 100G link speed Marc Sune
2016-04-01 19:38 ` [dpdk-dev] [PATCH v14 0/8] ethdev: 100G and link speed API refactoring Thomas Monjalon
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=1458955640-22951-8-git-send-email-marcdevel@gmail.com \
--to=marcdevel@gmail.com \
--cc=beilei.xing@intel.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=konstantin.ananyev@intel.com \
--cc=michael.j.glynn@intel.com \
--cc=qian.q.xu@intel.com \
--cc=thomas.monjalon@6wind.com \
--cc=wenzhuo.lu@intel.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).