On 9/9/2017 12:21 PM, Shreyansh Jain wrote: > From: Hemant Agrawal <hemant.agra...@nxp.com> > > Signed-off-by: Hemant Agrawal <hemant.agra...@nxp.com>
<...> > +static int > +dpaa_fw_version_get(struct rte_eth_dev *dev __rte_unused, > + char *fw_version, > + size_t fw_size) > +{ > + int ret; > + FILE *svr_file = NULL; > + unsigned int svr_ver = 0; > + > + PMD_INIT_FUNC_TRACE(); > + > + svr_file = fopen("/sys/devices/soc0/soc_id", "r"); Is this sysfs file fixed, can it be enumerated as soc1 etc.. in some systems? > + if (!svr_file) { > + DPAA_PMD_ERR("Unable to open SoC device"); > + return -ENOTSUP; /* Not supported on this infra */ > + } > + > + ret = fscanf(svr_file, "svr:%x", &svr_ver); > + if (ret <= 0) { > + DPAA_PMD_ERR("Unable to read SoC device"); > + return -ENOTSUP; /* Not supported on this infra */ > + } > + > + ret = snprintf(fw_version, fw_size, > + "svr:%x-fman-v%x", > + svr_ver, > + fman_ip_rev); > + > + ret += 1; /* add the size of '\0' */ > + if (fw_size < (uint32_t)ret) > + return ret; > + else > + return 0; > +} <...>