xref: /linux/Documentation/devicetree/bindings/mtd/nand-property.yaml (revision 8541d8f725c673db3bd741947f27974358b2e163)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/mtd/nand-property.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: NAND Chip Common Properties
8
9maintainers:
10  - Miquel Raynal <miquel.raynal@bootlin.com>
11
12description: |
13  This file covers the generic properties of a NAND chip. It implies that the
14  bus interface should not be taken into account: both raw NAND devices and
15  SPI-NAND devices are concerned by this description.
16
17properties:
18  nand-ecc-engine:
19    description: |
20      A phandle on the hardware ECC engine if any. There are
21      basically three possibilities:
22      1/ The ECC engine is part of the NAND controller, in this
23      case the phandle should reference the parent node.
24      2/ The ECC engine is part of the NAND part (on-die), in this
25      case the phandle should reference the node itself.
26      3/ The ECC engine is external, in this case the phandle should
27      reference the specific ECC engine node.
28    $ref: /schemas/types.yaml#/definitions/phandle
29
30  nand-use-soft-ecc-engine:
31    description: Use a software ECC engine.
32    type: boolean
33
34  nand-no-ecc-engine:
35    description: Do not use any ECC correction.
36    type: boolean
37
38  nand-ecc-algo:
39    description:
40      Desired ECC algorithm.
41    $ref: /schemas/types.yaml#/definitions/string
42    enum: [hamming, bch, rs]
43
44  nand-ecc-strength:
45    description:
46      Maximum number of bits that can be corrected per ECC step.
47    $ref: /schemas/types.yaml#/definitions/uint32
48    minimum: 1
49
50  nand-ecc-step-size:
51    description:
52      Number of data bytes covered by a single ECC step.
53    $ref: /schemas/types.yaml#/definitions/uint32
54    minimum: 1
55
56  secure-regions:
57    description:
58      Regions in the NAND chip which are protected using a secure element
59      like Trustzone. This property contains the start address and size of
60      the secure regions present.
61    $ref: /schemas/types.yaml#/definitions/uint64-matrix
62
63# This file can be referenced by more specific devices (like spi-nands)
64additionalProperties: true
65