[v2,19/30] net/dpaa2: use LFQIDs in Tx instead of qdid

Message ID 20190829102737.13267-20-sachin.saxena@nxp.com (mailing list archive)
State Accepted, archived
Delegated to: Ferruh Yigit
Headers
Series Enhancements and fixes in NXP dpaax drivers and fsl-mc bus |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK

Commit Message

Sachin Saxena Aug. 29, 2019, 10:27 a.m. UTC
  Signed-off-by: Sachin Saxena <sachin.saxena@nxp.com>
---
 drivers/net/dpaa2/dpaa2_ethdev.c | 10 ++++++++++
 drivers/net/dpaa2/dpaa2_rxtx.c   | 12 +++++-------
 2 files changed, 15 insertions(+), 7 deletions(-)
  

Patch

diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c
index a1ef5be6a..29f0bfdf2 100644
--- a/drivers/net/dpaa2/dpaa2_ethdev.c
+++ b/drivers/net/dpaa2/dpaa2_ethdev.c
@@ -677,6 +677,7 @@  dpaa2_dev_tx_queue_setup(struct rte_eth_dev *dev,
 	struct dpni_queue tx_conf_cfg;
 	struct dpni_queue tx_flow_cfg;
 	uint8_t options = 0, flow_id;
+	struct dpni_queue_id qid;
 	uint32_t tc_id;
 	int ret;
 
@@ -718,6 +719,15 @@  dpaa2_dev_tx_queue_setup(struct rte_eth_dev *dev,
 	}
 	dpaa2_q->tc_index = tc_id;
 
+	ret = dpni_get_queue(dpni, CMD_PRI_LOW, priv->token,
+			     DPNI_QUEUE_TX, dpaa2_q->tc_index,
+			     dpaa2_q->flow_id, &tx_flow_cfg, &qid);
+	if (ret) {
+		DPAA2_PMD_ERR("Error in getting LFQID err=%d", ret);
+		return -1;
+	}
+	dpaa2_q->fqid = qid.fqid;
+
 	if (!(priv->flags & DPAA2_TX_CGR_OFF)) {
 		struct dpni_congestion_notification_cfg cong_notif_cfg = {0};
 
diff --git a/drivers/net/dpaa2/dpaa2_rxtx.c b/drivers/net/dpaa2/dpaa2_rxtx.c
index 19838180f..2209b78a4 100644
--- a/drivers/net/dpaa2/dpaa2_rxtx.c
+++ b/drivers/net/dpaa2/dpaa2_rxtx.c
@@ -869,8 +869,8 @@  dpaa2_dev_tx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 	/*Prepare enqueue descriptor*/
 	qbman_eq_desc_clear(&eqdesc);
 	qbman_eq_desc_set_no_orp(&eqdesc, DPAA2_EQ_RESP_ERR_FQ);
-	qbman_eq_desc_set_qd(&eqdesc, priv->qdid,
-			     dpaa2_q->flow_id, dpaa2_q->tc_index);
+	qbman_eq_desc_set_fq(&eqdesc, dpaa2_q->fqid);
+
 	/*Clear the unused FD fields before sending*/
 	while (nb_pkts) {
 		/*Check if the queue is congested*/
@@ -1021,8 +1021,7 @@  dpaa2_set_enqueue_descriptor(struct dpaa2_queue *dpaa2_q,
 	uint16_t orpid, seqnum;
 	uint8_t dq_idx;
 
-	qbman_eq_desc_set_qd(eqdesc, priv->qdid, dpaa2_q->flow_id,
-			     dpaa2_q->tc_index);
+	qbman_eq_desc_set_fq(eqdesc, dpaa2_q->fqid);
 
 	if (m->seqn & DPAA2_ENQUEUE_FLAG_ORP) {
 		orpid = (m->seqn & DPAA2_EQCR_OPRID_MASK) >>
@@ -1128,9 +1127,8 @@  dpaa2_dev_tx_ordered(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 			} else {
 				qbman_eq_desc_set_no_orp(&eqdesc[loop],
 							 DPAA2_EQ_RESP_ERR_FQ);
-				qbman_eq_desc_set_qd(&eqdesc[loop], priv->qdid,
-						     dpaa2_q->flow_id,
-						     dpaa2_q->tc_index);
+				qbman_eq_desc_set_fq(&eqdesc[loop],
+						     dpaa2_q->fqid);
 			}
 
 			if (likely(RTE_MBUF_DIRECT(*bufs))) {