aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-keystone2
diff options
context:
space:
mode:
authorIvan Khoronzhuk <ivan.khoronzhuk@linaro.org>2016-01-04 23:09:12 +0200
committerIvan Khoronzhuk <ivan.khoronzhuk@linaro.org>2016-01-04 23:10:53 +0200
commite7afac2e15922daa94c9b0af168158794bc217f3 (patch)
tree3930134d477085fa20006823a921591c181e9aaf /platform/linux-keystone2
parent519fdc46346c1c45f618eeb2f5ea31ff045ff3d1 (diff)
linux-ks2: pktio: add print function API
Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
Diffstat (limited to 'platform/linux-keystone2')
-rw-r--r--platform/linux-keystone2/odp_packet_io.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/platform/linux-keystone2/odp_packet_io.c b/platform/linux-keystone2/odp_packet_io.c
index deb77117..da708a0f 100644
--- a/platform/linux-keystone2/odp_packet_io.c
+++ b/platform/linux-keystone2/odp_packet_io.c
@@ -962,3 +962,40 @@ char *_pktio_name(odp_pktio_t pktio)
pktio_entry_t *entry = _odp_pktio_entry(pktio);
return entry->name;
}
+
+void odp_pktio_print(odp_pktio_t pktio)
+{
+ pktio_entry_t *entry;
+ uint8_t addr[ETH_ALEN];
+ int max_len = 512;
+ char str[max_len];
+ int len = 0;
+ int n = max_len - 1;
+
+ entry = _odp_pktio_entry(pktio);
+ if (entry == NULL) {
+ ODP_DBG("pktio entry %d does not exist\n", pktio);
+ return;
+ }
+
+ len += snprintf(&str[len], n - len, "pktio\n");
+ len += snprintf(&str[len], n - len, " handle %" PRIu64 "\n",
+ odp_pktio_to_u64(pktio));
+ len += snprintf(&str[len], n - len,
+ " name %s\n", entry->name);
+ len += snprintf(&str[len], n - len, " state %s\n",
+ entry->flags.start == 1 ? "start" : "stop");
+ memset(addr, 0, sizeof(addr));
+ odp_pktio_mac_addr(pktio, addr, ETH_ALEN);
+ len += snprintf(&str[len], n - len,
+ " mac %02x:%02x:%02x:%02x:%02x:%02x\n",
+ addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]);
+ len += snprintf(&str[len], n - len,
+ " mtu %d\n", odp_pktio_mtu(pktio));
+ len += snprintf(&str[len], n - len,
+ " promisc %s\n",
+ odp_pktio_promisc_mode(pktio) ? "yes" : "no");
+ str[len] = '\0';
+
+ ODP_PRINT("\n%s\n", str);
+}