summaryrefslogtreecommitdiffstats
path: root/src/dpdk
diff options
context:
space:
mode:
authorIdo Barnea <ibarnea@cisco.com>2016-08-14 14:28:46 +0300
committerIdo Barnea <ibarnea@cisco.com>2016-08-14 14:28:46 +0300
commitce1de344579505665b88c2d548ca8d2acc135988 (patch)
tree03c325167ca3b741a63343688cbf08efe52546fe /src/dpdk
parentb5c09779a55f6e0cdd08230109319e086491acdf (diff)
Exit if x710 firmware version is too old
Diffstat (limited to 'src/dpdk')
-rw-r--r--src/dpdk/drivers/net/i40e/i40e_ethdev.c10
-rw-r--r--src/dpdk/lib/librte_ether/rte_ethdev.c14
2 files changed, 24 insertions, 0 deletions
diff --git a/src/dpdk/drivers/net/i40e/i40e_ethdev.c b/src/dpdk/drivers/net/i40e/i40e_ethdev.c
index 12402ae2..778c1eca 100644
--- a/src/dpdk/drivers/net/i40e/i40e_ethdev.c
+++ b/src/dpdk/drivers/net/i40e/i40e_ethdev.c
@@ -2404,6 +2404,16 @@ i40e_trex_fdir_stats_reset(struct rte_eth_dev *dev, uint32_t *stats, uint32_t st
}
}
+// TREX_PATCH
+int
+i40e_trex_get_fw_ver(struct rte_eth_dev *dev, uint32_t *nvm_ver)
+{
+ struct i40e_hw *hw = I40E_DEV_PRIVATE_TO_HW(dev->data->dev_private);
+
+ *nvm_ver = hw->nvm.version;
+ return 0;
+}
+
/* Get all statistics of a port */
static void
i40e_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
diff --git a/src/dpdk/lib/librte_ether/rte_ethdev.c b/src/dpdk/lib/librte_ether/rte_ethdev.c
index a12ce3d3..e7bc9d6d 100644
--- a/src/dpdk/lib/librte_ether/rte_ethdev.c
+++ b/src/dpdk/lib/librte_ether/rte_ethdev.c
@@ -1514,6 +1514,20 @@ rte_eth_fdir_stats_reset(uint8_t port_id, uint32_t *stats, uint32_t start, uint3
return 0;
}
+// TREX_PATCH
+int
+rte_eth_get_fw_ver(int port_id, uint32_t *version)
+{
+ struct rte_eth_dev *dev;
+
+ RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, -EINVAL);
+
+ dev = &rte_eth_devices[port_id];
+
+ // Only xl710 support this
+ return i40e_trex_get_fw_ver(dev, version);
+}
+
int
rte_eth_stats_get(uint8_t port_id, struct rte_eth_stats *stats)
{