First of all these counters aren't exposed anyhow from the driver.
Secondly the EDAC core already tracks the total amount of the correctable
and uncorrectable errors (see mem_ctl_info.{ce_mc,ue_mc} fields usage).
Drop the useless internal counters then for good.
Signed-off-by: Serge Semin <[email protected]>
---
Changelog v4:
- Drop redundant empty line.
- Drop private counters access from the check_errors() method too.
---
drivers/edac/synopsys_edac.c | 14 --------------
1 file changed, 14 deletions(-)
diff --git a/drivers/edac/synopsys_edac.c b/drivers/edac/synopsys_edac.c
index afe9f475cb4e..c2ac2eb64642 100644
--- a/drivers/edac/synopsys_edac.c
+++ b/drivers/edac/synopsys_edac.c
@@ -305,8 +305,6 @@ struct synps_ecc_status {
* @message: Buffer for framing the event specific info.
* @stat: ECC status information.
* @p_data: Platform data.
- * @ce_cnt: Correctable Error count.
- * @ue_cnt: Uncorrectable Error count.
* @poison_addr: Data poison address.
* @row_shift: Bit shifts for row bit.
* @col_shift: Bit shifts for column bit.
@@ -320,8 +318,6 @@ struct synps_edac_priv {
char message[SYNPS_EDAC_MSG_SIZE];
struct synps_ecc_status stat;
const struct synps_platform_data *p_data;
- u32 ce_cnt;
- u32 ue_cnt;
#ifdef CONFIG_EDAC_DEBUG
ulong poison_addr;
u32 row_shift[18];
@@ -593,13 +589,8 @@ static irqreturn_t intr_handler(int irq, void *dev_id)
if (status)
return IRQ_NONE;
- priv->ce_cnt += priv->stat.ce_cnt;
- priv->ue_cnt += priv->stat.ue_cnt;
handle_error(mci, &priv->stat);
- edac_dbg(3, "Total error count CE %d UE %d\n",
- priv->ce_cnt, priv->ue_cnt);
-
if (priv->p_data->quirks & SYNPS_ZYNQMP_IRQ_REGS)
writel(regval, priv->baseaddr + DDR_QOS_IRQ_STAT_OFST);
@@ -625,12 +616,7 @@ static void check_errors(struct mem_ctl_info *mci)
if (status)
return;
- priv->ce_cnt += priv->stat.ce_cnt;
- priv->ue_cnt += priv->stat.ue_cnt;
handle_error(mci, &priv->stat);
-
- edac_dbg(3, "Total error count CE %d UE %d\n",
- priv->ce_cnt, priv->ue_cnt);
}
/**
--
2.41.0