fix the soc id path and missing fclose

Fixes: cf0fab1d2ca5 ("net/dpaa: support firmware version get API")
Cc: sta...@dpdk.org

Signed-off-by: Hemant Agrawal <hemant.agra...@nxp.com>
---
 drivers/net/dpaa/dpaa_ethdev.c | 14 +++++---------
 drivers/net/dpaa/dpaa_ethdev.h |  2 +-
 2 files changed, 6 insertions(+), 10 deletions(-)

diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c
index 3023302..29678c5 100644
--- a/drivers/net/dpaa/dpaa_ethdev.c
+++ b/drivers/net/dpaa/dpaa_ethdev.c
@@ -212,19 +212,15 @@ dpaa_fw_version_get(struct rte_eth_dev *dev __rte_unused,
                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) {
+       if (fscanf(svr_file, "svr:%x", &svr_ver) <= 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);
+       fclose(svr_file);
 
+       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
diff --git a/drivers/net/dpaa/dpaa_ethdev.h b/drivers/net/dpaa/dpaa_ethdev.h
index 5457d61..ec5ae13 100644
--- a/drivers/net/dpaa/dpaa_ethdev.h
+++ b/drivers/net/dpaa/dpaa_ethdev.h
@@ -46,7 +46,7 @@
 /* DPAA SoC identifier; If this is not available, it can be concluded
  * that board is non-DPAA. Single slot is currently supported.
  */
-#define DPAA_SOC_ID_FILE               "sys/devices/soc0/soc_id"
+#define DPAA_SOC_ID_FILE               "/sys/devices/soc0/soc_id"
 
 #define DPAA_MBUF_HW_ANNOTATION                64
 #define DPAA_FD_PTA_SIZE               64
-- 
2.7.4

Reply via email to