0001 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/mtd/nand-chip.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006
0007 title: NAND Chip and NAND Controller Generic Binding
0008
0009 maintainers:
0010 - Miquel Raynal <miquel.raynal@bootlin.com>
0011
0012 description: |
0013 This file covers the generic description of a NAND chip. It implies that the
0014 bus interface should not be taken into account: both raw NAND devices and
0015 SPI-NAND devices are concerned by this description.
0016
0017 properties:
0018 reg:
0019 description:
0020 Contains the chip-select IDs.
0021
0022 nand-ecc-engine:
0023 description: |
0024 A phandle on the hardware ECC engine if any. There are
0025 basically three possibilities:
0026 1/ The ECC engine is part of the NAND controller, in this
0027 case the phandle should reference the parent node.
0028 2/ The ECC engine is part of the NAND part (on-die), in this
0029 case the phandle should reference the node itself.
0030 3/ The ECC engine is external, in this case the phandle should
0031 reference the specific ECC engine node.
0032 $ref: /schemas/types.yaml#/definitions/phandle
0033
0034 nand-use-soft-ecc-engine:
0035 description: Use a software ECC engine.
0036 type: boolean
0037
0038 nand-no-ecc-engine:
0039 description: Do not use any ECC correction.
0040 type: boolean
0041
0042 nand-ecc-algo:
0043 description:
0044 Desired ECC algorithm.
0045 $ref: /schemas/types.yaml#/definitions/string
0046 enum: [hamming, bch, rs]
0047
0048 nand-ecc-strength:
0049 description:
0050 Maximum number of bits that can be corrected per ECC step.
0051 $ref: /schemas/types.yaml#/definitions/uint32
0052 minimum: 1
0053
0054 nand-ecc-step-size:
0055 description:
0056 Number of data bytes covered by a single ECC step.
0057 $ref: /schemas/types.yaml#/definitions/uint32
0058 minimum: 1
0059
0060 secure-regions:
0061 description:
0062 Regions in the NAND chip which are protected using a secure element
0063 like Trustzone. This property contains the start address and size of
0064 the secure regions present.
0065 $ref: /schemas/types.yaml#/definitions/uint64-matrix
0066
0067 required:
0068 - reg
0069
0070 additionalProperties: true