From: Gagandeep Singh <g.si...@nxp.com>

The slow poll code is not being used in DPDK DPAA driver sub-system.

Signed-off-by: Gagandeep Singh <g.si...@nxp.com>
Signed-off-by: Vanshika Shukla <vanshika.shu...@nxp.com>
---
 drivers/bus/dpaa/base/qbman/qman.c  | 31 -----------------------------
 drivers/bus/dpaa/include/fsl_qman.h | 31 -----------------------------
 drivers/bus/dpaa/version.map        |  1 -
 3 files changed, 63 deletions(-)

diff --git a/drivers/bus/dpaa/base/qbman/qman.c 
b/drivers/bus/dpaa/base/qbman/qman.c
index b1166fcb1f..cc10def861 100644
--- a/drivers/bus/dpaa/base/qbman/qman.c
+++ b/drivers/bus/dpaa/base/qbman/qman.c
@@ -69,7 +69,6 @@ struct qman_portal {
        /* interrupt sources processed by portal_isr(), configurable */
        unsigned long irq_sources;
        u32 use_eqcr_ci_stashing;
-       u32 slowpoll;   /* only used when interrupts are off */
        /* only 1 volatile dequeue at a time */
        struct qman_fq *vdqcr_owned;
        u32 sdqcr;
@@ -569,7 +568,6 @@ qman_init_portal(struct qman_portal *portal,
        INIT_LIST_HEAD(&portal->cgr_cbs);
        spin_lock_init(&portal->cgr_lock);
        portal->bits = 0;
-       portal->slowpoll = 0;
        portal->sdqcr = QM_SDQCR_SOURCE_CHANNELS | QM_SDQCR_COUNT_UPTO3 |
                        QM_SDQCR_DEDICATED_PRECEDENCE | QM_SDQCR_TYPE_PRIO_QOS |
                        QM_SDQCR_TOKEN_SET(0xab) | QM_SDQCR_CHANNELS_DEDICATED;
@@ -1370,35 +1368,6 @@ void qman_dqrr_consume(struct qman_fq *fq,
        qm_dqrr_next(&p->p);
 }
 
-int qman_poll_dqrr(unsigned int limit)
-{
-       struct qman_portal *p = get_affine_portal();
-       int ret;
-
-       ret = __poll_portal_fast(p, limit);
-       return ret;
-}
-
-void qman_poll(void)
-{
-       struct qman_portal *p = get_affine_portal();
-
-       if ((~p->irq_sources) & QM_PIRQ_SLOW) {
-               if (!(p->slowpoll--)) {
-                       u32 is = qm_isr_status_read(&p->p) & ~p->irq_sources;
-                       u32 active = __poll_portal_slow(p, is);
-
-                       if (active) {
-                               qm_isr_status_clear(&p->p, active);
-                               p->slowpoll = SLOW_POLL_BUSY;
-                       } else
-                               p->slowpoll = SLOW_POLL_IDLE;
-               }
-       }
-       if ((~p->irq_sources) & QM_PIRQ_DQRI)
-               __poll_portal_fast(p, FSL_QMAN_POLL_LIMIT);
-}
-
 void qman_stop_dequeues(void)
 {
        struct qman_portal *p = get_affine_portal();
diff --git a/drivers/bus/dpaa/include/fsl_qman.h 
b/drivers/bus/dpaa/include/fsl_qman.h
index acdfb45ad6..c0677976e8 100644
--- a/drivers/bus/dpaa/include/fsl_qman.h
+++ b/drivers/bus/dpaa/include/fsl_qman.h
@@ -1429,37 +1429,6 @@ __rte_internal
 void qman_dqrr_consume(struct qman_fq *fq,
                       struct qm_dqrr_entry *dq);
 
-/**
- * qman_poll_dqrr - process DQRR (fast-path) entries
- * @limit: the maximum number of DQRR entries to process
- *
- * Use of this function requires that DQRR processing not be interrupt-driven.
- * Ie. the value returned by qman_irqsource_get() should not include
- * QM_PIRQ_DQRI. If the current CPU is sharing a portal hosted on another CPU,
- * this function will return -EINVAL, otherwise the return value is >=0 and
- * represents the number of DQRR entries processed.
- */
-__rte_internal
-int qman_poll_dqrr(unsigned int limit);
-
-/**
- * qman_poll
- *
- * Dispatcher logic on a cpu can use this to trigger any maintenance of the
- * affine portal. There are two classes of portal processing in question;
- * fast-path (which involves demuxing dequeue ring (DQRR) entries and tracking
- * enqueue ring (EQCR) consumption), and slow-path (which involves EQCR
- * thresholds, congestion state changes, etc). This function does whatever
- * processing is not triggered by interrupts.
- *
- * Note, if DQRR and some slow-path processing are poll-driven (rather than
- * interrupt-driven) then this function uses a heuristic to determine how often
- * to run slow-path processing - as slow-path processing introduces at least a
- * minimum latency each time it is run, whereas fast-path (DQRR) processing is
- * close to zero-cost if there is no work to be done.
- */
-void qman_poll(void);
-
 /**
  * qman_stop_dequeues - Stop h/w dequeuing to the s/w portal
  *
diff --git a/drivers/bus/dpaa/version.map b/drivers/bus/dpaa/version.map
index 1a840fd1a5..3f547f75cf 100644
--- a/drivers/bus/dpaa/version.map
+++ b/drivers/bus/dpaa/version.map
@@ -82,7 +82,6 @@ INTERNAL {
        qman_irqsource_remove;
        qman_modify_cgr;
        qman_oos_fq;
-       qman_poll_dqrr;
        qman_portal_dequeue;
        qman_portal_poll_rx;
        qman_query_fq_frm_cnt;
-- 
2.25.1

Reply via email to