[GIT PULL] mtd: Changes for 6.14

Miquel Raynal miquel.raynal at bootlin.com
Fri Jan 24 02:37:03 PST 2025


Hello,

This is the MTD PR for 6.14. The branch contains spi and memory bits, as we
had to share immutable branches for the Davinci improvements and the SPI
NAND DTR support.

Thanks,
Miquèl

The following changes since commit 9d89551994a430b50c4fffcb1e617a057fa76e20:

  Linux 6.13-rc6 (2025-01-05 14:13:40 -0800)

are available in the Git repository at:

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

for you to fetch changes up to 0ddeb4fe9d3b501c2c6a3522325d88ee166e02ea:

  Merge tag 'nand/for-6.14' into mtd/next (2025-01-24 10:52:35 +0100)

----------------------------------------------------------------
* MTD changes

There's been no major core change, and a bunch of driver related
improvements, amongst them the conversion to of_property_present() for
non-boolean properties, the addition of the support for Fujitsu
MB85RS128TY FRAM, a couple of improvements to the phram driver and the
usual load of misc changes.

* Raw NAND changes

A new controller driver, from Nuvoton, has been merged.

Bastien Curutchet has contributed a series improving the Davinci
controller driver, both on the organization of the code, but also on the
performance side. The binding has also been converted to yaml, received
a new OOB layout and now supports on-die ECC engines.

The Qualcomm controller driver has been deeply cleaned to extract some
parts of the code into a shared file with the Qualcomm SPI memory
controller.

Aside from these main changes, the Cadence binding has been converted to
yaml, the brcmnand controller driver has received a small fix, otherwise
some more minor changes have also made their way in.

* SPI NAND changes

The SPI NAND subsystem has seen a great improvement, with the advent of
DTR operations (DDR operations, which may be extended to the address
cycles). The first vendor driver to benefit from these improvements is
the Winbond driver.

A new manufacturer driver is added SkyHigh, with a new constraint for
the core, it is impossible to disable the on-die ECC engine.

A Foresee device is also now supported.

* SPI NOR changes

Several flash entries have been added: Atmel AT25SF321, Spansion
S28HL256T and S28HL02GT.

Support for vcc-supply regulators and their DT bindings has been added.

The mx25u25635f entry has been dropped. The flash shares its ID with
mx25u25645g and both parts have an SFDP table. Removing their entry lets
them be driven by the generic SFDP-based driver.

----------------------------------------------------------------
Bastien Curutchet (10):
      memory: ti-aemif: Store timings parameter in number of cycles - 1
      memory: ti-aemif: Remove unnecessary local variables
      memory: ti-aemif: Wrap CS timings into a struct
      memory: ti-aemif: Create aemif_check_cs_timings()
      memory: ti-aemif: Create aemif_set_cs_timings()
      memory: ti-aemif: Export aemif_*_cs_timings()
      mtd: rawnand: davinci: Always depends on TI_AEMIF
      mtd: rawnand: davinci: Add clock resource
      mtd: rawnand: davinci: Implement setup_interface() operation
      mtd: rawnand: davinci: Reduce polling interval in NAND_OP_WAITRDY_INSTR

Bohdan Chubuk (1):
      mtd: spinand: add support for FORESEE F35SQA001G

Colin Ian King (1):
      mtd: phram: only call platform_driver_unregister if phram_setup fails

David Jander (2):
      mtd: mchp48l640: make WEL behaviour configurable
      mtd: mchp48l640: add support for Fujitsu MB85RS128TY FRAM

Hui-Ping Chen (2):
      dt-bindings: mtd: nuvoton,ma35d1-nand: add new bindings
      mtd: rawnand: nuvoton: add new driver for the Nuvoton MA35 SoC

Ivan Stepchenko (1):
      mtd: onenand: Fix uninitialized retlen in do_otp_read()

Joe Hattori (1):
      mtd: hyperbus: hbmc-am654: fix an OF node reference leak

Jonas Rebmann (1):
      dt-bindings: mtd: mchp48l640 add mb85rs128ty compatible

Marcus Folkesson (4):
      dt-bindings: mtd: davinci: convert to yaml
      mtd: nand: davinci: add support for on-die ECC engine type
      mtd: spi-nor: atmel: add at25sf321 entry
      mtd: rawnand: davinci: add ROM supported OOB layout

Md Sadre Alam (5):
      mtd: rawnand: qcom: cleanup qcom_nandc driver
      mtd: rawnand: qcom: Add qcom prefix to common api
      mtd: nand: Add qpic_common API file
      mtd: rawnand: qcom: use FIELD_PREP and GENMASK
      mtd: rawnand: qcom: Fix build issue on x86 architecture

Miquel Raynal (33):
      Merge tag 'memory-controller-drv-ti-6.14' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux-mem-ctrl into nand/next
      Merge tag 'mtd/qcom-reorg-for-spi-6.14' into nand/next
      spi: spi-mem: Extend spi-mem operations with a per-operation maximum frequency
      spi: spi-mem: Add a new controller capability
      spi: amd: Support per spi-mem operation frequency switches
      spi: amd: Drop redundant check
      spi: amlogic-spifc-a1: Support per spi-mem operation frequency switches
      spi: cadence-qspi: Support per spi-mem operation frequency switches
      spi: dw: Support per spi-mem operation frequency switches
      spi: fsl-qspi: Support per spi-mem operation frequency switches
      spi: microchip-core-qspi: Support per spi-mem operation frequency switches
      spi: mt65xx: Support per spi-mem operation frequency switches
      spi: mxic: Support per spi-mem operation frequency switches
      spi: nxp-fspi: Support per spi-mem operation frequency switches
      spi: rockchip-sfc: Support per spi-mem operation frequency switches
      spi: spi-sn-f-ospi: Support per spi-mem operation frequency switches
      spi: spi-ti-qspi: Support per spi-mem operation frequency switches
      spi: zynq-qspi: Support per spi-mem operation frequency switches
      spi: zynqmp-gqspi: Support per spi-mem operation frequency switches
      spi: spi-mem: Reorder spi-mem macro assignments
      spi: spi-mem: Create macros for DTR operation
      spi: spi-mem: Estimate the time taken by operations
      Merge tag 'spi-mem-dtr-2' into nand/next
      mtd: spinand: Create distinct fast and slow read from cache variants
      mtd: spinand: Add an optional frequency to read from cache macros
      mtd: spinand: Enhance the logic when picking a variant
      mtd: spinand: Add support for read DTR operations
      mtd: spinand: winbond: Update the *JW chip definitions
      mtd: spinand: winbond: Add comment about naming
      mtd: spinand: winbond: Add support for DTR operations
      mtd: spinand: skyhigh: Align with recent read from cache variant changes
      Merge tag 'spi-nor/for-6.14' into mtd/next
      Merge tag 'nand/for-6.14' into mtd/next

Nathan Chancellor (1):
      spi: amd: Fix -Wuninitialized in amd_spi_exec_mem_op()

Niravkumar L Rabara (1):
      dt-bindings: mtd: cadence: convert cadence-nand-controller.txt to yaml

Parth Pancholi (1):
      mtd: spi-nor: macronix: remove mx25u25635f from parts list to enable SFDP

Peng Fan (2):
      dt-bindings: mtd: jedec,spi-nor: add optional vcc-supply
      mtd: spi-nor: support vcc-supply regulator

Raphael Gallais-Pou (1):
      mtd: st_spi_fsm: Switch from CONFIG_PM_SLEEP guards to pm_sleep_ptr()

Rob Herring (Arm) (1):
      mtd: hyperbus: Use of_property_present() for non-boolean properties

Takahiro Kuwano (5):
      mtd: spinand: Remove write_enable_op() in markbad()
      mtd: spinand: Introduce a way to avoid raw access
      mtd: spinand: Add support for SkyHigh S35ML-3 family
      mtd: spi-nor: spansion: Add support for S28HL256T
      mtd: spi-nor: spansion: Add support for S28HL02GT

Takashi Iwai (1):
      mtd: phram: Add the kernel lock down check

Thomas Weißschuh (1):
      mtd: spi-nor: sysfs: constify 'struct bin_attribute'

Tudor Ambarus (3):
      mtd: spi-nor: macronix: use nor->addr_nbytes
      mtd: spi-nor: use local variable for struct device
      mtd: spi-nor: extend description of size member of struct flash_info

david regan (1):
      mtd: rawnand: brcmnand: fix status read of brcmnand_waitfunc

 .../bindings/mtd/cadence-nand-controller.txt       |   53 -
 .../devicetree/bindings/mtd/cdns,hp-nfc.yaml       |   75 +
 .../devicetree/bindings/mtd/davinci-nand.txt       |   94 --
 .../devicetree/bindings/mtd/jedec,spi-nor.yaml     |    4 +
 .../bindings/mtd/microchip,mchp48l640.yaml         |    5 +-
 .../bindings/mtd/nuvoton,ma35d1-nand.yaml          |   95 ++
 .../devicetree/bindings/mtd/ti,davinci-nand.yaml   |  124 ++
 MAINTAINERS                                        |    2 +-
 drivers/memory/ti-aemif.c                          |  192 ++-
 drivers/mtd/devices/mchp48l640.c                   |   28 +-
 drivers/mtd/devices/phram.c                        |   13 +-
 drivers/mtd/devices/st_spi_fsm.c                   |    6 +-
 drivers/mtd/hyperbus/hbmc-am654.c                  |   21 +-
 drivers/mtd/nand/Makefile                          |    2 +-
 drivers/mtd/nand/onenand/onenand_base.c            |    1 +
 drivers/mtd/nand/qpic_common.c                     |  759 +++++++++
 drivers/mtd/nand/raw/Kconfig                       |   12 +-
 drivers/mtd/nand/raw/Makefile                      |    1 +
 drivers/mtd/nand/raw/brcmnand/brcmnand.c           |    5 +
 drivers/mtd/nand/raw/davinci_nand.c                |  137 +-
 .../mtd/nand/raw/nuvoton-ma35d1-nand-controller.c  | 1029 ++++++++++++
 drivers/mtd/nand/raw/qcom_nandc.c                  | 1769 ++++----------------
 drivers/mtd/nand/spi/Makefile                      |    2 +-
 drivers/mtd/nand/spi/alliancememory.c              |    4 +-
 drivers/mtd/nand/spi/ato.c                         |    4 +-
 drivers/mtd/nand/spi/core.c                        |   40 +-
 drivers/mtd/nand/spi/esmt.c                        |    4 +-
 drivers/mtd/nand/spi/foresee.c                     |   14 +-
 drivers/mtd/nand/spi/gigadevice.c                  |   16 +-
 drivers/mtd/nand/spi/macronix.c                    |    4 +-
 drivers/mtd/nand/spi/micron.c                      |    8 +-
 drivers/mtd/nand/spi/paragon.c                     |    4 +-
 drivers/mtd/nand/spi/skyhigh.c                     |  147 ++
 drivers/mtd/nand/spi/toshiba.c                     |    4 +-
 drivers/mtd/nand/spi/winbond.c                     |   27 +-
 drivers/mtd/nand/spi/xtx.c                         |    4 +-
 drivers/mtd/spi-nor/atmel.c                        |    4 +
 drivers/mtd/spi-nor/core.c                         |   19 +-
 drivers/mtd/spi-nor/core.h                         |    6 +-
 drivers/mtd/spi-nor/macronix.c                     |    9 +-
 drivers/mtd/spi-nor/spansion.c                     |   10 +
 drivers/mtd/spi-nor/sysfs.c                        |    8 +-
 drivers/spi/spi-amd.c                              |   26 +-
 drivers/spi/spi-amlogic-spifc-a1.c                 |    7 +-
 drivers/spi/spi-cadence-quadspi.c                  |    3 +-
 drivers/spi/spi-dw-core.c                          |   10 +-
 drivers/spi/spi-fsl-qspi.c                         |   12 +-
 drivers/spi/spi-mem.c                              |   64 +
 drivers/spi/spi-microchip-core-qspi.c              |   26 +-
 drivers/spi/spi-mt65xx.c                           |    7 +-
 drivers/spi/spi-mxic.c                             |    3 +-
 drivers/spi/spi-nxp-fspi.c                         |   12 +-
 drivers/spi/spi-rockchip-sfc.c                     |   11 +-
 drivers/spi/spi-sn-f-ospi.c                        |    8 +-
 drivers/spi/spi-ti-qspi.c                          |    7 +-
 drivers/spi/spi-zynq-qspi.c                        |   13 +-
 drivers/spi/spi-zynqmp-gqspi.c                     |   13 +-
 include/linux/memory/ti-aemif.h                    |   32 +
 include/linux/mtd/nand-qpic-common.h               |  478 ++++++
 include/linux/mtd/spinand.h                        |   60 +-
 include/linux/spi/spi-mem.h                        |   56 +-
 61 files changed, 3812 insertions(+), 1801 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/mtd/cadence-nand-controller.txt
 create mode 100644 Documentation/devicetree/bindings/mtd/cdns,hp-nfc.yaml
 delete mode 100644 Documentation/devicetree/bindings/mtd/davinci-nand.txt
 create mode 100644 Documentation/devicetree/bindings/mtd/nuvoton,ma35d1-nand.yaml
 create mode 100644 Documentation/devicetree/bindings/mtd/ti,davinci-nand.yaml
 create mode 100644 drivers/mtd/nand/qpic_common.c
 create mode 100644 drivers/mtd/nand/raw/nuvoton-ma35d1-nand-controller.c
 create mode 100644 drivers/mtd/nand/spi/skyhigh.c
 create mode 100644 include/linux/memory/ti-aemif.h
 create mode 100644 include/linux/mtd/nand-qpic-common.h



More information about the linux-mtd mailing list