mtd: nand: allow to set only one of ECC size and ECC strength from DT
authorMasahiro Yamada <yamada.masahiro@socionext.com>
Wed, 22 Mar 2017 20:07:00 +0000 (05:07 +0900)
committerBoris Brezillon <boris.brezillon@free-electrons.com>
Fri, 24 Mar 2017 08:33:02 +0000 (09:33 +0100)
commit9fe4b66efb77fec71a9c11de58e5e51c5c826190
tree2431aec66797d000308a28b3e141491c64bfb299
parent33575b25fff26085c17675b5b63d60e889cfe959
mtd: nand: allow to set only one of ECC size and ECC strength from DT

Currently, it is valid to specify both "nand-ecc-step-size" and
"nand-ecc-strength", but not allowed to set only one of them.

This requirement has a conflict with "nand-ecc-maximize"; this flag
is used when you want the driver to choose the best ECC strength.
If "nand-ecc-maximize" is set, "nand-ecc-strength" is very likely to
be unset.

It would be possible to make the if-conditional more complex by
adding the check for the NAND_ECC_MAXIMIZE flag, but I chose to drop
the check entirely.  I thought of the situation where the hardware
has a fixed ECC step size (so it can be hard-coded in the driver),
whereas the ECC strength is configurable by software.  In that case,
we may want to only set "nand-ecc-strength" (or "nand-ecc-maximize")
in DT.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
drivers/mtd/nand/nand_base.c