[RFC PATCH v3 0/3] support 512B ECC step size for Meson NAND

From: Arseniy Krasnov
Date: Tue Jul 11 2023 - 08:34:55 EST


Hello,

this patchset adds support for 512B ECC step size for Meson NAND. Current
implementation only supports 1024B. There are three patches:

1) Update for device tree bindings to replace 'const' type of field
'nand-ecc-step-size' with 'enum' which contains 512 and 1024.

2) Update for device tree bindings to add dependency between properties
'nand-ecc-strength' and 'nand-ecc-step-size'.

3) Update for Meson driver - new enum value for 512B ECC and reworked
ECC capabilities structure to support both 512B and 1024B ECC. By
default this driver uses 1024B ECC, 512B could be enabled in device
tree.

Changelog:
v1 -> v2:
* Add default value of 1024 to the bindings patch (0001).
* Remove "Acked-by: Rob Herring <robh@xxxxxxxxxx>" from the bindings
patch (0001) due to added default value.
* Remove invalid calculation of OOB bytes, available for ECC engine
from patch 0002. This logic is incorrect from the origins, so I don't
touch it in this patchset. It will be fixed by another patch, as in
fact, it doesn't affect this patchset.

v2 -> v3:
* Add new patch which adds dependency between 'nand-ecc-strength' and
'nand-ecc-step-size' (0002).
* Return "Acked-by: Rob Herring <robh@xxxxxxxxxx>" to 0001.
* Remove "default" value from 0001, due to dependency patch.
* Remove example value from 0001, due to dependency patch.

Links:
v1:
https://lore.kernel.org/linux-mtd/20230628092937.538683-1-AVKrasnov@xxxxxxxxxxxxxx/
v2:
https://lore.kernel.org/linux-mtd/20230705065434.297040-1-AVKrasnov@xxxxxxxxxxxxxx/

Arseniy Krasnov (3):
dt-bindings: nand: meson: support for 512B ECC step size
dt-bindings: nand: meson: make ECC properties dependent
mtd: rawnand: meson: support for 512B ECC step size

.../bindings/mtd/amlogic,meson-nand.yaml | 6 ++-
drivers/mtd/nand/raw/meson_nand.c | 45 ++++++++++++++-----
2 files changed, 39 insertions(+), 12 deletions(-)

--
2.35.0