net/dpaa2: add support for firmware version get
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
This commit is contained in:
parent
e24b05bfd2
commit
748eccb97c
@ -19,6 +19,7 @@ L3 checksum offload = Y
|
|||||||
L4 checksum offload = Y
|
L4 checksum offload = Y
|
||||||
Packet type parsing = Y
|
Packet type parsing = Y
|
||||||
Basic stats = Y
|
Basic stats = Y
|
||||||
|
FW version = Y
|
||||||
Linux VFIO = Y
|
Linux VFIO = Y
|
||||||
ARMv8 = Y
|
ARMv8 = Y
|
||||||
Usage doc = Y
|
Usage doc = Y
|
||||||
|
@ -50,7 +50,7 @@
|
|||||||
#include <dpaa2_hw_pvt.h>
|
#include <dpaa2_hw_pvt.h>
|
||||||
#include <dpaa2_hw_mempool.h>
|
#include <dpaa2_hw_mempool.h>
|
||||||
#include <dpaa2_hw_dpio.h>
|
#include <dpaa2_hw_dpio.h>
|
||||||
|
#include <mc/fsl_dpmng.h>
|
||||||
#include "dpaa2_ethdev.h"
|
#include "dpaa2_ethdev.h"
|
||||||
|
|
||||||
static struct rte_dpaa2_driver rte_dpaa2_pmd;
|
static struct rte_dpaa2_driver rte_dpaa2_pmd;
|
||||||
@ -161,6 +161,39 @@ dpaa2_vlan_offload_set(struct rte_eth_dev *dev, int mask)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
dpaa2_fw_version_get(struct rte_eth_dev *dev,
|
||||||
|
char *fw_version,
|
||||||
|
size_t fw_size)
|
||||||
|
{
|
||||||
|
int ret;
|
||||||
|
struct dpaa2_dev_priv *priv = dev->data->dev_private;
|
||||||
|
struct fsl_mc_io *dpni = priv->hw;
|
||||||
|
struct mc_soc_version mc_plat_info = {0};
|
||||||
|
struct mc_version mc_ver_info = {0};
|
||||||
|
|
||||||
|
PMD_INIT_FUNC_TRACE();
|
||||||
|
|
||||||
|
if (mc_get_soc_version(dpni, CMD_PRI_LOW, &mc_plat_info))
|
||||||
|
RTE_LOG(WARNING, PMD, "\tmc_get_soc_version failed\n");
|
||||||
|
|
||||||
|
if (mc_get_version(dpni, CMD_PRI_LOW, &mc_ver_info))
|
||||||
|
RTE_LOG(WARNING, PMD, "\tmc_get_version failed\n");
|
||||||
|
|
||||||
|
ret = snprintf(fw_version, fw_size,
|
||||||
|
"%x-%d.%d.%d",
|
||||||
|
mc_plat_info.svr,
|
||||||
|
mc_ver_info.major,
|
||||||
|
mc_ver_info.minor,
|
||||||
|
mc_ver_info.revision);
|
||||||
|
|
||||||
|
ret += 1; /* add the size of '\0' */
|
||||||
|
if (fw_size < (uint32_t)ret)
|
||||||
|
return ret;
|
||||||
|
else
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
dpaa2_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
|
dpaa2_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
|
||||||
{
|
{
|
||||||
@ -1279,6 +1312,7 @@ static struct eth_dev_ops dpaa2_ethdev_ops = {
|
|||||||
.link_update = dpaa2_dev_link_update,
|
.link_update = dpaa2_dev_link_update,
|
||||||
.stats_get = dpaa2_dev_stats_get,
|
.stats_get = dpaa2_dev_stats_get,
|
||||||
.stats_reset = dpaa2_dev_stats_reset,
|
.stats_reset = dpaa2_dev_stats_reset,
|
||||||
|
.fw_version_get = dpaa2_fw_version_get,
|
||||||
.dev_infos_get = dpaa2_dev_info_get,
|
.dev_infos_get = dpaa2_dev_info_get,
|
||||||
.dev_supported_ptypes_get = dpaa2_supported_ptypes_get,
|
.dev_supported_ptypes_get = dpaa2_supported_ptypes_get,
|
||||||
.mtu_set = dpaa2_dev_mtu_set,
|
.mtu_set = dpaa2_dev_mtu_set,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user