Expose additional fpga status registers and report
conditions during PMD init

Signed-off-by: Ed Czeck <ed.cz...@atomicrules.com>
---
 drivers/net/ark/ark_ethdev.c | 9 +++++++++
 drivers/net/ark/ark_rqp.c    | 6 ++++++
 drivers/net/ark/ark_rqp.h    | 4 +++-
 3 files changed, 18 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ark/ark_ethdev.c b/drivers/net/ark/ark_ethdev.c
index 93721a0..1a6c71c 100644
--- a/drivers/net/ark/ark_ethdev.c
+++ b/drivers/net/ark/ark_ethdev.c
@@ -297,6 +297,15 @@ eth_ark_dev_init(struct rte_eth_dev *dev)
                            ark->sysctrl.t32[4], __func__);
                return -1;
        }
+       if (ark->sysctrl.t32[3] != 0) {
+               if (ark_rqp_lasped(ark->rqpacing))
+                       PMD_DRV_LOG(INFO, "Arkville Evaluation System - "
+                                   "Timer has Expired\n");
+               else
+                       PMD_DRV_LOG(INFO, "Arkville Evaluation System - "
+                                   "Timer is Running\n");
+       }
+
 
        PMD_DRV_LOG(INFO,
                    "HW Sanity test has PASSED, expected constant"
diff --git a/drivers/net/ark/ark_rqp.c b/drivers/net/ark/ark_rqp.c
index 59d9b8a..41c497b 100644
--- a/drivers/net/ark/ark_rqp.c
+++ b/drivers/net/ark/ark_rqp.c
@@ -89,3 +89,9 @@ ark_rqp_dump(struct ark_rqpace_t *rqp)
                      "cplh pending max", rqp->cplh_pending_max,
                      "cpld pending max", rqp->cpld_pending_max);
 }
+
+int
+ark_rqp_lasped(struct ark_rqpace_t *rqp)
+{
+       return rqp->lasped;
+}
diff --git a/drivers/net/ark/ark_rqp.h b/drivers/net/ark/ark_rqp.h
index 995fc20..0c38007 100644
--- a/drivers/net/ark/ark_rqp.h
+++ b/drivers/net/ark/ark_rqp.h
@@ -76,9 +76,11 @@ struct ark_rqpace_t {
        volatile uint32_t cplh_pending_max;
        volatile uint32_t cpld_pending_max;
        volatile uint32_t err_count_other;
+       char eval[4];
+       volatile int lasped;
 };
 
 void ark_rqp_dump(struct ark_rqpace_t *rqp);
 void ark_rqp_stats_reset(struct ark_rqpace_t *rqp);
-
+int ark_rqp_lasped(struct ark_rqpace_t *rqp);
 #endif
-- 
2.7.4

Reply via email to