aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-generic/odp_packet_io.c
diff options
context:
space:
mode:
authorMaxim Uvarov <maxim.uvarov@linaro.org>2015-08-26 18:49:01 +0300
committerMaxim Uvarov <maxim.uvarov@linaro.org>2015-08-27 16:28:13 +0300
commit5176d3180d01c73092084bdc511a63be959745b2 (patch)
treedefb57fc6316e329dd65d9d181a805f8d90af516 /platform/linux-generic/odp_packet_io.c
parent8b077af2c3338166b24839ff42c47ab72f9fd538 (diff)
linux-generic: add pktio_start and pktio_stop
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org> Reviewed-by: Stuart Haslam <stuart.haslam@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'platform/linux-generic/odp_packet_io.c')
-rw-r--r--platform/linux-generic/odp_packet_io.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/platform/linux-generic/odp_packet_io.c b/platform/linux-generic/odp_packet_io.c
index 135e84f12..532c264c9 100644
--- a/platform/linux-generic/odp_packet_io.c
+++ b/platform/linux-generic/odp_packet_io.c
@@ -289,6 +289,40 @@ int odp_pktio_close(odp_pktio_t id)
return 0;
}
+int odp_pktio_start(odp_pktio_t id)
+{
+ pktio_entry_t *entry;
+ int res = 0;
+
+ entry = get_pktio_entry(id);
+ if (!entry)
+ return -1;
+
+ lock_entry(entry);
+ if (entry->s.ops->start)
+ res = entry->s.ops->start(entry);
+ unlock_entry(entry);
+
+ return res;
+}
+
+int odp_pktio_stop(odp_pktio_t id)
+{
+ pktio_entry_t *entry;
+ int res = 0;
+
+ entry = get_pktio_entry(id);
+ if (!entry)
+ return -1;
+
+ lock_entry(entry);
+ if (entry->s.ops->stop)
+ res = entry->s.ops->stop(entry);
+ unlock_entry(entry);
+
+ return res;
+}
+
odp_pktio_t odp_pktio_lookup(const char *dev)
{
odp_pktio_t id = ODP_PKTIO_INVALID;