bus/dpaa: optimize the qman HW stashing settings
authorNipun Gupta <nipun.gupta@nxp.com>
Wed, 10 Jan 2018 10:46:29 +0000 (16:16 +0530)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 16 Jan 2018 17:47:49 +0000 (18:47 +0100)
The settings are tuned for performance.

Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
drivers/bus/dpaa/base/qbman/qman.c

index a53459f..49bc317 100644 (file)
@@ -7,6 +7,7 @@
 
 #include "qman.h"
 #include <rte_branch_prediction.h>
+#include <rte_dpaa_bus.h>
 
 /* Compilation constants */
 #define DQRR_MAXFILL   15
@@ -503,7 +504,12 @@ struct qman_portal *qman_create_portal(
 
        p = &portal->p;
 
-       portal->use_eqcr_ci_stashing = ((qman_ip_rev >= QMAN_REV30) ? 1 : 0);
+       if (dpaa_svr_family == SVR_LS1043A_FAMILY)
+               portal->use_eqcr_ci_stashing = 3;
+       else
+               portal->use_eqcr_ci_stashing =
+                                       ((qman_ip_rev >= QMAN_REV30) ? 1 : 0);
+
        /*
         * prep the low-level portal struct with the mapped addresses from the
         * config, everything that follows depends on it and "config" is more
@@ -516,7 +522,7 @@ struct qman_portal *qman_create_portal(
         * and stash with high-than-DQRR priority.
         */
        if (qm_eqcr_init(p, qm_eqcr_pvb,
-                        portal->use_eqcr_ci_stashing ? 3 : 0, 1)) {
+                        portal->use_eqcr_ci_stashing, 1)) {
                pr_err("Qman EQCR initialisation failed\n");
                goto fail_eqcr;
        }