1354d7675SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only 2354d7675SEmmanuel Vadot%YAML 1.2 3354d7675SEmmanuel Vadot--- 4354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/memory-controllers/synopsys,ddrc-ecc.yaml# 5354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6354d7675SEmmanuel Vadot 7354d7675SEmmanuel Vadottitle: Synopsys IntelliDDR Multi Protocol memory controller 8354d7675SEmmanuel Vadot 9354d7675SEmmanuel Vadotmaintainers: 10*c9ccf3a3SEmmanuel Vadot - Krzysztof Kozlowski <krzk@kernel.org> 11354d7675SEmmanuel Vadot - Manish Narani <manish.narani@xilinx.com> 12354d7675SEmmanuel Vadot - Michal Simek <michal.simek@xilinx.com> 13354d7675SEmmanuel Vadot 14354d7675SEmmanuel Vadotdescription: | 15354d7675SEmmanuel Vadot The ZynqMP DDR ECC controller has an optional ECC support in 64-bit and 16354d7675SEmmanuel Vadot 32-bit bus width configurations. 17354d7675SEmmanuel Vadot 18354d7675SEmmanuel Vadot The Zynq DDR ECC controller has an optional ECC support in half-bus width 19354d7675SEmmanuel Vadot (16-bit) configuration. 20354d7675SEmmanuel Vadot 21354d7675SEmmanuel Vadot These both ECC controllers correct single bit ECC errors and detect double bit 22354d7675SEmmanuel Vadot ECC errors. 23354d7675SEmmanuel Vadot 24354d7675SEmmanuel Vadotproperties: 25354d7675SEmmanuel Vadot compatible: 26354d7675SEmmanuel Vadot enum: 27*c9ccf3a3SEmmanuel Vadot - snps,ddrc-3.80a 28354d7675SEmmanuel Vadot - xlnx,zynq-ddrc-a05 29354d7675SEmmanuel Vadot - xlnx,zynqmp-ddrc-2.40a 30354d7675SEmmanuel Vadot 31354d7675SEmmanuel Vadot interrupts: 32354d7675SEmmanuel Vadot maxItems: 1 33354d7675SEmmanuel Vadot 34354d7675SEmmanuel Vadot reg: 35354d7675SEmmanuel Vadot maxItems: 1 36354d7675SEmmanuel Vadot 37354d7675SEmmanuel Vadotrequired: 38354d7675SEmmanuel Vadot - compatible 39354d7675SEmmanuel Vadot - reg 40354d7675SEmmanuel Vadot 41354d7675SEmmanuel VadotallOf: 42354d7675SEmmanuel Vadot - if: 43354d7675SEmmanuel Vadot properties: 44354d7675SEmmanuel Vadot compatible: 45354d7675SEmmanuel Vadot contains: 46*c9ccf3a3SEmmanuel Vadot enum: 47*c9ccf3a3SEmmanuel Vadot - snps,ddrc-3.80a 48*c9ccf3a3SEmmanuel Vadot - xlnx,zynqmp-ddrc-2.40a 49354d7675SEmmanuel Vadot then: 50354d7675SEmmanuel Vadot required: 51354d7675SEmmanuel Vadot - interrupts 52354d7675SEmmanuel Vadot else: 53354d7675SEmmanuel Vadot properties: 54354d7675SEmmanuel Vadot interrupts: false 55354d7675SEmmanuel Vadot 56354d7675SEmmanuel VadotadditionalProperties: false 57354d7675SEmmanuel Vadot 58354d7675SEmmanuel Vadotexamples: 59354d7675SEmmanuel Vadot - | 60354d7675SEmmanuel Vadot memory-controller@f8006000 { 61354d7675SEmmanuel Vadot compatible = "xlnx,zynq-ddrc-a05"; 62354d7675SEmmanuel Vadot reg = <0xf8006000 0x1000>; 63354d7675SEmmanuel Vadot }; 64354d7675SEmmanuel Vadot 65354d7675SEmmanuel Vadot - | 66354d7675SEmmanuel Vadot axi { 67354d7675SEmmanuel Vadot #address-cells = <2>; 68354d7675SEmmanuel Vadot #size-cells = <2>; 69354d7675SEmmanuel Vadot 70354d7675SEmmanuel Vadot memory-controller@fd070000 { 71354d7675SEmmanuel Vadot compatible = "xlnx,zynqmp-ddrc-2.40a"; 72354d7675SEmmanuel Vadot reg = <0x0 0xfd070000 0x0 0x30000>; 73354d7675SEmmanuel Vadot interrupt-parent = <&gic>; 74354d7675SEmmanuel Vadot interrupts = <0 112 4>; 75354d7675SEmmanuel Vadot }; 76354d7675SEmmanuel Vadot }; 77