[PATCH v4 0/2] mtd: nand: add sunxi NAND flash controller support

From: Boris BREZILLON
Date: Mon Aug 18 2014 - 13:26:39 EST


Hi,

This patch series adds support for the sunxi NAND Flash Controller (NFC)
block.

These two patches only add support for the basic NAND stuff:
- NAND controller operations
- SW and HW ECC handling (with both syndrome and normal ECC scheme)

If you want support for advanced features you can find it on my github
repo [1]:
- HW randomization support
- per partition ECC/Randomizer to handle bootloader partitions

DMA transfers are not supported yet, but I have reworked the OOB layout
when using the HW ECC scheme to match the one used when accessing the NAND
with DMA transfers (the available OOB bytes are placed at the end of the
OOB area).

This patch series depends on this other one [2] which adds support for ONFI
timing mode retrieval on non-ONFI NANDs.

Best Regards,

Boris

[1]https://github.com/bbrezillon/linux-sunxi/tree/sunxi-nand-v4
[2]https://lkml.org/lkml/2014/7/28/156

Changes since v3:
- removed nand core code modifications from the patch series (submitted
separately)
- added documentation to the code
- forced timeout (a default timeout is used when none is provided by the
caller) on controller operations
- fixed coding style issues
- removed unneeded irq field from the sunxi_nfc struct
- fixed several memory leaks
- reworked the NFC reset code (to avoid potential garbage config from the
bootloader)
- made use of ECC_EXCEPTION flag to prevent erased page from generating
ECC errors
- changed the OOB layout for HW ECC scheme

Changes since v2:
- merge HW ECC implementation in base implementation patch
- fix timing config when interfacing with an ONFI compatible chip

Changes since v1:
- add HW ECC support
- rework NAND timings retrieval (use ONFI timing mode instead of raw timings)
- add nand-ecc-level property to specify NAND ECC requirements from DT

Boris BREZILLON (2):
mtd: nand: add sunxi NAND flash controller support
mtd: nand: add sunxi NFC dt bindings doc

.../devicetree/bindings/mtd/sunxi-nand.txt | 45 +
drivers/mtd/nand/Kconfig | 6 +
drivers/mtd/nand/Makefile | 1 +
drivers/mtd/nand/sunxi_nand.c | 1362 ++++++++++++++++++++
4 files changed, 1414 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mtd/sunxi-nand.txt
create mode 100644 drivers/mtd/nand/sunxi_nand.c

--
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/