xref: /linux/Documentation/devicetree/bindings/mtd/fsl,vf610-nfc.yaml (revision ab93e0dd72c37d378dd936f031ffb83ff2bd87ce)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mtd/fsl,vf610-nfc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Freescale's NAND flash controller (NFC)
8
9description:
10  This variant of the Freescale NAND flash controller (NFC) can be found on
11  Vybrid (vf610), MPC5125, MCF54418 and Kinetis K70.
12
13maintainers:
14  - Frank Li <Frank.Li@nxp.com>
15
16properties:
17  compatible:
18    enum:
19      - fsl,vf610-nfc
20
21  reg:
22    maxItems: 1
23
24  interrupts:
25    maxItems: 1
26
27  clocks:
28    maxItems: 1
29
30  clock-names:
31    items:
32      - const: nfc
33
34patternProperties:
35  "^nand@[a-f0-9]$":
36    type: object
37    $ref: raw-nand-chip.yaml
38
39    properties:
40      compatible:
41        const: fsl,vf610-nfc-nandcs
42
43      reg:
44        const: 0
45
46      nand-ecc-strength:
47        enum: [24, 32]
48
49      nand-ecc-step-size:
50        const: 2048
51
52    unevaluatedProperties: false
53
54required:
55  - compatible
56  - reg
57  - interrupts
58
59allOf:
60  - $ref: nand-controller.yaml
61
62unevaluatedProperties: false
63
64examples:
65  - |
66    #include <dt-bindings/interrupt-controller/arm-gic.h>
67    #include <dt-bindings/clock/vf610-clock.h>
68
69    nand-controller@400e0000 {
70        compatible = "fsl,vf610-nfc";
71        reg = <0x400e0000 0x4000>;
72        #address-cells = <1>;
73        #size-cells = <0>;
74        interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
75        clocks = <&clks VF610_CLK_NFC>;
76        clock-names = "nfc";
77        assigned-clocks = <&clks VF610_CLK_NFC>;
78        assigned-clock-rates = <33000000>;
79
80        nand@0 {
81            compatible = "fsl,vf610-nfc-nandcs";
82            reg = <0>;
83            nand-bus-width = <8>;
84            nand-ecc-mode = "hw";
85            nand-ecc-strength = <32>;
86            nand-ecc-step-size = <2048>;
87            nand-on-flash-bbt;
88        };
89    };
90