bus/dpaa: fix SVR id fetch location
authorHemant Agrawal <hemant.agrawal@nxp.com>
Fri, 6 Jul 2018 08:09:59 +0000 (13:39 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 12 Jul 2018 12:32:13 +0000 (14:32 +0200)
Otherwise the SVR may not be available for dpaa init.

Fixes: 3b59b73dea08 ("bus/dpaa: update platform SoC value register routines")
Cc: stable@dpdk.org
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com>
drivers/bus/dpaa/dpaa_bus.c

index af9e91e..4e0fca3 100644 (file)
@@ -539,6 +539,13 @@ rte_dpaa_bus_probe(void)
        unsigned int svr_ver;
        int probe_all = rte_dpaa_bus.bus.conf.scan_mode != RTE_BUS_SCAN_WHITELIST;
 
+       svr_file = fopen(DPAA_SOC_ID_FILE, "r");
+       if (svr_file) {
+               if (fscanf(svr_file, "svr:%x", &svr_ver) > 0)
+                       dpaa_svr_family = svr_ver & SVR_MASK;
+               fclose(svr_file);
+       }
+
        /* For each registered driver, and device, call the driver->probe */
        TAILQ_FOREACH(dev, &rte_dpaa_bus.device_list, next) {
                TAILQ_FOREACH(drv, &rte_dpaa_bus.driver_list, next) {
@@ -569,13 +576,6 @@ rte_dpaa_bus_probe(void)
        if (!TAILQ_EMPTY(&rte_dpaa_bus.device_list))
                rte_mbuf_set_platform_mempool_ops(DPAA_MEMPOOL_OPS_NAME);
 
-       svr_file = fopen(DPAA_SOC_ID_FILE, "r");
-       if (svr_file) {
-               if (fscanf(svr_file, "svr:%x", &svr_ver) > 0)
-                       dpaa_svr_family = svr_ver & SVR_MASK;
-               fclose(svr_file);
-       }
-
        return 0;
 }