xref: /openbmc/linux/Documentation/devicetree/bindings/mtd/ti,elm.yaml (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
16863c612SRoger Quadros# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
26863c612SRoger Quadros%YAML 1.2
36863c612SRoger Quadros---
46863c612SRoger Quadros$id: http://devicetree.org/schemas/mtd/ti,elm.yaml#
56863c612SRoger Quadros$schema: http://devicetree.org/meta-schemas/core.yaml#
66863c612SRoger Quadros
76863c612SRoger Quadrostitle: Texas Instruments Error Location Module (ELM).
86863c612SRoger Quadros
96863c612SRoger Quadrosmaintainers:
106863c612SRoger Quadros  - Roger Quadros <rogerq@kernel.org>
116863c612SRoger Quadros
126863c612SRoger Quadrosdescription:
136863c612SRoger Quadros  ELM module is used together with GPMC and NAND Flash to detect
146863c612SRoger Quadros  errors and the location of the error based on BCH algorithms
156863c612SRoger Quadros  so they can be corrected if possible.
166863c612SRoger Quadros
176863c612SRoger Quadrosproperties:
186863c612SRoger Quadros  compatible:
196863c612SRoger Quadros    enum:
206863c612SRoger Quadros      - ti,am3352-elm
21*05691c02SRoger Quadros      - ti,am64-elm
226863c612SRoger Quadros
236863c612SRoger Quadros  reg:
246863c612SRoger Quadros    maxItems: 1
256863c612SRoger Quadros
266863c612SRoger Quadros  interrupts:
276863c612SRoger Quadros    maxItems: 1
286863c612SRoger Quadros
29*05691c02SRoger Quadros  clocks:
30*05691c02SRoger Quadros    maxItems: 1
31*05691c02SRoger Quadros    description: Functional clock.
32*05691c02SRoger Quadros
33*05691c02SRoger Quadros  clock-names:
34*05691c02SRoger Quadros    items:
35*05691c02SRoger Quadros      - const: fck
36*05691c02SRoger Quadros
37*05691c02SRoger Quadros  power-domains:
38*05691c02SRoger Quadros    maxItems: 1
39*05691c02SRoger Quadros
406863c612SRoger Quadros  ti,hwmods:
416863c612SRoger Quadros    description:
426863c612SRoger Quadros      Name of the HWMOD associated with ELM. This is for legacy
436863c612SRoger Quadros      platforms only.
446863c612SRoger Quadros    $ref: /schemas/types.yaml#/definitions/string
456863c612SRoger Quadros    deprecated: true
466863c612SRoger Quadros
476863c612SRoger Quadrosrequired:
486863c612SRoger Quadros  - compatible
496863c612SRoger Quadros  - reg
506863c612SRoger Quadros  - interrupts
516863c612SRoger Quadros
52*05691c02SRoger QuadrosallOf:
53*05691c02SRoger Quadros  - if:
54*05691c02SRoger Quadros      properties:
55*05691c02SRoger Quadros        compatible:
56*05691c02SRoger Quadros          contains:
57*05691c02SRoger Quadros            const: ti,am64-elm
58*05691c02SRoger Quadros    then:
59*05691c02SRoger Quadros      required:
60*05691c02SRoger Quadros        - clocks
61*05691c02SRoger Quadros        - clock-names
62*05691c02SRoger Quadros        - power-domains
63*05691c02SRoger Quadros
646863c612SRoger QuadrosadditionalProperties: false
656863c612SRoger Quadros
666863c612SRoger Quadrosexamples:
676863c612SRoger Quadros  - |
686863c612SRoger Quadros    elm: ecc@0 {
696863c612SRoger Quadros        compatible = "ti,am3352-elm";
706863c612SRoger Quadros        reg = <0x0 0x2000>;
716863c612SRoger Quadros        interrupts = <4>;
726863c612SRoger Quadros    };
73