new version code
remove device-level global operations
remove ark_mpu_reset_stats function

Signed-off-by: Ed Czeck <ed.cz...@atomicrules.com>
---
 drivers/net/ark/ark_ethdev.c    |  2 --
 drivers/net/ark/ark_ethdev_rx.c |  4 ----
 drivers/net/ark/ark_mpu.c       | 21 ++++-----------------
 drivers/net/ark/ark_mpu.h       | 29 ++---------------------------
 4 files changed, 6 insertions(+), 50 deletions(-)

diff --git a/drivers/net/ark/ark_ethdev.c b/drivers/net/ark/ark_ethdev.c
index 76b88c62d0..c0578b85ce 100644
--- a/drivers/net/ark/ark_ethdev.c
+++ b/drivers/net/ark/ark_ethdev.c
@@ -524,7 +524,6 @@ ark_config_device(struct rte_eth_dev *dev)
        num_q = ark_api_num_queues(mpu);
        ark->rx_queues = num_q;
        for (i = 0; i < num_q; i++) {
-               ark_mpu_reset(mpu);
                mpu = RTE_PTR_ADD(mpu, ARK_MPU_QOFFSET);
        }
 
@@ -536,7 +535,6 @@ ark_config_device(struct rte_eth_dev *dev)
        num_q = ark_api_num_queues(mpu);
        ark->tx_queues = num_q;
        for (i = 0; i < num_q; i++) {
-               ark_mpu_reset(mpu);
                mpu = RTE_PTR_ADD(mpu, ARK_MPU_QOFFSET);
        }
 
diff --git a/drivers/net/ark/ark_ethdev_rx.c b/drivers/net/ark/ark_ethdev_rx.c
index 0fbb2603db..85e34d0bb8 100644
--- a/drivers/net/ark/ark_ethdev_rx.c
+++ b/drivers/net/ark/ark_ethdev_rx.c
@@ -91,9 +91,6 @@ eth_ark_rx_hw_setup(struct rte_eth_dev *dev,
 
        ark_udm_write_addr(queue->udm, phys_addr_prod_index);
 
-       /* advance the valid pointer, but don't start until the queue starts */
-       ark_mpu_reset_stats(queue->mpu);
-
        /* The seed is the producer index for the HW */
        ark_mpu_set_producer(queue->mpu, queue->seed_index);
        dev->data->rx_queue_state[rx_queue_idx] = RTE_ETH_QUEUE_STATE_STOPPED;
@@ -589,7 +586,6 @@ eth_rx_queue_stats_reset(void *vqueue)
        if (queue == 0)
                return;
 
-       ark_mpu_reset_stats(queue->mpu);
        ark_udm_queue_stats_reset(queue->udm);
 }
 
diff --git a/drivers/net/ark/ark_mpu.c b/drivers/net/ark/ark_mpu.c
index b8e94b6ed3..9d5ee7841b 100644
--- a/drivers/net/ark/ark_mpu.c
+++ b/drivers/net/ark/ark_mpu.c
@@ -24,10 +24,10 @@ ark_mpu_verify(struct ark_mpu_t *mpu, uint32_t obj_size)
 {
        uint32_t version;
 
-       version = mpu->id.vernum & 0x0000fF00;
-       if ((mpu->id.idnum != 0x2055504d) ||
-           (mpu->hw.obj_size != obj_size) ||
-           (version != 0x00003100)) {
+       version = mpu->id.vernum;
+       if (mpu->id.idnum != ARK_MPU_MODID ||
+           version != ARK_MPU_MODVER ||
+           mpu->hw.obj_size != obj_size) {
                ARK_PMD_LOG(ERR,
                            "   MPU module not found as expected %08x"
                            " \"%c%c%c%c %c%c%c%c\"\n",
@@ -79,16 +79,9 @@ ark_mpu_reset(struct ark_mpu_t *mpu)
                mpu->cfg.command = MPU_CMD_FORCE_RESET;
                usleep(10);
        }
-       ark_mpu_reset_stats(mpu);
        return mpu->cfg.command != MPU_CMD_IDLE;
 }
 
-void
-ark_mpu_reset_stats(struct ark_mpu_t *mpu)
-{
-       mpu->stats.pci_request = 1;     /* reset stats */
-}
-
 int
 ark_mpu_configure(struct ark_mpu_t *mpu, rte_iova_t ring, uint32_t ring_size,
                  int is_tx)
@@ -118,12 +111,6 @@ ark_mpu_dump(struct ark_mpu_t *mpu, const char *code, 
uint16_t qid)
        ARK_PMD_LOG(DEBUG, "MPU: %s Q: %3u sw_prod %u, hw_cons: %u\n",
                      code, qid,
                      mpu->cfg.sw_prod_index, mpu->cfg.hw_cons_index);
-       ARK_PMD_LOG(DEBUG, "MPU: %s state: %d count %d, reserved %d"
-                     "\n",
-                     code,
-                     mpu->debug.state, mpu->debug.count,
-                     mpu->debug.reserved
-                     );
 }
 
 void
diff --git a/drivers/net/ark/ark_mpu.h b/drivers/net/ark/ark_mpu.h
index 92c3e67c86..9d2b70d35f 100644
--- a/drivers/net/ark/ark_mpu.h
+++ b/drivers/net/ark/ark_mpu.h
@@ -15,6 +15,8 @@
  * there is minimal documentation.
  */
 
+#define ARK_MPU_MODID 0x2055504d
+#define ARK_MPU_MODVER 0x37313232
 /*
  * MPU hardware structures
  * These are overlay structures to a memory mapped FPGA device.  These
@@ -64,26 +66,6 @@ enum ARK_MPU_COMMAND {
        MPU_COMMAND_LIMIT = 0xfFFFFFFF
 };
 
-#define ARK_MPU_STATS 0x080
-struct ark_mpu_stats_t {
-       volatile uint64_t pci_request;
-       volatile uint64_t q_empty;
-       volatile uint64_t q_q1;
-       volatile uint64_t q_q2;
-       volatile uint64_t q_q3;
-       volatile uint64_t q_q4;
-       volatile uint64_t q_full;
-};
-
-#define ARK_MPU_DEBUG 0x0C0
-struct ark_mpu_debug_t {
-       volatile uint32_t state;
-       uint32_t reserved;
-       volatile uint32_t count;
-       volatile uint32_t take;
-       volatile uint32_t peek[4];
-};
-
 /*  Consolidated structure */
 struct ark_mpu_t {
        struct ark_mpu_id_t id;
@@ -93,12 +75,6 @@ struct ark_mpu_t {
        uint8_t reserved1[(ARK_MPU_CFG - ARK_MPU_HW) -
                          sizeof(struct ark_mpu_hw_t)];
        struct ark_mpu_cfg_t cfg;
-       uint8_t reserved2[(ARK_MPU_STATS - ARK_MPU_CFG) -
-                         sizeof(struct ark_mpu_cfg_t)];
-       struct ark_mpu_stats_t stats;
-       uint8_t reserved3[(ARK_MPU_DEBUG - ARK_MPU_STATS) -
-                         sizeof(struct ark_mpu_stats_t)];
-       struct ark_mpu_debug_t debug;
 };
 
 uint16_t ark_api_num_queues(struct ark_mpu_t *mpu);
@@ -113,7 +89,6 @@ int ark_mpu_configure(struct ark_mpu_t *mpu, rte_iova_t ring,
 
 void ark_mpu_dump(struct ark_mpu_t *mpu, const char *msg, uint16_t idx);
 void ark_mpu_dump_setup(struct ark_mpu_t *mpu, uint16_t qid);
-void ark_mpu_reset_stats(struct ark_mpu_t *mpu);
 
 /*  this action is in a performance critical path */
 static inline void
-- 
2.17.1

Reply via email to