mbox series

[GIT,PULL] mtd: nand: Changes for 5.7

Message ID 20200327212238.6f0b5e15@xps13
State Not Applicable
Delegated to: Miquel Raynal
Headers show
Series [GIT,PULL] mtd: nand: Changes for 5.7 | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/nand/for-5.7

Message

Miquel Raynal March 27, 2020, 8:22 p.m. UTC
Hello,

This is the NAND PR for 5.7.

Thanks,
Miquèl

The following changes since commit 98d54f81e36ba3bf92172791eba5ca5bd813989b:

  Linux 5.6-rc4 (2020-03-01 16:38:46 -0600)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/nand/for-5.7

for you to fetch changes up to fca88925d76978b7f20de42d8ead34fb91500003:

  mtd: rawnand: toshiba: Support reading the number of bitflips for BENAND (Built-in ECC NAND) (2020-03-25 22:13:04 +0100)

----------------------------------------------------------------
Raw NAND core changes:
* Add support for manufacturer specific suspend/resume operation
* Add support for manufacturer specific lock/unlock operation
* Replace zero-length array with flexible-array member
* Fix a typo ("manufecturer")
* Ensure nand_soft_waitrdy wait period is enough

Raw NAND controller driver changes:
* Brcmnand:
Add support for flash-edu for dma transfers (+ bindings)
* Cadence:
Reinit completion before executing a new command
Change bad block marker size
Fix the calculation of the avaialble OOB size
Get meta data size from registers
* Qualcom:
Use dma_request_chan() instead dma_request_slave_channel()
Release resources on failure within qcom_nandc_alloc()
* Allwinner:
Use dma_request_chan() instead dma_request_slave_channel()
* Marvell:
Use dma_request_chan() instead dma_request_slave_channel()
Release DMA channel on error
* Freescale:
Use dma_request_chan() instead dma_request_slave_channel()
* Macronix:
Add support for Macronix NAND randomizer (+ bindings)
* Ams-delta:
Rename structures and functions to gpio_nand*
Make the driver custom I/O ready
Drop useless local variable
Support custom driver initialisation
Add module device tables
Handle more GPIO pins as optional
Make read pulses optional
Don't hardcode read/write pulse widths
Push inversion handling to gpiolib
Enable OF partition info support
Drop board specific partition info
Use struct gpio_nand_platdata
Write protect device during probe
* Ingenic:
Use devm_platform_ioremap_resource()
Add dependency on MIPS || COMPILE_TEST
* Denali:
Deassert write protect pin
* ST:
Use dma_request_chan() instead dma_request_slave_channel()

Raw NAND chip driver changes:
* Toshiba:
Support reading the number of bitflips for BENAND (Built-in ECC NAND)
* Macronix:
Add support for deep power down mode
Add support for block protection

SPI-NAND core changes:
* Do not erase the block before writing a bad block marker
* Explicitly use MTD_OPS_RAW to write the bad block marker to OOB
* Stop using spinand->oobbuf for buffering bad block markers
* Rework detect procedure for different READ_ID operation

SPI-NAND driver changes:
* Toshiba:
Support for new Kioxia Serial NAND
Rename function name to change suffix and prefix (8Gbit)
Add comment about Kioxia ID
* Micron:
Add new Micron SPI NAND devices with multiple dies
Add M70A series Micron SPI NAND devices
identify SPI NAND device with Continuous Read mode
Add new Micron SPI NAND devices
Describe the SPI NAND device MT29F2G01ABAGD
Generalize the OOB layout structure and function names

----------------------------------------------------------------
Christophe Kerello (1):
      mtd: rawnand: free the nand_device object

Chuanhong Guo (1):
      mtd: spinand: rework detect procedure for different READ_ID operation

Frieder Schrempf (3):
      mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers
      mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to OOB
      mtd: spinand: Do not erase the block before writing a bad block marker

Gustavo A. R. Silva (1):
      mtd: rawnand: Replace zero-length array with flexible-array member

Janusz Krzysztofik (14):
      mtd: rawnand: ams-delta: Write protect device during probe
      mtd: rawnand: ams-delta: Use struct gpio_nand_platdata
      ARM: OMAP1: ams-delta: Provide board specific partition info
      mtd: rawnand: ams-delta: Drop board specific partition info
      mtd: rawnand: ams-delta: Enable OF partition info support
      mtd: rawnand: ams-delta: Push inversion handling to gpiolib
      mtd: rawnand: ams-delta: Don't hardcode read/write pulse widths
      mtd: rawnand: ams-delta: Make read pulses optional
      mtd: rawnand: ams-delta: Handle more GPIO pins as optional
      mtd: rawnand: ams-delta: Add module device tables
      mtd: rawnand: ams-delta: Support custom driver initialisation
      mtd: rawnand: ams-delta: Drop useless local variable
      mtd: rawnand: ams-delta: Make the driver custom I/O ready
      mtd: rawnand: ams-delta: Rename structures and functions to gpio_nand*

Jonathan Neuschäfer (1):
      mtd: rawnand: Fix a typo ("manufecturer")

Kamal Dasu (3):
      dt: bindings: brcmnand: Add support for flash-edu
      arch: mips: brcm: Add 7425 flash-edu support
      mtd: rawnand: brcmnand: Add support for flash-edu for dma transfers

Martin Devera (1):
      mtd: rawnand: Ensure nand_soft_waitrdy wait period is enough

Masahiro Yamada (1):
      mtd: rawnand: denali: deassert write protect pin

Mason Yang (6):
      mtd: rawnand: Add support for Macronix NAND randomizer
      dt-bindings: mtd: Document Macronix NAND device bindings
      mtd: rawnand: Add support for manufacturer specific lock/unlock operation
      mtd: rawnand: Macronix: Add support for block protection
      mtd: rawnand: Add support for manufacturer specific suspend/resume operation
      mtd: rawnand: macronix: Add support for deep power down mode

Paul Cercueil (2):
      mtd: rawnand: ingenic: Use devm_platform_ioremap_resource()
      mtd: rawnand: ingenic: Add dependency on MIPS || COMPILE_TEST

Peter Ujfalusi (7):
      mtd: rawnand: gpmi: Use dma_request_chan() instead dma_request_slave_channel()
      mtd: rawnand: marvell: Release DMA channel on error
      mtd: rawnand: marvell: Use dma_request_chan() instead dma_request_slave_channel()
      mtd: rawnand: sunxi: Use dma_request_chan() instead dma_request_slave_channel()
      mtd: rawnand: qcom: Release resources on failure within qcom_nandc_alloc()
      mtd: rawnand: qcom: Use dma_request_chan() instead dma_request_slave_channel()
      mtd: rawnand: stm32_fmc2: Use dma_request_chan() instead dma_request_slave_channel()

Piotr Sroka (4):
      mtd: rawnand: cadence: get meta data size from registers
      mtd: rawnand: cadence: fix the calculation of the avaialble OOB size
      mtd: rawnand: cadence: change bad block marker size
      mtd: rawnand: cadence: reinit completion before executing a new command

Shivamurthy Shastri (6):
      mtd: spinand: micron: Generalize the OOB layout structure and function names
      mtd: spinand: micron: Describe the SPI NAND device MT29F2G01ABAGD
      mtd: spinand: micron: Add new Micron SPI NAND devices
      mtd: spinand: micron: identify SPI NAND device with Continuous Read mode
      mtd: spinand: micron: Add M70A series Micron SPI NAND devices
      mtd: spinand: micron: Add new Micron SPI NAND devices with multiple dies

Yoshio Furuyama (4):
      mtd: spinand: toshiba: Add comment about Kioxia ID
      mtd: spinand: toshiba: Rename function name to change suffix and prefix (8Gbit)
      mtd: spinand: toshiba: Support for new Kioxia Serial NAND
      mtd: rawnand: toshiba: Support reading the number of bitflips for BENAND (Built-in ECC NAND)

 Documentation/devicetree/bindings/mtd/brcm,brcmnand.txt |  10 ++--
 Documentation/devicetree/bindings/mtd/nand-macronix.txt |  27 +++++++++++
 arch/arm/mach-omap1/board-ams-delta.c                   |  47 ++++++++++++++++--
 arch/mips/boot/dts/brcm/bcm7425.dtsi                    |   4 +-
 drivers/mtd/nand/raw/ams-delta.c                        | 243 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------
 drivers/mtd/nand/raw/brcmnand/brcmnand.c                | 293 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 drivers/mtd/nand/raw/cadence-nand-controller.c          |  34 +++++++------
 drivers/mtd/nand/raw/denali.c                           |   1 +
 drivers/mtd/nand/raw/denali.h                           |   2 +-
 drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c              |  21 ++++----
 drivers/mtd/nand/raw/ingenic/Kconfig                    |   1 +
 drivers/mtd/nand/raw/ingenic/ingenic_ecc.c              |   4 +-
 drivers/mtd/nand/raw/internals.h                        |   1 +
 drivers/mtd/nand/raw/marvell_nand.c                     |  40 +++++++++++-----
 drivers/mtd/nand/raw/meson_nand.c                       |   2 +-
 drivers/mtd/nand/raw/mtk_nand.c                         |   2 +-
 drivers/mtd/nand/raw/nand_base.c                        |  62 +++++++++++++++++++++---
 drivers/mtd/nand/raw/nand_hynix.c                       |   2 +-
 drivers/mtd/nand/raw/nand_macronix.c                    | 227 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/mtd/nand/raw/nand_toshiba.c                     |  58 +++++++++++++++++++++-
 drivers/mtd/nand/raw/qcom_nandc.c                       | 105 ++++++++++++++++++++++++----------------
 drivers/mtd/nand/raw/stm32_fmc2_nand.c                  |  44 ++++++++++++++---
 drivers/mtd/nand/raw/sunxi_nand.c                       |  17 ++++---
 drivers/mtd/nand/spi/core.c                             | 104 +++++++++++++++++++++++++++-------------
 drivers/mtd/nand/spi/gigadevice.c                       |  45 +++++-------------
 drivers/mtd/nand/spi/macronix.c                         |  30 +++---------
 drivers/mtd/nand/spi/micron.c                           | 172 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------------
 drivers/mtd/nand/spi/paragon.c                          |  28 +++--------
 drivers/mtd/nand/spi/toshiba.c                          | 208 +++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------
 drivers/mtd/nand/spi/winbond.c                          |  34 +++----------
 include/linux/mtd/rawnand.h                             |  11 ++++-
 include/linux/mtd/spinand.h                             |  67 +++++++++++++++++---------
 32 files changed, 1482 insertions(+), 464 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/mtd/nand-macronix.txt

Comments

Miquel Raynal March 30, 2020, 8:16 a.m. UTC | #1
Miquel Raynal <miquel.raynal@bootlin.com> wrote on Fri, 27 Mar 2020
21:22:38 +0100:

> Hello,
> 
> This is the NAND PR for 5.7.

Pulled into mtd/next.

> 
> Thanks,
> Miquèl
> 
> The following changes since commit 98d54f81e36ba3bf92172791eba5ca5bd813989b:
> 
>   Linux 5.6-rc4 (2020-03-01 16:38:46 -0600)
> 
> are available in the Git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git tags/nand/for-5.7
> 
> for you to fetch changes up to fca88925d76978b7f20de42d8ead34fb91500003:
> 
>   mtd: rawnand: toshiba: Support reading the number of bitflips for BENAND (Built-in ECC NAND) (2020-03-25 22:13:04 +0100)
> 
> ----------------------------------------------------------------
> Raw NAND core changes:
> * Add support for manufacturer specific suspend/resume operation
> * Add support for manufacturer specific lock/unlock operation
> * Replace zero-length array with flexible-array member
> * Fix a typo ("manufecturer")
> * Ensure nand_soft_waitrdy wait period is enough
> 
> Raw NAND controller driver changes:
> * Brcmnand:
> Add support for flash-edu for dma transfers (+ bindings)
> * Cadence:
> Reinit completion before executing a new command
> Change bad block marker size
> Fix the calculation of the avaialble OOB size
> Get meta data size from registers
> * Qualcom:
> Use dma_request_chan() instead dma_request_slave_channel()
> Release resources on failure within qcom_nandc_alloc()
> * Allwinner:
> Use dma_request_chan() instead dma_request_slave_channel()
> * Marvell:
> Use dma_request_chan() instead dma_request_slave_channel()
> Release DMA channel on error
> * Freescale:
> Use dma_request_chan() instead dma_request_slave_channel()
> * Macronix:
> Add support for Macronix NAND randomizer (+ bindings)
> * Ams-delta:
> Rename structures and functions to gpio_nand*
> Make the driver custom I/O ready
> Drop useless local variable
> Support custom driver initialisation
> Add module device tables
> Handle more GPIO pins as optional
> Make read pulses optional
> Don't hardcode read/write pulse widths
> Push inversion handling to gpiolib
> Enable OF partition info support
> Drop board specific partition info
> Use struct gpio_nand_platdata
> Write protect device during probe
> * Ingenic:
> Use devm_platform_ioremap_resource()
> Add dependency on MIPS || COMPILE_TEST
> * Denali:
> Deassert write protect pin
> * ST:
> Use dma_request_chan() instead dma_request_slave_channel()
> 
> Raw NAND chip driver changes:
> * Toshiba:
> Support reading the number of bitflips for BENAND (Built-in ECC NAND)
> * Macronix:
> Add support for deep power down mode
> Add support for block protection
> 
> SPI-NAND core changes:
> * Do not erase the block before writing a bad block marker
> * Explicitly use MTD_OPS_RAW to write the bad block marker to OOB
> * Stop using spinand->oobbuf for buffering bad block markers
> * Rework detect procedure for different READ_ID operation
> 
> SPI-NAND driver changes:
> * Toshiba:
> Support for new Kioxia Serial NAND
> Rename function name to change suffix and prefix (8Gbit)
> Add comment about Kioxia ID
> * Micron:
> Add new Micron SPI NAND devices with multiple dies
> Add M70A series Micron SPI NAND devices
> identify SPI NAND device with Continuous Read mode
> Add new Micron SPI NAND devices
> Describe the SPI NAND device MT29F2G01ABAGD
> Generalize the OOB layout structure and function names
> 
> ----------------------------------------------------------------
> Christophe Kerello (1):
>       mtd: rawnand: free the nand_device object
> 
> Chuanhong Guo (1):
>       mtd: spinand: rework detect procedure for different READ_ID operation
> 
> Frieder Schrempf (3):
>       mtd: spinand: Stop using spinand->oobbuf for buffering bad block markers
>       mtd: spinand: Explicitly use MTD_OPS_RAW to write the bad block marker to OOB
>       mtd: spinand: Do not erase the block before writing a bad block marker
> 
> Gustavo A. R. Silva (1):
>       mtd: rawnand: Replace zero-length array with flexible-array member
> 
> Janusz Krzysztofik (14):
>       mtd: rawnand: ams-delta: Write protect device during probe
>       mtd: rawnand: ams-delta: Use struct gpio_nand_platdata
>       ARM: OMAP1: ams-delta: Provide board specific partition info
>       mtd: rawnand: ams-delta: Drop board specific partition info
>       mtd: rawnand: ams-delta: Enable OF partition info support
>       mtd: rawnand: ams-delta: Push inversion handling to gpiolib
>       mtd: rawnand: ams-delta: Don't hardcode read/write pulse widths
>       mtd: rawnand: ams-delta: Make read pulses optional
>       mtd: rawnand: ams-delta: Handle more GPIO pins as optional
>       mtd: rawnand: ams-delta: Add module device tables
>       mtd: rawnand: ams-delta: Support custom driver initialisation
>       mtd: rawnand: ams-delta: Drop useless local variable
>       mtd: rawnand: ams-delta: Make the driver custom I/O ready
>       mtd: rawnand: ams-delta: Rename structures and functions to gpio_nand*
> 
> Jonathan Neuschäfer (1):
>       mtd: rawnand: Fix a typo ("manufecturer")
> 
> Kamal Dasu (3):
>       dt: bindings: brcmnand: Add support for flash-edu
>       arch: mips: brcm: Add 7425 flash-edu support
>       mtd: rawnand: brcmnand: Add support for flash-edu for dma transfers
> 
> Martin Devera (1):
>       mtd: rawnand: Ensure nand_soft_waitrdy wait period is enough
> 
> Masahiro Yamada (1):
>       mtd: rawnand: denali: deassert write protect pin
> 
> Mason Yang (6):
>       mtd: rawnand: Add support for Macronix NAND randomizer
>       dt-bindings: mtd: Document Macronix NAND device bindings
>       mtd: rawnand: Add support for manufacturer specific lock/unlock operation
>       mtd: rawnand: Macronix: Add support for block protection
>       mtd: rawnand: Add support for manufacturer specific suspend/resume operation
>       mtd: rawnand: macronix: Add support for deep power down mode
> 
> Paul Cercueil (2):
>       mtd: rawnand: ingenic: Use devm_platform_ioremap_resource()
>       mtd: rawnand: ingenic: Add dependency on MIPS || COMPILE_TEST
> 
> Peter Ujfalusi (7):
>       mtd: rawnand: gpmi: Use dma_request_chan() instead dma_request_slave_channel()
>       mtd: rawnand: marvell: Release DMA channel on error
>       mtd: rawnand: marvell: Use dma_request_chan() instead dma_request_slave_channel()
>       mtd: rawnand: sunxi: Use dma_request_chan() instead dma_request_slave_channel()
>       mtd: rawnand: qcom: Release resources on failure within qcom_nandc_alloc()
>       mtd: rawnand: qcom: Use dma_request_chan() instead dma_request_slave_channel()
>       mtd: rawnand: stm32_fmc2: Use dma_request_chan() instead dma_request_slave_channel()
> 
> Piotr Sroka (4):
>       mtd: rawnand: cadence: get meta data size from registers
>       mtd: rawnand: cadence: fix the calculation of the avaialble OOB size
>       mtd: rawnand: cadence: change bad block marker size
>       mtd: rawnand: cadence: reinit completion before executing a new command
> 
> Shivamurthy Shastri (6):
>       mtd: spinand: micron: Generalize the OOB layout structure and function names
>       mtd: spinand: micron: Describe the SPI NAND device MT29F2G01ABAGD
>       mtd: spinand: micron: Add new Micron SPI NAND devices
>       mtd: spinand: micron: identify SPI NAND device with Continuous Read mode
>       mtd: spinand: micron: Add M70A series Micron SPI NAND devices
>       mtd: spinand: micron: Add new Micron SPI NAND devices with multiple dies
> 
> Yoshio Furuyama (4):
>       mtd: spinand: toshiba: Add comment about Kioxia ID
>       mtd: spinand: toshiba: Rename function name to change suffix and prefix (8Gbit)
>       mtd: spinand: toshiba: Support for new Kioxia Serial NAND
>       mtd: rawnand: toshiba: Support reading the number of bitflips for BENAND (Built-in ECC NAND)
> 
>  Documentation/devicetree/bindings/mtd/brcm,brcmnand.txt |  10 ++--
>  Documentation/devicetree/bindings/mtd/nand-macronix.txt |  27 +++++++++++
>  arch/arm/mach-omap1/board-ams-delta.c                   |  47 ++++++++++++++++--
>  arch/mips/boot/dts/brcm/bcm7425.dtsi                    |   4 +-
>  drivers/mtd/nand/raw/ams-delta.c                        | 243 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------
>  drivers/mtd/nand/raw/brcmnand/brcmnand.c                | 293 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
>  drivers/mtd/nand/raw/cadence-nand-controller.c          |  34 +++++++------
>  drivers/mtd/nand/raw/denali.c                           |   1 +
>  drivers/mtd/nand/raw/denali.h                           |   2 +-
>  drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c              |  21 ++++----
>  drivers/mtd/nand/raw/ingenic/Kconfig                    |   1 +
>  drivers/mtd/nand/raw/ingenic/ingenic_ecc.c              |   4 +-
>  drivers/mtd/nand/raw/internals.h                        |   1 +
>  drivers/mtd/nand/raw/marvell_nand.c                     |  40 +++++++++++-----
>  drivers/mtd/nand/raw/meson_nand.c                       |   2 +-
>  drivers/mtd/nand/raw/mtk_nand.c                         |   2 +-
>  drivers/mtd/nand/raw/nand_base.c                        |  62 +++++++++++++++++++++---
>  drivers/mtd/nand/raw/nand_hynix.c                       |   2 +-
>  drivers/mtd/nand/raw/nand_macronix.c                    | 227 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  drivers/mtd/nand/raw/nand_toshiba.c                     |  58 +++++++++++++++++++++-
>  drivers/mtd/nand/raw/qcom_nandc.c                       | 105 ++++++++++++++++++++++++----------------
>  drivers/mtd/nand/raw/stm32_fmc2_nand.c                  |  44 ++++++++++++++---
>  drivers/mtd/nand/raw/sunxi_nand.c                       |  17 ++++---
>  drivers/mtd/nand/spi/core.c                             | 104 +++++++++++++++++++++++++++-------------
>  drivers/mtd/nand/spi/gigadevice.c                       |  45 +++++-------------
>  drivers/mtd/nand/spi/macronix.c                         |  30 +++---------
>  drivers/mtd/nand/spi/micron.c                           | 172 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------------
>  drivers/mtd/nand/spi/paragon.c                          |  28 +++--------
>  drivers/mtd/nand/spi/toshiba.c                          | 208 +++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------
>  drivers/mtd/nand/spi/winbond.c                          |  34 +++----------
>  include/linux/mtd/rawnand.h                             |  11 ++++-
>  include/linux/mtd/spinand.h                             |  67 +++++++++++++++++---------
>  32 files changed, 1482 insertions(+), 464 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/mtd/nand-macronix.txt

Thanks,
Miquèl