]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
spi: cadence-qspi: Make sure we filter out unsupported ops
authorMiquel Raynal (Schneider Electric) <miquel.raynal@bootlin.com>
Thu, 22 Jan 2026 15:13:32 +0000 (16:13 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 28 Jan 2026 20:41:23 +0000 (20:41 +0000)
The Cadence driver does not support anything else than repeating the
command opcode twice while in octal DTR mode. Make this clear by
checking for this in the ->supports_op() hook.

Reviewed-by: Pratyush Yadav <pratyush@kernel.org>
Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
Signed-off-by: Miquel Raynal (Schneider Electric) <miquel.raynal@bootlin.com>
Tested-by: Santhosh Kumar K <s-k6@ti.com>
Link: https://patch.msgid.link/20260122-schneider-6-19-rc1-qspi-v4-7-f9c21419a3e6@bootlin.com
Signed-off-by: Mark Brown <broonie@kernel.org>
drivers/spi/spi-cadence-quadspi.c

index a8437d9c37a79ed588ddd4900328acabf16e1f10..38518475858da177ee4cbc0984a5c0d859cfec65 100644 (file)
@@ -1531,6 +1531,10 @@ static bool cqspi_supports_mem_op(struct spi_mem *mem,
                        return false;
                if (op->data.nbytes && op->data.buswidth != 8)
                        return false;
+
+               /* A single opcode is supported, it will be repeated */
+               if ((op->cmd.opcode >> 8) != (op->cmd.opcode & 0xFF))
+                       return false;
        } else if (!all_false) {
                /* Mixed DTR modes are not supported. */
                return false;