[GIT PULL] mtd: NAND changes for 6.14
Miquel Raynal
miquel.raynal at bootlin.com
Thu Jan 23 14:57:04 PST 2025
Hello,
This is the NAND PR for 6.14.
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/nand/for-6.14
for you to fetch changes up to 98b34d52004b5a35db1c1b2c2133f52d67bede0f:
mtd: spinand: skyhigh: Align with recent read from cache variant changes (2025-01-20 09:16:15 +0100)
----------------------------------------------------------------
* 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.
----------------------------------------------------------------
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
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()
Marcus Folkesson (3):
dt-bindings: mtd: davinci: convert to yaml
mtd: nand: davinci: add support for on-die ECC engine type
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 (31):
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
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
Takahiro Kuwano (3):
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
david regan (1):
mtd: rawnand: brcmnand: fix status read of brcmnand_waitfunc
Documentation/devicetree/bindings/mtd/cadence-nand-controller.txt | 53 ----
Documentation/devicetree/bindings/mtd/cdns,hp-nfc.yaml | 75 +++++
Documentation/devicetree/bindings/mtd/davinci-nand.txt | 94 ------
Documentation/devicetree/bindings/mtd/nuvoton,ma35d1-nand.yaml | 95 ++++++
Documentation/devicetree/bindings/mtd/ti,davinci-nand.yaml | 124 ++++++++
MAINTAINERS | 2 +-
drivers/memory/ti-aemif.c | 192 +++++++-----
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 +++++++-
drivers/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/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 +++-
49 files changed, 3718 insertions(+), 1762 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