[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20251031-winbond-v6-17-rc1-oddr-v1-0-be42de23ebf1@bootlin.com>
Date: Fri, 31 Oct 2025 18:26:44 +0100
From: Miquel Raynal <miquel.raynal@...tlin.com>
To: Mark Brown <broonie@...nel.org>, Richard Weinberger <richard@....at>,
Vignesh Raghavendra <vigneshr@...com>
Cc: Tudor Ambarus <tudor.ambarus@...aro.org>,
Pratyush Yadav <pratyush@...nel.org>,
Thomas Petazzoni <thomas.petazzoni@...tlin.com>,
Steam Lin <STLin2@...bond.com>, Santhosh Kumar K <s-k6@...com>,
linux-spi@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-mtd@...ts.infradead.org, Miquel Raynal <miquel.raynal@...tlin.com>
Subject: [PATCH 00/28] mtd: spinand: Octal DTR support
Hello,
This series adds support for 8D-8D-8D in SPI NAND, which can already be
leveraged without any SPI changes as controllers already have this
support for some SPI NOR devices.
The series is a bit long because many preparation patches were needed
in order to have a clean 8D-8D-8D introduction (one of the last
patches), but I believe the split is worth it.
Among the few spi-mem patches, they are needed for building the SPI NAND
changes (especially the ODTR introduction at the end) and therefore an
immutable tag will be needed for merging in the MTD tree (unless all the
series goes through MTD directly ofc).
There is a benchmark in the last Winbond patch, we get +55% read speed
and +26% write speed with this series, at 25MHz!
1S-8S-8S:
# flash_speed /dev/mtd0 -c1 -d
eraseblock write speed is 7529 KiB/s
eraseblock read speed is 15058 KiB/s
8D-8D-8D:
# flash_speed /dev/mtd0 -c1 -d
eraseblock write speed is 9481 KiB/s
eraseblock read speed is 23272 KiB/s
I am excited to see this finally upstream! Next step will be to see TI's
PHY tuning series from Santhosh in conjunction with this one to operate at
maximum speed.
Thanks!
Miquèl
Signed-off-by: Miquel Raynal <miquel.raynal@...tlin.com>
---
Miquel Raynal (28):
spi: spi-mem: Make the DTR command operation macro more suitable
spi: spi-mem: Create a repeated address operation
spi: spi-mem: Limit octal DTR constraints to octal DTR situations
mtd: spinand: Fix kernel doc
mtd: spinand: Add missing check
mtd: spinand: Remove stale definitions
mtd: spinand: Use standard return values
mtd: spinand: Decouple write enable and write disable operations
mtd: spinand: Create an array of operation templates
mtd: spinand: Make use of the operation templates through SPINAND_OP()
mtd: spinand: Convert vendor drivers to SPINAND_OP()
mtd: spinand: macronix: Convert vendor specific operation to SPINAND_OP()
mtd: spinand: winbond: Convert W25N specific operation to SPINAND_OP()
mtd: spinand: winbond: Convert W35N specific operation to SPINAND_OP()
mtd: spinand: List vendor specific operations and make sure they are supported
mtd: spinand: macronix: Register vendor specific operation
mtd: spinand: winbond: Register W25N vendor specific operation
mtd: spinand: winbond: Register W35N vendor specific operation
mtd: spinand: winbond: Fix style
mtd: spinand: winbond: Rename IO_MODE register macro
mtd: spinand: winbond: Configure the IO mode after the dummy cycles
mtd: spinand: Gather all the bus interface steps in one single function
mtd: spinand: Add support for setting a bus interface
mtd: spinand: Propagate the bus interface across core helpers
mtd: spinand: Give the bus interface to the configuration helper
mtd: spinand: Warn if using SSDR-only vendor commands in a non SSDR mode
mtd: spinand: Add octal DTR support
mtd: spinand: winbond: W35N octal DTR support
drivers/mtd/nand/spi/core.c | 297 +++++++++++++++++++++++++++++++-------
drivers/mtd/nand/spi/esmt.c | 4 +-
drivers/mtd/nand/spi/gigadevice.c | 8 +-
drivers/mtd/nand/spi/macronix.c | 49 ++++++-
drivers/mtd/nand/spi/micron.c | 8 +-
drivers/mtd/nand/spi/toshiba.c | 3 +-
drivers/mtd/nand/spi/winbond.c | 129 ++++++++++++-----
drivers/spi/spi-mem.c | 15 +-
include/linux/mtd/spinand.h | 246 ++++++++++++++++++++++++++++---
include/linux/spi/spi-mem.h | 14 +-
10 files changed, 646 insertions(+), 127 deletions(-)
---
base-commit: 604a0841a26de188280b47fb7e78dcdaa966a09e
change-id: 20251031-winbond-v6-17-rc1-oddr-385f04684ad9
Best regards,
--
Miquel Raynal <miquel.raynal@...tlin.com>
Powered by blists - more mailing lists