xref: /freebsd/sys/contrib/device-tree/Bindings/mtd/intel,lgm-ebunand.yaml (revision 2e3507c25e42292b45a5482e116d278f5515d04d)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mtd/intel,lgm-ebunand.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Intel LGM SoC NAND Controller
8
9allOf:
10  - $ref: nand-controller.yaml
11
12maintainers:
13  - Ramuthevar Vadivel Murugan <vadivel.muruganx.ramuthevar@linux.intel.com>
14
15properties:
16  compatible:
17    const: intel,lgm-ebunand
18
19  reg:
20    maxItems: 6
21
22  reg-names:
23    items:
24      - const: ebunand
25      - const: hsnand
26      - const: nand_cs0
27      - const: nand_cs1
28      - const: addr_sel0
29      - const: addr_sel1
30
31  clocks:
32    maxItems: 1
33
34  dmas:
35    maxItems: 2
36
37  dma-names:
38    items:
39      - const: tx
40      - const: rx
41
42patternProperties:
43  "^nand@[a-f0-9]$":
44    type: object
45    properties:
46      reg:
47        minimum: 0
48        maximum: 1
49
50      nand-ecc-mode: true
51
52      nand-ecc-algo:
53        const: hw
54
55    additionalProperties: false
56
57required:
58  - compatible
59  - reg
60  - reg-names
61  - clocks
62  - dmas
63  - dma-names
64
65unevaluatedProperties: false
66
67examples:
68  - |
69    nand-controller@e0f00000 {
70        compatible = "intel,lgm-ebunand";
71        reg = <0xe0f00000 0x100>,
72              <0xe1000000 0x300>,
73              <0xe1400000 0x8000>,
74              <0xe1c00000 0x1000>,
75              <0x17400000 0x4>,
76              <0x17c00000 0x4>;
77        reg-names = "ebunand", "hsnand", "nand_cs0", "nand_cs1",
78                    "addr_sel0", "addr_sel1";
79        clocks = <&cgu0 125>;
80        dmas = <&dma0 8>, <&dma0 9>;
81        dma-names = "tx", "rx";
82        #address-cells = <1>;
83        #size-cells = <0>;
84
85        nand@0 {
86            reg = <0>;
87            nand-ecc-mode = "hw";
88        };
89    };
90
91...
92