xref: /linux/Documentation/devicetree/bindings/memory-controllers/xlnx,versal-ddrmc-edac.yaml (revision 0ea5c948cb64bab5bc7a5516774eb8536f05aa0d)
1*82bcca7bSShubhrajyoti Datta# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*82bcca7bSShubhrajyoti Datta%YAML 1.2
3*82bcca7bSShubhrajyoti Datta---
4*82bcca7bSShubhrajyoti Datta$id: http://devicetree.org/schemas/memory-controllers/xlnx,versal-ddrmc-edac.yaml#
5*82bcca7bSShubhrajyoti Datta$schema: http://devicetree.org/meta-schemas/core.yaml#
6*82bcca7bSShubhrajyoti Datta
7*82bcca7bSShubhrajyoti Dattatitle: Xilinx Versal DDRMC (Integrated DDR Memory Controller)
8*82bcca7bSShubhrajyoti Datta
9*82bcca7bSShubhrajyoti Dattamaintainers:
10*82bcca7bSShubhrajyoti Datta  - Shubhrajyoti Datta <shubhrajyoti.datta@amd.com>
11*82bcca7bSShubhrajyoti Datta  - Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
12*82bcca7bSShubhrajyoti Datta
13*82bcca7bSShubhrajyoti Dattadescription:
14*82bcca7bSShubhrajyoti Datta  The integrated DDR Memory Controllers (DDRMCs) support both DDR4 and LPDDR4/
15*82bcca7bSShubhrajyoti Datta  4X memory interfaces. Versal DDR memory controller has an optional ECC support
16*82bcca7bSShubhrajyoti Datta  which correct single bit ECC errors and detect double bit ECC errors.
17*82bcca7bSShubhrajyoti Datta
18*82bcca7bSShubhrajyoti Dattaproperties:
19*82bcca7bSShubhrajyoti Datta  compatible:
20*82bcca7bSShubhrajyoti Datta    const: xlnx,versal-ddrmc
21*82bcca7bSShubhrajyoti Datta
22*82bcca7bSShubhrajyoti Datta  reg:
23*82bcca7bSShubhrajyoti Datta    items:
24*82bcca7bSShubhrajyoti Datta      - description: DDR Memory Controller registers
25*82bcca7bSShubhrajyoti Datta      - description: NOC registers corresponding to DDR Memory Controller
26*82bcca7bSShubhrajyoti Datta
27*82bcca7bSShubhrajyoti Datta  reg-names:
28*82bcca7bSShubhrajyoti Datta    items:
29*82bcca7bSShubhrajyoti Datta      - const: base
30*82bcca7bSShubhrajyoti Datta      - const: noc
31*82bcca7bSShubhrajyoti Datta
32*82bcca7bSShubhrajyoti Datta  interrupts:
33*82bcca7bSShubhrajyoti Datta    maxItems: 1
34*82bcca7bSShubhrajyoti Datta
35*82bcca7bSShubhrajyoti Dattarequired:
36*82bcca7bSShubhrajyoti Datta  - compatible
37*82bcca7bSShubhrajyoti Datta  - reg
38*82bcca7bSShubhrajyoti Datta  - reg-names
39*82bcca7bSShubhrajyoti Datta  - interrupts
40*82bcca7bSShubhrajyoti Datta
41*82bcca7bSShubhrajyoti DattaadditionalProperties: false
42*82bcca7bSShubhrajyoti Datta
43*82bcca7bSShubhrajyoti Dattaexamples:
44*82bcca7bSShubhrajyoti Datta  - |
45*82bcca7bSShubhrajyoti Datta    #include <dt-bindings/interrupt-controller/arm-gic.h>
46*82bcca7bSShubhrajyoti Datta
47*82bcca7bSShubhrajyoti Datta    bus {
48*82bcca7bSShubhrajyoti Datta      #address-cells = <2>;
49*82bcca7bSShubhrajyoti Datta      #size-cells = <2>;
50*82bcca7bSShubhrajyoti Datta      memory-controller@f6150000 {
51*82bcca7bSShubhrajyoti Datta        compatible = "xlnx,versal-ddrmc";
52*82bcca7bSShubhrajyoti Datta        reg = <0x0 0xf6150000 0x0 0x2000>, <0x0 0xf6070000 0x0 0x20000>;
53*82bcca7bSShubhrajyoti Datta        reg-names = "base", "noc";
54*82bcca7bSShubhrajyoti Datta        interrupt-parent = <&gic>;
55*82bcca7bSShubhrajyoti Datta        interrupts = <GIC_SPI 147 IRQ_TYPE_LEVEL_HIGH>;
56*82bcca7bSShubhrajyoti Datta      };
57*82bcca7bSShubhrajyoti Datta    };
58