spi: spi-mem: Make the DTR command operation macro more suitable

In order to introduce DTR support in SPI NAND, a number of macros had to
be created in the spi-mem layer. One of them remained unused at this
point, SPI_MEM_DTR_OP_CMD. Being in the process of introducing octal DTR
support now, experience shows that as-is the macro is not useful. In
order to be really useful in octal DTR mode, the command opcode (one
byte) must always be transmitted on the 8 data lines on both the rising
and falling edge of the clock. Align the macro with the real needs by
duplicating the opcode in the buffer and doubling its size.

Reviewed-by: Tudor Ambarus <tudor.ambarus@linaro.org>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Link: https://patch.msgid.link/20260109-winbond-v6-17-rc1-oddr-v2-1-1fff6a2ddb80@bootlin.com
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
Miquel Raynal 2026-01-09 18:17:59 +01:00 committed by Mark Brown
parent 0f61b1860c
commit 0196932f53
No known key found for this signature in database
GPG Key ID: 24D68B725D5487D0

View File

@ -20,10 +20,10 @@
.opcode = __opcode, \
}
#define SPI_MEM_DTR_OP_CMD(__opcode, __buswidth) \
#define SPI_MEM_DTR_OP_RPT_CMD(__opcode, __buswidth) \
{ \
.nbytes = 1, \
.opcode = __opcode, \
.nbytes = 2, \
.opcode = __opcode | __opcode << 8, \
.buswidth = __buswidth, \
.dtr = true, \
}