[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8c49091c-5bba-47fe-6479-8a2af69c7340@xilinx.com>
Date: Wed, 20 Apr 2022 07:56:44 +0200
From: Michal Simek <michal.simek@...inx.com>
To: Sherry Sun <sherry.sun@....com>, <bp@...en8.de>,
<mchehab@...nel.org>, <michal.simek@...inx.com>,
<tony.luck@...el.com>, <james.morse@....com>, <rric@...nel.org>
CC: <linux-edac@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-arm-kernel@...ts.infradead.org>, <linux-imx@....com>
Subject: Re: [PATCH 1/2] EDAC: synopsys: Add disable_intr support for V3.X
Synopsys EDAC DDR
On 3/18/22 12:17, Sherry Sun wrote:
> V3.X Synopsys EDAC DDR doesn't have the QOS Interrupt register, need
> to change to use the ECC Clear Register to disable the interrupts.
>
> Signed-off-by: Sherry Sun <sherry.sun@....com>
> ---
> drivers/edac/synopsys_edac.c | 7 +++++--
> 1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/edac/synopsys_edac.c b/drivers/edac/synopsys_edac.c
> index f05ff02c0656..1b630f0be119 100644
> --- a/drivers/edac/synopsys_edac.c
> +++ b/drivers/edac/synopsys_edac.c
> @@ -859,8 +859,11 @@ static void enable_intr(struct synps_edac_priv *priv)
> static void disable_intr(struct synps_edac_priv *priv)
> {
> /* Disable UE/CE Interrupts */
> - writel(DDR_QOSUE_MASK | DDR_QOSCE_MASK,
> - priv->baseaddr + DDR_QOS_IRQ_DB_OFST);
> + if (priv->p_data->quirks & DDR_ECC_INTR_SELF_CLEAR)
> + writel(0x0, priv->baseaddr + ECC_CLR_OFST);
> + else
> + writel(DDR_QOSUE_MASK | DDR_QOSCE_MASK,
> + priv->baseaddr + DDR_QOS_IRQ_DB_OFST);
> }
>
> static int setup_irq(struct mem_ctl_info *mci,
Acked-by: Michal Simek <michal.simek@...inx.com>
Thanks,
Michal
Powered by blists - more mailing lists