From: Ryan Chen <ryan_chen@aspeedtech.com>
To: Stefan Schaeckeler <sschaeck@cisco.com>,
Rob Herring <robh@kernel.org>,
Krzysztof Kozlowski <krzk+dt@kernel.org>,
Conor Dooley <conor+dt@kernel.org>, Joel Stanley <joel@jms.id.au>,
Andrew Jeffery <andrew@codeconstruct.com.au>,
Borislav Petkov <bp@alien8.de>, Tony Luck <tony.luck@intel.com>,
"Sebastian Andrzej Siewior" <bigeasy@linutronix.de>,
Clark Williams <clrkwllms@kernel.org>,
Steven Rostedt <rostedt@goodmis.org>
Cc: <devicetree@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-aspeed@lists.ozlabs.org>, <linux-kernel@vger.kernel.org>,
<linux-edac@vger.kernel.org>, Borislav Petkov <bp@suse.de>,
<linux-rt-devel@lists.linux.dev>,
Ryan Chen <ryan_chen@aspeedtech.com>, <stable@vger.kernel.org>
Subject: [PATCH 0/7] Add Aspeed AST2700 SDRAM EDAC support
Date: Wed, 12 Aug 2026 13:48:24 +0800 [thread overview]
Message-ID: <20260812-edac-v1-0-03992edea297@aspeedtech.com> (raw)
Add ECC error reporting for the Aspeed AST2700 SoC to the existing
aspeed_edac driver.
The AST2700 memory controller keeps the same overall EDAC programming
model as the earlier Aspeed BMC SoCs, but uses a different register
layout, a split interrupt status/clear/mask scheme and DDR4/DDR5 memory.
Rather than fork the driver, the existing code is first tidied and
generalised, then the AST2700 is added as one more per-SoC variant.
The series is organised as:
- dt-bindings: document the new "aspeed,ast2700-sdram-edac" compatible;
- set dimm->grain to the controllers' ECC granularity, fixing a
pre-existing WARN_ON in the EDAC core on the first reported error
(carries a Fixes: tag and Cc: stable);
- clean up whitespace and include ordering so the following changes
start from a consistent style;
- free the mem_ctl_info unconditionally on remove, dropping a NULL
check on a value that cannot be NULL there;
- drop the regmap, which serves only as an MMIO wrapper here,
in favour of direct readl()/writel() under an explicit raw spinlock,
annotating the register base with __guarded_by() so that the locking
is checked at build time under CONFIG_WARN_CONTEXT_ANALYSIS;
- abstract the SoC-specific details (register layout, ECC/DRAM-type
bits, memory types, write-protection key) behind per-SoC chip data;
- add the AST2700 support, teaching the shared error-reporting helpers
to report an error without an address for its single shared
failure-address register.
Tested with the memory controller's ECC error injection on both an
existing SoC and the new one:
- AST2600: an injected correctable error is reported through the EDAC
interface as a CE with the recorded failure address, confirming the
regmap removal and the chip-data refactor do not regress the existing
controllers.
- AST2700: an injected correctable error is likewise reported as a CE
with the expected failure address.
Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com>
---
Ryan Chen (7):
dt-bindings: edac: aspeed: Add AST2700 SDRAM EDAC
EDAC/aspeed: Set the DIMM grain
EDAC/aspeed: Clean up whitespace and include ordering
EDAC/aspeed: Free the mem_ctl_info unconditionally on remove
EDAC/aspeed: Replace regmap with direct register access
EDAC/aspeed: Abstract SoC differences behind chip data
EDAC/aspeed: Add AST2700 support
.../bindings/edac/aspeed,ast2400-sdram-edac.yaml | 6 +-
drivers/edac/aspeed_edac.c | 414 +++++++++++++--------
2 files changed, 268 insertions(+), 152 deletions(-)
---
base-commit: 5464985e42c04e335fb30e38fbc409c997db9bec
change-id: 20260625-edac-8e960e02e7f7
Best regards,
--
Ryan Chen <ryan_chen@aspeedtech.com>
next reply other threads:[~2026-08-12 5:53 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-12 5:48 Ryan Chen [this message]
2026-08-12 5:48 ` [PATCH 1/7] dt-bindings: edac: aspeed: Add AST2700 SDRAM EDAC Ryan Chen
2026-08-12 5:48 ` [PATCH 2/7] EDAC/aspeed: Set the DIMM grain Ryan Chen
2026-08-12 5:48 ` [PATCH 3/7] EDAC/aspeed: Clean up whitespace and include ordering Ryan Chen
2026-08-12 5:48 ` [PATCH 4/7] EDAC/aspeed: Free the mem_ctl_info unconditionally on remove Ryan Chen
2026-08-12 5:57 ` sashiko-bot
2026-08-12 5:48 ` [PATCH 5/7] EDAC/aspeed: Replace regmap with direct register access Ryan Chen
2026-08-12 6:03 ` sashiko-bot
2026-08-12 5:48 ` [PATCH 6/7] EDAC/aspeed: Abstract SoC differences behind chip data Ryan Chen
2026-08-12 6:01 ` sashiko-bot
2026-08-12 5:48 ` [PATCH 7/7] EDAC/aspeed: Add AST2700 support Ryan Chen
2026-08-12 6:00 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260812-edac-v1-0-03992edea297@aspeedtech.com \
--to=ryan_chen@aspeedtech.com \
--cc=andrew@codeconstruct.com.au \
--cc=bigeasy@linutronix.de \
--cc=bp@alien8.de \
--cc=bp@suse.de \
--cc=clrkwllms@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=joel@jms.id.au \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-aspeed@lists.ozlabs.org \
--cc=linux-edac@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rt-devel@lists.linux.dev \
--cc=robh@kernel.org \
--cc=rostedt@goodmis.org \
--cc=sschaeck@cisco.com \
--cc=stable@vger.kernel.org \
--cc=tony.luck@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox