mbox series

[GIT,PULL] mtd: nand: Changes for 6.9-rc1

Message ID 20240315001037.75678dad@xps-13
State New
Headers show
Series [GIT,PULL] mtd: nand: Changes for 6.9-rc1 | expand

Pull-request

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

Message

Miquel Raynal March 14, 2024, 11:10 p.m. UTC
Hello,

This is the NAND PR for 6.9-rc1. I'll pull it tomorrow in mtd/next if no
problem arises and will forward the whole PR to Linus.

Thanks,
Miquèl

The following changes since commit 6613476e225e090cc9aad49be7fa504e290dd33d:

  Linux 6.8-rc1 (2024-01-21 14:11:32 -0800)

are available in the Git repository at:

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

for you to fetch changes up to 4120aa0e3961f68f1f8cfe6b4c3c809ffea31fdc:

  mtd: rawnand: Ensure continuous reads are well disabled (2024-03-15 00:04:51 +0100)

----------------------------------------------------------------
Raw NAND

The main series brought is an update of the Broadcom support to support
all BCMBCA SoCs and their specificity (ECC, write protection,
configuration straps), plus a few misc fixes and changes in the main
driver. Device tree updates are also part of this PR, initially because
of a misunderstanding on my side.

The STM32_FMC2 controller driver is also upgraded to properly support
MP1 and MP25 SoCs.

A new compatible is added for an Atmel flavor.

Among all these feature changes, there is as well a load of continuous
read related fixes, avoiding more corner conditions and clarifying the
logic. Finally a few miscellaneous fixes are made to the core, the
lpx32xx_mlc, fsl_lbc, Meson and Atmel controller driver, as well as
final one in the Hynix vendor driver.

SPI-NAND

The ESMT support has been extended to match 5 bytes ID to avoid
collisions. Winbond support on its side receives support for W25N04KV
chips.

----------------------------------------------------------------
Alexander Dahl (1):
      mtd: nand: raw: atmel: Fix comment in timings preparation

Arnd Bergmann (1):
      mtd: rawnand: lpc32xx_mlc: fix irq handler prototype

Arseniy Krasnov (1):
      mtd: rawnand: meson: fix scrambling mode value in command macro

Christophe Kerello (3):
      dt-bindings: mtd: st,stm32: add MP25 support
      mtd: rawnand: stm32_fmc2: use dma_get_slave_caps to get DMA max burst
      mtd: rawnand: stm32_fmc2: add MP25 support

Colin Ian King (1):
      mtd: rawnand: remove redundant assignment to variable bbtblocks

David Regan (2):
      mtd: rawnand: brcmnand: exec_op helper functions return type fixes
      mtd: rawnand: brcmnand: update log level messages

Erick Archer (1):
      mtd: rawnand: Prefer struct_size over open coded arithmetic

Ezra Buehler (2):
      mtd: spinand: Add support for 5-byte IDs
      mtd: spinand: esmt: Extend IDs to 5 bytes

Miquel Raynal (5):
      mtd: rawnand: Fix and simplify again the continuous read derivations
      mtd: rawnand: Add a helper for calculating a page index
      mtd: rawnand: Ensure all continuous terms are always in sync
      mtd: rawnand: Constrain even more when continuous reads are enabled
      mtd: rawnand: Ensure continuous reads are well disabled

Randy Dunlap (1):
      mtd: rawnand: hynix: remove @nand_technology kernel-doc description

Uwe Kleine-König (1):
      mtd: rawnand: fsl_elbc: Let .probe retry if local bus is missing

Varshini Rajendran (1):
      dt-bindings: atmel-nand: add microchip,sam9x7-pmecc

William Zhang (12):
      mtd: rawnand: brcmnand: fix style issues
      dt-bindings: mtd: brcmnand: Updates for bcmbca SoCs
      dt-bindings: mtd: brcmnand: Add WP pin connection property
      dt-bindings: mtd: brcmnand: Add ecc strap property
      ARM: dts: broadcom: bcmbca: Add NAND controller node
      arm64: dts: broadcom: bcmbca: Add NAND controller node
      arm64: dts: broadcom: bcmbca: Update router boards
      mtd: rawnand: brcmnand: Rename bcm63138 nand driver
      mtd: rawnand: brcmnand: Add BCMBCA read data bus interface
      mtd: rawnand: brcmnand: Support write protection setting from dts
      mtd: rawnand: brcmnand: fix sparse warnings
      mtd: rawnand: brcmnand: Add support for getting ecc setting from strap

Zhi-Jun You (1):
      mtd: spinand: winbond: add support for W25N04KV

 .../devicetree/bindings/mtd/atmel-nand.txt        |   1 +
 .../devicetree/bindings/mtd/brcm,brcmnand.yaml    |  44 +++++-
 .../bindings/mtd/st,stm32-fmc2-nand.yaml          |  25 +++-
 arch/arm/boot/dts/broadcom/bcm47622.dtsi          |  14 ++
 arch/arm/boot/dts/broadcom/bcm63138.dtsi          |   7 +-
 arch/arm/boot/dts/broadcom/bcm63148.dtsi          |  14 ++
 arch/arm/boot/dts/broadcom/bcm63178.dtsi          |  14 ++
 arch/arm/boot/dts/broadcom/bcm6756.dtsi           |  14 ++
 arch/arm/boot/dts/broadcom/bcm6846.dtsi           |  14 ++
 arch/arm/boot/dts/broadcom/bcm6855.dtsi           |  14 ++
 arch/arm/boot/dts/broadcom/bcm6878.dtsi           |  14 ++
 arch/arm/boot/dts/broadcom/bcm947622.dts          |  10 ++
 arch/arm/boot/dts/broadcom/bcm963138.dts          |  10 ++
 arch/arm/boot/dts/broadcom/bcm963138dvt.dts       |  14 +-
 arch/arm/boot/dts/broadcom/bcm963148.dts          |  10 ++
 arch/arm/boot/dts/broadcom/bcm963178.dts          |  10 ++
 arch/arm/boot/dts/broadcom/bcm96756.dts           |  10 ++
 arch/arm/boot/dts/broadcom/bcm96846.dts           |  10 ++
 arch/arm/boot/dts/broadcom/bcm96855.dts           |  10 ++
 arch/arm/boot/dts/broadcom/bcm96878.dts           |  10 ++
 .../broadcom/bcmbca/bcm4906-netgear-r8000p.dts    |   5 +
 .../bcmbca/bcm4906-tplink-archer-c2300-v1.dts     |   5 +
 .../broadcom/bcmbca/bcm4908-asus-gt-ac5300.dts    |   6 +-
 arch/arm64/boot/dts/broadcom/bcmbca/bcm4908.dtsi  |   4 +-
 arch/arm64/boot/dts/broadcom/bcmbca/bcm4912.dtsi  |  14 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm63146.dtsi |  14 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm63158.dtsi |  14 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm6813.dtsi  |  14 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm6856.dtsi  |  14 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm6858.dtsi  |  14 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm94908.dts  |  10 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm94912.dts  |  10 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm963146.dts |  10 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm963158.dts |  10 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm96813.dts  |  10 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm96856.dts  |  10 ++
 arch/arm64/boot/dts/broadcom/bcmbca/bcm96858.dts  |  10 ++
 drivers/mtd/nand/raw/atmel/nand-controller.c      |   2 +-
 drivers/mtd/nand/raw/brcmnand/Makefile            |   2 +-
 drivers/mtd/nand/raw/brcmnand/bcm63138_nand.c     |  99 -------------
 drivers/mtd/nand/raw/brcmnand/bcmbca_nand.c       | 126 +++++++++++++++++
 drivers/mtd/nand/raw/brcmnand/brcmnand.c          | 148 ++++++++++++++++----
 drivers/mtd/nand/raw/brcmnand/brcmnand.h          |   2 +
 drivers/mtd/nand/raw/fsl_elbc_nand.c              |   3 +-
 drivers/mtd/nand/raw/lpc32xx_mlc.c                |   5 +-
 drivers/mtd/nand/raw/meson_nand.c                 |   2 +-
 drivers/mtd/nand/raw/mtk_nand.c                   |   2 +-
 drivers/mtd/nand/raw/nand_base.c                  |  92 ++++++++----
 drivers/mtd/nand/raw/nand_bbt.c                   |   1 -
 drivers/mtd/nand/raw/nand_hynix.c                 |   1 -
 drivers/mtd/nand/raw/stm32_fmc2_nand.c            |  83 +++++++++--
 drivers/mtd/nand/spi/esmt.c                       |   9 +-
 drivers/mtd/nand/spi/winbond.c                    |  12 ++
 include/linux/mtd/spinand.h                       |   2 +-
 54 files changed, 832 insertions(+), 202 deletions(-)
 delete mode 100644 drivers/mtd/nand/raw/brcmnand/bcm63138_nand.c
 create mode 100644 drivers/mtd/nand/raw/brcmnand/bcmbca_nand.c