Re: [RESEND v5 14/21] dt-bindings: mtd: Add the nand-ecc-placement property
From: Boris Brezillon <boris.brezillon@collabora.com>
Date: 2020-05-26 23:08:19
On Tue, 26 May 2020 21:56:26 +0200 Miquel Raynal [off-list ref] wrote:
Placement is where the ECC bytes are expected. No value means the controller can do whatever it desires (default is to put ECC bytes at the end of the OOB area). Alternative placement is "interleaved" (also sometimes referred as "syndrome") where data and OOB are mixed.
Hm, unless you can figure out what all controllers use, I'd suggest to have the default mean "undefined", as in "controller put the ECC bytes somewhere, but we don't where that is". Then let the explicit values be "oob" or "interleaved".
quoted hunk ↗ jump to hunk
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> --- .../devicetree/bindings/mtd/nand-controller.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+)diff --git a/Documentation/devicetree/bindings/mtd/nand-controller.yaml b/Documentation/devicetree/bindings/mtd/nand-controller.yaml index d529f8587ba6..35512f2c66fa 100644 --- a/Documentation/devicetree/bindings/mtd/nand-controller.yaml +++ b/Documentation/devicetree/bindings/mtd/nand-controller.yaml@@ -56,6 +56,16 @@ patternProperties: (Linux will handle the calculations). soft_bch is deprecated and should be replaced by soft and nand-ecc-algo. + nand-ecc-placement: + allOf: + - $ref: /schemas/types.yaml#/definitions/string + - enum: [ free, interleaved ] + description: + Location for the ECC bytes. Free is the default and means the + controller in charge is free to put them where it wants. + Default state is to put ECC bytes at the end of the OOB area. + Otherwise, ECC bytes may be interleaved with data. + nand-ecc-algo: allOf: - $ref: /schemas/types.yaml#/definitions/string