mbox series

[v4,0/3] mtd: rawnand: add STM32 FMC2 NAND flash controller driver

Message ID 1544781488-18723-1-git-send-email-christophe.kerello@st.com
Headers show
Series mtd: rawnand: add STM32 FMC2 NAND flash controller driver | expand

Message

Christophe Kerello Dec. 14, 2018, 9:58 a.m. UTC
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 v4:
 - rebase on nand/next
 - replace "manual mode" by "polling mode"

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 polling 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

Comments

Miquel Raynal Jan. 15, 2019, 4:54 p.m. UTC | #1
Hi Christophe,

Christophe Kerello <christophe.kerello@st.com> wrote on Fri, 14 Dec
2018 10:58:05 +0100:

> 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)

Series applied on nand/next.


Thanks,
Miquèl