<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/edac/synopsys_edac.c, branch linux-5.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2022-08-03T10:05:29Z</updated>
<entry>
<title>EDAC/synopsys: Re-enable the error interrupts on v3 hw</title>
<updated>2022-08-03T10:05:29Z</updated>
<author>
<name>Sherry Sun</name>
</author>
<published>2022-04-27T01:51:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ee9da1d02ffea8bbc4e3dd48811acb423aede2df'/>
<id>urn:sha1:ee9da1d02ffea8bbc4e3dd48811acb423aede2df</id>
<content type='text'>
commit 4bcffe941758ee17becb43af3b25487f848f6512 upstream.

zynqmp_get_error_info() writes 0 to the ECC_CLR_OFST register after
an interrupt for a {un-,}correctable error is raised, which disables
the error interrupts. Then the interrupt handler will be called only
once. Therefore, re-enable the error interrupt line at the end of
intr_handler() for v3.x Synopsys EDAC DDR.

Fixes: f7824ded4149 ("EDAC/synopsys: Add support for version 3 of the Synopsys EDAC DDR")
Signed-off-by: Sherry Sun &lt;sherry.sun@nxp.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: Shubhrajyoti Datta &lt;Shubhrajyoti.datta@xilinx.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Link: https://lore.kernel.org/r/20220427015137.8406-3-sherry.sun@nxp.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>EDAC/synopsys: Use the correct register to disable the error interrupt on v3 hw</title>
<updated>2022-08-03T10:05:29Z</updated>
<author>
<name>Sherry Sun</name>
</author>
<published>2022-04-27T01:51:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=07002838ee781ef890ef8ba9e84bde3f79099542'/>
<id>urn:sha1:07002838ee781ef890ef8ba9e84bde3f79099542</id>
<content type='text'>
commit be76ceaf03bc04e74be5e28f608316b73c2b04ad upstream.

v3.x Synopsys EDAC DDR doesn't have the QOS Interrupt register. Use the
ECC Clear Register to disable the error interrupts instead.

Fixes: f7824ded4149 ("EDAC/synopsys: Add support for version 3 of the Synopsys EDAC DDR")
Signed-off-by: Sherry Sun &lt;sherry.sun@nxp.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: Shubhrajyoti Datta &lt;Shubhrajyoti.datta@xilinx.com&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Link: https://lore.kernel.org/r/20220427015137.8406-2-sherry.sun@nxp.com
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>EDAC/synopsys: Read the error count from the correct register</title>
<updated>2022-04-14T12:44:49Z</updated>
<author>
<name>Shubhrajyoti Datta</name>
</author>
<published>2022-04-14T10:28:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e2932d1f6f055b2af2114c7e64a26dc1b5593d0c'/>
<id>urn:sha1:e2932d1f6f055b2af2114c7e64a26dc1b5593d0c</id>
<content type='text'>
Currently, the error count is read wrongly from the status register. Read
the count from the proper error count register (ERRCNT).

  [ bp: Massage. ]

Fixes: b500b4a029d5 ("EDAC, synopsys: Add ECC support for ZynqMP DDR controller")
Signed-off-by: Shubhrajyoti Datta &lt;shubhrajyoti.datta@xilinx.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Acked-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Link: https://lore.kernel.org/r/20220414102813.4468-1-shubhrajyoti.datta@xilinx.com
</content>
</entry>
<entry>
<title>EDAC/synopsys: Add support for version 3 of the Synopsys EDAC DDR</title>
<updated>2021-11-20T18:23:49Z</updated>
<author>
<name>Dinh Nguyen</name>
</author>
<published>2021-10-12T19:07:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f7824ded41491d7ebc156a3a2f6fa05cd89da7c2'/>
<id>urn:sha1:f7824ded41491d7ebc156a3a2f6fa05cd89da7c2</id>
<content type='text'>
Add support for version 3.80a of the Synopsys DDR controller. This
version of the controller has the following differences:

- UE/CE are auto cleared
- Interrupts are supported by default

Signed-off-by: Dinh Nguyen &lt;dinguyen@kernel.org&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Link: https://lkml.kernel.org/r/20211012190709.1504152-2-dinguyen@kernel.org
</content>
</entry>
<entry>
<title>EDAC/synopsys: Use the quirk for version instead of ddr version</title>
<updated>2021-11-20T17:13:06Z</updated>
<author>
<name>Dinh Nguyen</name>
</author>
<published>2021-10-12T19:07:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=bd1d6da17c296bd005bfa656952710d256e77dd3'/>
<id>urn:sha1:bd1d6da17c296bd005bfa656952710d256e77dd3</id>
<content type='text'>
Version 2.40a supports DDR_ECC_INTR_SUPPORT for a quirk, so use that
quirk to determine a call to setup_address_map().

Signed-off-by: Dinh Nguyen &lt;dinguyen@kernel.org&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Link: https://lkml.kernel.org/r/20211012190709.1504152-1-dinguyen@kernel.org
</content>
</entry>
<entry>
<title>EDAC/synopsys: Fix wrong value type assignment for edac_mode</title>
<updated>2021-09-16T08:21:35Z</updated>
<author>
<name>Sai Krishna Potthuri</name>
</author>
<published>2021-08-18T07:23:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5297cfa6bdf93e3889f78f9b482e2a595a376083'/>
<id>urn:sha1:5297cfa6bdf93e3889f78f9b482e2a595a376083</id>
<content type='text'>
dimm-&gt;edac_mode contains values of type enum edac_type - not the
corresponding capability flags. Fix that.

Issue caught by Coverity check "enumerated type mixed with another
type."

 [ bp: Rewrite commit message, add tags. ]

Fixes: ae9b56e3996d ("EDAC, synps: Add EDAC support for zynq ddr ecc controller")
Signed-off-by: Sai Krishna Potthuri &lt;lakshmi.sai.krishna.potthuri@xilinx.com&gt;
Signed-off-by: Shubhrajyoti Datta &lt;shubhrajyoti.datta@xilinx.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Cc: &lt;stable@vger.kernel.org&gt;
Link: https://lkml.kernel.org/r/20210818072315.15149-1-shubhrajyoti.datta@xilinx.com
</content>
</entry>
<entry>
<title>EDAC/synopsys: Return the correct value in mc_probe()</title>
<updated>2020-11-18T17:59:47Z</updated>
<author>
<name>Zhang Xiaoxu</name>
</author>
<published>2020-11-16T13:58:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=61d35648c06cac042d88c6d0b8df8f8c8c72a4d4'/>
<id>urn:sha1:61d35648c06cac042d88c6d0b8df8f8c8c72a4d4</id>
<content type='text'>
Return the error value if the inject sysfs file creation fails, rather
than returning 0, to signal to the upper layer that the -&gt;probe function
failed.

 [ bp: Massage. ]

Signed-off-by: Zhang Xiaoxu &lt;zhangxiaoxu5@huawei.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: Michal Simek &lt;michal.simek@xilinx.com&gt;
Link: https://lkml.kernel.org/r/20201116135810.3130845-1-zhangxiaoxu5@huawei.com
</content>
</entry>
<entry>
<title>EDAC/synopsys: Do not dump uninitialized pinf-&gt;col</title>
<updated>2020-03-17T13:32:31Z</updated>
<author>
<name>Sherry Sun</name>
</author>
<published>2020-03-16T13:34:39Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2fb3f6e12510b02cf17b7c394fc34359bb4bfd32'/>
<id>urn:sha1:2fb3f6e12510b02cf17b7c394fc34359bb4bfd32</id>
<content type='text'>
On the ZynqMP platform, zynqmp_get_error_info() is used to read out
error information. In this function, the pinf-&gt;col parameter is not
used (it is only used by the Zynq platform's zynq_get_error_info()). So
there's no need to print pinf-&gt;col on ZynqMP.

In order to differentiate on which platform handle_error() is executed,
use DDR_ECC_INTR_SUPPORT as the check condition to distinguish between
Zynq and ZynqMP platforms.

 [ bp: Massage. ]

Fixes: b500b4a029d57 ("EDAC, synopsys: Add ECC support for ZynqMP DDR controller")
Signed-off-by: Sherry Sun &lt;sherry.sun@nxp.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: Manish Narani &lt;manish.narani@xilinx.com&gt;
Link: https://lkml.kernel.org/r/1584365679-27443-1-git-send-email-sherry.sun@nxp.com
</content>
</entry>
<entry>
<title>EDAC/synopsys: Do not print an error with back-to-back snprintf() calls</title>
<updated>2020-02-27T15:44:25Z</updated>
<author>
<name>Sherry Sun</name>
</author>
<published>2020-02-27T08:34:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=dfc6014e3b60713f375d0601d7549eed224c4615'/>
<id>urn:sha1:dfc6014e3b60713f375d0601d7549eed224c4615</id>
<content type='text'>
handle_error() currently calls snprintf() a couple of times in
succession to output the message for a CE/UE, therefore overwriting each
part of the message which was formatted with the previous snprintf()
call. As a result, only the part of the message from the last snprintf()
call will be printed.

The simplest and most effective way to fix this problem is to combine
the whole string into one which to supply to a single snprintf() call.

 [ bp: Massage. ]

Fixes: b500b4a029d57 ("EDAC, synopsys: Add ECC support for ZynqMP DDR controller")
Signed-off-by: Sherry Sun &lt;sherry.sun@nxp.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
Reviewed-by: James Morse &lt;james.morse@arm.com&gt;
Cc: Manish Narani &lt;manish.narani@xilinx.com&gt;
Link: https://lkml.kernel.org/r/1582792452-32575-1-git-send-email-sherry.sun@nxp.com
</content>
</entry>
<entry>
<title>EDAC, synopsys: Add Error Injection support for ZynqMP DDR controller</title>
<updated>2018-11-06T09:38:27Z</updated>
<author>
<name>Manish Narani</name>
</author>
<published>2018-10-25T06:07:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1a81361f75d8a5cbe9d77c30fe0f42b7cda621c8'/>
<id>urn:sha1:1a81361f75d8a5cbe9d77c30fe0f42b7cda621c8</id>
<content type='text'>
Add support for Error Injection for ZynqMP DDR controller IP. For
injecting errors, the Row, Column, Bank, Bank Group and Rank bits
positions are determined via Address Map registers of the Synopsys DDR
controller.

Signed-off-by: Manish Narani &lt;manish.narani@xilinx.com&gt;
Signed-off-by: Borislav Petkov &lt;bp@suse.de&gt;
CC: Mauro Carvalho Chehab &lt;mchehab@kernel.org&gt;
CC: Michal Simek &lt;michal.simek@xilinx.com&gt;
CC: amit.kucheria@linaro.org
CC: devicetree@vger.kernel.org
CC: leoyang.li@nxp.com
CC: linux-arm-kernel@lists.infradead.org
CC: linux-edac &lt;linux-edac@vger.kernel.org&gt;
CC: mark.rutland@arm.com
CC: robh+dt@kernel.org
CC: sudeep.holla@arm.com
Link: http://lkml.kernel.org/r/1540447621-22870-7-git-send-email-manish.narani@xilinx.com
</content>
</entry>
</feed>
