From: Yazen Ghannam <yazen.ghannam@amd.com>
To: Rob Herring <robh@kernel.org>
Cc: Rama devi Veggalam <rama.devi.veggalam@amd.com>,
bp@alien8.de, tony.luck@intel.com, michal.simek@amd.com,
krzk+dt@kernel.org, conor+dt@kernel.org,
linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org,
devicetree@vger.kernel.org, james.morse@arm.com,
mchehab@kernel.org, rric@kernel.org, git@amd.com
Subject: Re: [PATCH v4 1/3] dt-bindings: edac: xlnx,versal-ddrmc: Add xlnx,versal-xilsem compatible
Date: Mon, 26 Oct 2026 16:39:20 -0400 [thread overview]
Message-ID: <20261026203920.GA696395@yaz-khff2.amd.com> (raw)
In-Reply-To: <20261022143730.GA1287910-robh@kernel.org>
On Thu, Oct 22, 2026 at 09:37:30AM -0500, Rob Herring wrote:
> On Wed, Oct 21, 2026 at 06:27:20PM +0530, Rama devi Veggalam wrote:
> > Add the "xlnx,versal-xilsem" compatible string for the Versal
> > XilSEM (Xilinx Soft Error Mitigation) hardware block.
> >
> > XilSEM runs as part of the Platform Loader and Manager (PLM) on the
> > PMC and detects (and optionally corrects) soft errors in Versal
> > Configuration Memory, notifying error events to user applications.
> >
> > The new compatible string only needs a single register region and
> > does not use reg-names or interrupts, so the schema gates these
> > requirements per compatible string.
> >
> > Signed-off-by: Rama devi Veggalam <rama.devi.veggalam@amd.com>
> > ---
> > Changes in v4:
> > - Added a new "xlnx,versal-xilsem" compatible string to the existing
> > xlnx,versal-ddrmc-edac.yaml binding, gated via allOf/if-then so
> > DDRMC and XilSEM requirements (reg, reg-names, interrupts) are
> > validated independently per compatible string.
> >
> > Changes in v3:
> > - Merged XilSEM edac with Versal Edac
> >
> > Changes in v2:
> > - Changed "xlnx,versal-xilsem-edac" to constant
> > - Removed "compatible: in required section
> > - Removed "|" in description
> > - Removed "items" in compatible
> > - Fixed indentation in examples
> > - Updated title and description
> > ---
> > .../memory-controllers/xlnx,versal-ddrmc-edac.yaml | 64 +++++++++++++++++++---
> > 1 file changed, 57 insertions(+), 7 deletions(-)
> >
> > diff --git a/Documentation/devicetree/bindings/memory-controllers/xlnx,versal-ddrmc-edac.yaml b/Documentation/devicetree/bindings/memory-controllers/xlnx,versal-ddrmc-edac.yaml
> > index 12f8e9f..b5dc320 100644
> > --- a/Documentation/devicetree/bindings/memory-controllers/xlnx,versal-ddrmc-edac.yaml
> > +++ b/Documentation/devicetree/bindings/memory-controllers/xlnx,versal-ddrmc-edac.yaml
> > @@ -4,25 +4,35 @@
> > $id: http://devicetree.org/schemas/memory-controllers/xlnx,versal-ddrmc-edac.yaml#
> > $schema: http://devicetree.org/meta-schemas/core.yaml#
> >
> > -title: Xilinx Versal DDRMC (Integrated DDR Memory Controller)
> > +title: Xilinx Versal DDRMC (Integrated DDR Memory Controller) and XilSEM EDAC
> >
> > maintainers:
> > - Shubhrajyoti Datta <shubhrajyoti.datta@amd.com>
> > - Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
> > + - Rama Devi Veggalam <rama.devi.veggalam@amd.com>
> >
> > description:
> > The integrated DDR Memory Controllers (DDRMCs) support both DDR4 and LPDDR4/
> > 4X memory interfaces. Versal DDR memory controller has an optional ECC support
> > which correct single bit ECC errors and detect double bit ECC errors.
> >
> > + Xilinx Versal Soft Error Mitigation (XilSEM) is part of the Platform Loader
> > + and Manager (PLM) which is loaded into and runs on the Platform Management
> > + Controller (PMC). XilSEM is responsible for detecting and optionally
> > + correcting soft errors in Configuration Memory of Versal. Whenever an error
> > + is detected, be it correctable or uncorrectable, XilSEM notifies the errors
> > + to user applications via the firmware's event notification interface,
> > + rather than a devicetree-described interrupt.
> > +
> > properties:
> > compatible:
> > - const: xlnx,versal-ddrmc
> > + enum:
> > + - xlnx,versal-ddrmc
> > + - xlnx,versal-xilsem
> >
> > reg:
> > - items:
> > - - description: DDR Memory Controller registers
> > - - description: NOC registers corresponding to DDR Memory Controller
> > + minItems: 1
> > + maxItems: 2
> >
> > reg-names:
> > items:
> > @@ -35,8 +45,39 @@ properties:
> > required:
> > - compatible
> > - reg
> > - - reg-names
> > - - interrupts
> > +
> > +allOf:
> > + - if:
> > + properties:
> > + compatible:
> > + contains:
> > + const: xlnx,versal-ddrmc
> > + then:
> > + properties:
> > + reg:
> > + items:
> > + - description: DDR Memory Controller registers
> > + - description: NOC registers corresponding to DDR Memory Controller
> > + reg-names:
> > + items:
> > + - const: base
> > + - const: noc
> > + required:
> > + - reg-names
> > + - interrupts
> > +
> > + - if:
> > + properties:
> > + compatible:
> > + contains:
> > + const: xlnx,versal-xilsem
> > + then:
> > + properties:
> > + reg:
> > + items:
> > + - description: XilSEM (Soft Error Mitigation) register region
> > + reg-names: false
> > + interrupts: false
>
> These 2 devices have absolutely 0 properties in common. It makes no
> sense to share a binding doc.
>
Right, and maybe DT isn't needed at all?
One option in the Sashiko feedback is to use a platform driver.
IIUC, here's a summary:
1) Drop this DT patch.
2) Have ZYNQMP_FIRMWARE create a platform driver for XilSEM.
3) Have the Versal EDAC module use the XilSEM platform driver.
Rama, what do you think?
Thanks,
Yazen
next prev parent reply other threads:[~2026-10-26 20:39 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-21 12:57 [PATCH v4 0/3] EDAC/versal: Add XilSEM CRAM/NPI error monitoring support Rama devi Veggalam
2026-10-21 12:57 ` [PATCH v4 1/3] dt-bindings: edac: xlnx,versal-ddrmc: Add xlnx,versal-xilsem compatible Rama devi Veggalam
2026-10-22 14:37 ` Rob Herring
2026-10-26 20:39 ` Yazen Ghannam [this message]
2026-10-28 4:48 ` Veggalam, Rama Devi
2026-10-29 14:52 ` Michal Simek
2026-10-29 15:25 ` Borislav Petkov
2026-10-29 16:12 ` Michal Simek
2026-10-29 16:27 ` Borislav Petkov
2026-10-21 12:57 ` [PATCH v4 2/3] firmware: xilinx: Add XilSEM firmware interface Rama devi Veggalam
2026-10-21 12:57 ` [PATCH v4 3/3] edac: xilinx: Add XilSEM CRAM/NPI error monitoring support Rama devi Veggalam
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=20261026203920.GA696395@yaz-khff2.amd.com \
--to=yazen.ghannam@amd.com \
--cc=bp@alien8.de \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=git@amd.com \
--cc=james.morse@arm.com \
--cc=krzk+dt@kernel.org \
--cc=linux-edac@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=michal.simek@amd.com \
--cc=rama.devi.veggalam@amd.com \
--cc=robh@kernel.org \
--cc=rric@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
all inboxes | Powered by JetHome®