[dpdk-dev] [PATCH v3 2/4] eventdev: Add eth Rx adapter caps callback to SW evdev
Nikhil Rao
nikhil.rao at intel.com
Tue Sep 12 14:29:27 CEST 2017
The SW event device always uses a EAL service function for packet
transfer from the eth device to the event device, this function is
capable of generating a event flow ID which is the IPv4/6 RSS hash.
The caps function returns RTE_EVENT_ETH_RX_ADAPTER_SW_CAP which is
currently set to RTE_EVENT_ETH_RX_ADAPTER_CAP_FLOW_ID.
Signed-off-by: Nikhil Rao <nikhil.rao at intel.com>
---
lib/librte_eventdev/rte_eventdev_pmd.h | 6 ++++++
drivers/event/sw/sw_evdev.c | 13 +++++++++++++
2 files changed, 19 insertions(+)
diff --git a/lib/librte_eventdev/rte_eventdev_pmd.h b/lib/librte_eventdev/rte_eventdev_pmd.h
index 4cc9671..3cbc063 100644
--- a/lib/librte_eventdev/rte_eventdev_pmd.h
+++ b/lib/librte_eventdev/rte_eventdev_pmd.h
@@ -83,6 +83,12 @@ extern "C" {
} \
} while (0)
+#define RTE_EVENT_ETH_RX_ADAPTER_SW_CAP \
+ RTE_EVENT_ETH_RX_ADAPTER_CAP_FLOW_ID
+/**< Ethernet Rx adapter cap to return If the packet transfers from
+ * the ethdev to eventdev use a SW service function
+ */
+
#define RTE_EVENTDEV_DETACHED (0)
#define RTE_EVENTDEV_ATTACHED (1)
diff --git a/drivers/event/sw/sw_evdev.c b/drivers/event/sw/sw_evdev.c
index da6ac30..1344c17 100644
--- a/drivers/event/sw/sw_evdev.c
+++ b/drivers/event/sw/sw_evdev.c
@@ -437,6 +437,17 @@ sw_dev_configure(const struct rte_eventdev *dev)
return 0;
}
+static int
+sw_eth_rx_adapter_caps_get(const struct rte_eventdev *dev,
+ uint8_t eth_port_id,
+ uint32_t *caps)
+{
+ RTE_SET_USED(dev);
+ RTE_SET_USED(eth_port_id);
+ *caps = RTE_EVENT_ETH_RX_ADAPTER_SW_CAP;
+ return 0;
+}
+
static void
sw_info_get(struct rte_eventdev *dev, struct rte_event_dev_info *info)
{
@@ -751,6 +762,8 @@ sw_probe(struct rte_vdev_device *vdev)
.port_link = sw_port_link,
.port_unlink = sw_port_unlink,
+ .eth_rx_adapter_caps_get = sw_eth_rx_adapter_caps_get,
+
.xstats_get = sw_xstats_get,
.xstats_get_names = sw_xstats_get_names,
.xstats_get_by_name = sw_xstats_get_by_name,
--
2.7.4
More information about the dev
mailing list