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