DPDK patches and discussions
 help / color / mirror / Atom feed
From: Nipun Gupta <nipun.gupta@nxp.com>
To: dev@dpdk.org
Cc: ferruh.yigit@intel.com, hemant.agrawal@nxp.com, sachin.saxena@nxp.com
Subject: [dpdk-dev] [PATCH 8/9 v2] bus/dpaa: moving qbman global init to bus
Date: Thu, 17 Oct 2019 18:14:02 +0530	[thread overview]
Message-ID: <20191017124403.26734-9-nipun.gupta@nxp.com> (raw)
In-Reply-To: <20191017124403.26734-1-nipun.gupta@nxp.com>

From: Hemant Agrawal <hemant.agrawal@nxp.com>

DPAA SEC shall be able to work independent of DPAA ETH
driver.
This patch moves qbman init to bus, so that any driver
can use them even when no eth resources are present
or none of the eth devices are probed.

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
---
 drivers/bus/dpaa/dpaa_bus.c               | 21 +++++++++++++++++++--
 drivers/bus/dpaa/rte_bus_dpaa_version.map |  2 --
 drivers/crypto/dpaa_sec/dpaa_sec.c        |  8 ++++++++
 drivers/net/dpaa/dpaa_ethdev.c            | 14 --------------
 4 files changed, 27 insertions(+), 18 deletions(-)

diff --git a/drivers/bus/dpaa/dpaa_bus.c b/drivers/bus/dpaa/dpaa_bus.c
index d028ef3be..f27820db3 100644
--- a/drivers/bus/dpaa/dpaa_bus.c
+++ b/drivers/bus/dpaa/dpaa_bus.c
@@ -561,8 +561,24 @@ rte_dpaa_bus_probe(void)
 		return 0;
 
 	/* Device list creation is only done once */
-	if (!process_once)
+	if (!process_once) {
 		rte_dpaa_bus_dev_build();
+		if (rte_eal_process_type() == RTE_PROC_PRIMARY) {
+			/* One time load of Qman/Bman drivers */
+			ret = qman_global_init();
+			if (ret) {
+				DPAA_PMD_ERR("QMAN initialization failed: %d",
+					     ret);
+				return ret;
+			}
+			ret = bman_global_init();
+			if (ret) {
+				DPAA_PMD_ERR("BMAN initialization failed: %d",
+					     ret);
+				return ret;
+			}
+		}
+	}
 	process_once = 1;
 
 	/* If no device present on DPAA bus nothing needs to be done */
@@ -600,7 +616,8 @@ rte_dpaa_bus_probe(void)
 			    RTE_DEV_WHITELISTED)) {
 				ret = drv->probe(drv, dev);
 				if (ret) {
-					DPAA_BUS_ERR("Unable to probe.\n");
+					DPAA_BUS_ERR("unable to probe:%s",
+						     dev->name);
 				} else {
 					dev->driver = drv;
 					dev->device.driver = &drv->driver;
diff --git a/drivers/bus/dpaa/rte_bus_dpaa_version.map b/drivers/bus/dpaa/rte_bus_dpaa_version.map
index 97f4f622d..cf428a54d 100644
--- a/drivers/bus/dpaa/rte_bus_dpaa_version.map
+++ b/drivers/bus/dpaa/rte_bus_dpaa_version.map
@@ -4,7 +4,6 @@ DPDK_17.11 {
 	bman_acquire;
 	bman_free_pool;
 	bman_get_params;
-	bman_global_init;
 	bman_new_pool;
 	bman_query_free_buffers;
 	bman_release;
@@ -48,7 +47,6 @@ DPDK_17.11 {
 	qman_enqueue_multi;
 	qman_fq_fqid;
 	qman_fq_state;
-	qman_global_init;
 	qman_init_fq;
 	qman_poll_dqrr;
 	qman_query_fq_np;
diff --git a/drivers/crypto/dpaa_sec/dpaa_sec.c b/drivers/crypto/dpaa_sec/dpaa_sec.c
index 1e4f55b11..1db9bc381 100644
--- a/drivers/crypto/dpaa_sec/dpaa_sec.c
+++ b/drivers/crypto/dpaa_sec/dpaa_sec.c
@@ -3050,6 +3050,14 @@ cryptodev_dpaa_sec_probe(struct rte_dpaa_driver *dpaa_drv __rte_unused,
 		}
 	}
 
+	if (unlikely(!RTE_PER_LCORE(dpaa_io))) {
+		retval = rte_dpaa_portal_init((void *)1);
+		if (retval) {
+			DPAA_SEC_ERR("Unable to initialize portal");
+			return retval;
+		}
+	}
+
 	/* Invoke PMD device initialization function */
 	retval = dpaa_sec_dev_init(cryptodev);
 	if (retval == 0)
diff --git a/drivers/net/dpaa/dpaa_ethdev.c b/drivers/net/dpaa/dpaa_ethdev.c
index caf255d67..16b52b5e1 100644
--- a/drivers/net/dpaa/dpaa_ethdev.c
+++ b/drivers/net/dpaa/dpaa_ethdev.c
@@ -1576,20 +1576,6 @@ rte_dpaa_probe(struct rte_dpaa_driver *dpaa_drv __rte_unused,
 	}
 
 	if (!is_global_init && (rte_eal_process_type() == RTE_PROC_PRIMARY)) {
-		/* One time load of Qman/Bman drivers */
-		ret = qman_global_init();
-		if (ret) {
-			DPAA_PMD_ERR("QMAN initialization failed: %d",
-				     ret);
-			return ret;
-		}
-		ret = bman_global_init();
-		if (ret) {
-			DPAA_PMD_ERR("BMAN initialization failed: %d",
-				     ret);
-			return ret;
-		}
-
 		if (access("/tmp/fmc.bin", F_OK) == -1) {
 			RTE_LOG(INFO, PMD,
 				"* FMC not configured.Enabling default mode\n");
-- 
2.17.1


  parent reply	other threads:[~2019-10-17 13:00 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-11  5:46 [dpdk-dev] [PATCH 0/9] DPAA and FSLMC driver fixes and cleanup Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 1/9] net/dpaa: fix supported RSS types Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 2/9] net/dpaa: fix LS1043 alignment check Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 3/9] common/dpaax: fallback to check separate memory node for VM Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 4/9] mempool/dpaa2: panic on endless loop in mbuf release Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 5/9] net/dpaa2: add retry and timeout in packet enqueue API Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 6/9] raw/dpaa2_qdma: " Nipun Gupta
2019-10-15  6:55   ` Hemant Agrawal
2019-10-11  5:46 ` [dpdk-dev] [PATCH 7/9] raw/dpaa2_cmdif: " Nipun Gupta
2019-10-15  6:55   ` Hemant Agrawal
2019-10-11  5:46 ` [dpdk-dev] [PATCH 8/9] bus/dpaa: moving qbman global init to bus Nipun Gupta
2019-10-11  5:46 ` [dpdk-dev] [PATCH 9/9] bus/fslmc: sanitize device name parsing for clarity Nipun Gupta
2019-10-15  6:56 ` [dpdk-dev] [PATCH 0/9] DPAA and FSLMC driver fixes and cleanup Hemant Agrawal
2019-10-17 12:43 ` [dpdk-dev] [PATCH 0/9 v2] " Nipun Gupta
2019-10-17 12:43   ` [dpdk-dev] [PATCH 1/9 v2] net/dpaa: fix supported RSS types Nipun Gupta
2019-10-17 12:43   ` [dpdk-dev] [PATCH 2/9 v2] net/dpaa: fix LS1043 alignment check Nipun Gupta
2019-10-17 12:43   ` [dpdk-dev] [PATCH 3/9 v2] common/dpaax: fallback to check separate memory node for VM Nipun Gupta
2019-10-17 12:43   ` [dpdk-dev] [PATCH 4/9 v2] net/dpaa2: add retry and timeout in packet enqueue API Nipun Gupta
2019-10-17 12:43   ` [dpdk-dev] [PATCH 5/9 v2] raw/dpaa2_qdma: " Nipun Gupta
2019-10-17 12:44   ` [dpdk-dev] [PATCH 6/9 v2] raw/dpaa2_cmdif: " Nipun Gupta
2019-10-17 12:44   ` [dpdk-dev] [PATCH 7/9 v2] mempool/dpaa2: panic on endless loop in mbuf release Nipun Gupta
2019-10-23 23:08     ` [dpdk-dev] [dpdk-stable] " Thomas Monjalon
2019-10-30 12:17       ` Nipun Gupta
2019-10-17 12:44   ` Nipun Gupta [this message]
2019-10-18  9:06     ` [dpdk-dev] [PATCH 8/9 v2] bus/dpaa: moving qbman global init to bus Akhil Goyal
2019-10-17 12:44   ` [dpdk-dev] [PATCH 9/9 v2] bus/fslmc: sanitize device name parsing for clarity Nipun Gupta
2019-10-30 12:09 ` [dpdk-dev] [PATCH 0/9 v3] DPAA and FSLMC driver fixes and cleanup Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 1/9 v3] net/dpaa: fix supported RSS types Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 2/9 v3] net/dpaa: fix LS1043 alignment check Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 3/9 v3] common/dpaax: fallback to check separate memory node for VM Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 4/9 v3] net/dpaa2: add retry and timeout in packet enqueue API Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 5/9 v3] raw/dpaa2_qdma: " Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 6/9 v3] raw/dpaa2_cmdif: " Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 7/9 v3] mempool/dpaa2: report error on endless loop in mbuf release Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 8/9 v3] bus/dpaa: moving qbman global init to bus Nipun Gupta
2019-10-30 12:09   ` [dpdk-dev] [PATCH 9/9 v3] bus/fslmc: sanitize device name parsing for clarity Nipun Gupta
2019-11-05 14:23 ` [dpdk-dev] [PATCH 0/9 v4] DPAA and FSLMC driver fixes and cleanup Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 1/9 v4] net/dpaa: fix supported RSS types Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 2/9 v4] net/dpaa: fix LS1043 alignment check Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 3/9 v4] common/dpaax: fallback to check separate memory node for VM Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 4/9 v4] net/dpaa2: add retry and timeout in packet enqueue API Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 5/9 v4] raw/dpaa2_qdma: " Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 6/9 v4] raw/dpaa2_cmdif: " Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 7/9 v4] mempool/dpaa2: report error on endless loop in mbuf release Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 8/9 v4] bus/dpaa: moving qbman global init to bus Nipun Gupta
2019-11-05 14:23   ` [dpdk-dev] [PATCH 9/9 v4] bus/fslmc: sanitize device name parsing for clarity Nipun Gupta
2019-11-06  0:19   ` [dpdk-dev] [PATCH 0/9 v4] DPAA and FSLMC driver fixes and cleanup Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20191017124403.26734-9-nipun.gupta@nxp.com \
    --to=nipun.gupta@nxp.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=sachin.saxena@nxp.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).