From 9ff8fe95dc53c2af878270288b0f28eb9d3c278f Mon Sep 17 00:00:00 2001 From: Ed Czeck Date: Tue, 11 Apr 2017 11:41:50 -0400 Subject: [PATCH] net/ark: report hardware status on init Expose additional fpga status registers. Report hardware status during PMD init. Signed-off-by: Ed Czeck Acked-by: John Miller --- 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 c6032bcff6..4caad98a84 100644 --- a/drivers/net/ark/ark_ethdev.c +++ b/drivers/net/ark/ark_ethdev.c @@ -318,6 +318,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(ERR, "Arkville Evaluation System - " + "Timer has Expired\n"); + return -1; + } + PMD_DRV_LOG(WARNING, "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 59d9b8a2a3..41c497b0ab 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 995fc20fb6..0c38007172 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.20.1