linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [ v3 0/3] mtd: rawnand: add STM32 FMC2 NAND flash controller driver
@ 2018-11-29 16:41 Christophe Kerello
  2018-11-29 16:41 ` [ v3 1/3] dt-bindings: mtd: stm32_fmc2: add STM32 FMC2 NAND controller documentation Christophe Kerello
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Christophe Kerello @ 2018-11-29 16:41 UTC (permalink / raw)
  To: boris.brezillon, miquel.raynal, richard, dwmw2,
	computersforpeace, marek.vasut, robh+dt, mark.rutland
  Cc: linux-mtd, linux-kernel, devicetree, linux-stm32, Christophe Kerello

This patchset adds the support for the STMicroelectronics FMC2 NAND flash
controller found on STM32MP SOCs.

This patchset supports:
  - the command sequencer feature, a hardware accelerator for read/write
    within a page
  - the manual mode feature, useful for debug purpose
  - a maximum 8k page size
  - following ECC strength and step size
	- nand-ecc-strength = <8>, nand-ecc-step-size = <512> (BCH8)
	- nand-ecc-strength = <4>, nand-ecc-step-size = <512> (BCH4)
	- nand-ecc-strength = <1>, nand-ecc-step-size = <512> (Extended
	  ecc based on HAMMING)
    
This patchset has been tested on Micron MT29F8G08ABACAH4 (8-bit SLC NAND)
and MT29F8G16ABACAH4 (16-bit SLC NAND)

Changes v3:
 - modify clocks property description
 - add NAND reg property description
 - stm32_fmc2_nfc inherits from nand_controller structure
 - rewrite stm32_fmc2_read_data/stm32_fmc2_write_data functions
   to handle aligned and not aligned buffers
 - replace uint8_t by u8
 - use of NAND_ROW_ADDR_3 option

Changes v2:
 - separate the controller structure and the NAND chip structure
 - remove timings description from the device tree
 - fix typo issues
 - fix kbuildrobot issues

Christophe Kerello (3):
  dt-bindings: mtd: stm32_fmc2: add STM32 FMC2 NAND controller
    documentation
  mtd: rawnand: stm32_fmc2: add STM32 FMC2 NAND flash controller driver
  mtd: rawnand: stm32_fmc2: add manual mode

 .../devicetree/bindings/mtd/stm32-fmc2-nand.txt    |   61 +
 drivers/mtd/nand/raw/Kconfig                       |    9 +
 drivers/mtd/nand/raw/Makefile                      |    1 +
 drivers/mtd/nand/raw/stm32_fmc2_nand.c             | 2073 ++++++++++++++++++++
 4 files changed, 2144 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/mtd/stm32-fmc2-nand.txt
 create mode 100644 drivers/mtd/nand/raw/stm32_fmc2_nand.c

-- 
1.9.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-12-13 10:45 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-29 16:41 [ v3 0/3] mtd: rawnand: add STM32 FMC2 NAND flash controller driver Christophe Kerello
2018-11-29 16:41 ` [ v3 1/3] dt-bindings: mtd: stm32_fmc2: add STM32 FMC2 NAND controller documentation Christophe Kerello
2018-12-07 23:42   ` Rob Herring
2018-11-29 16:41 ` [ v3 2/3] mtd: rawnand: stm32_fmc2: add STM32 FMC2 NAND flash controller driver Christophe Kerello
2018-12-07  9:06   ` Linus Walleij
2018-12-07 10:21     ` [Linux-stm32] " Benjamin GAIGNARD
2018-12-07 12:47       ` Linus Walleij
2018-12-07 16:53     ` Christophe Kerello
2018-12-13 10:45       ` Linus Walleij
2018-12-07 10:18   ` Miquel Raynal
2018-12-07 10:53     ` Christophe Kerello
2018-11-29 16:41 ` [ v3 3/3] mtd: rawnand: stm32_fmc2: add manual mode Christophe Kerello
2018-12-07  9:16   ` Linus Walleij
2018-12-07 10:56     ` Christophe Kerello

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).