[PATCH v2 2/4] mtd: spinand: Add continuous read state
Jaime Liao
jaimeliao.tw at gmail.com
Thu Feb 9 04:08:51 PST 2023
Add continuous read state and initialize state to
default false.
Signed-off-by: Jaime Liao <jaimeliao.tw at gmail.com>
---
drivers/mtd/nand/spi/core.c | 8 ++++++++
include/linux/mtd/spinand.h | 2 ++
2 files changed, 10 insertions(+)
diff --git a/drivers/mtd/nand/spi/core.c b/drivers/mtd/nand/spi/core.c
index c13374933372..aa57d5b0a3dc 100644
--- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c
@@ -193,6 +193,11 @@ static int spinand_init_quad_enable(struct spinand_device *spinand)
enable ? CFG_QUAD_ENABLE : 0);
}
+static void spinand_init_continuous_read(struct spinand_device *spinand)
+{
+ spinand->use_continuous_read = false;
+}
+
static int spinand_continuous_read_enable(struct spinand_device *spinand)
{
return spinand_upd_cfg(spinand, CFG_CONT_READ_ENABLE,
@@ -1304,6 +1309,9 @@ static int spinand_init(struct spinand_device *spinand)
goto err_cleanup_ecc_engine;
}
+ /* Init continuous read */
+ spinand_init_continuous_read(spinand);
+
return 0;
err_cleanup_ecc_engine:
diff --git a/include/linux/mtd/spinand.h b/include/linux/mtd/spinand.h
index e98d770173dc..f598a0c5a376 100644
--- a/include/linux/mtd/spinand.h
+++ b/include/linux/mtd/spinand.h
@@ -419,6 +419,7 @@ struct spinand_dirmap {
* because the spi-mem interface explicitly requests that buffers
* passed in spi_mem_op be DMA-able, so we can't based the bufs on
* the stack
+ * @use_continuous_read: record the continuous read status
* @manufacturer: SPI NAND manufacturer information
* @priv: manufacturer private data
*/
@@ -447,6 +448,7 @@ struct spinand_device {
u8 *databuf;
u8 *oobbuf;
u8 *scratchbuf;
+ bool use_continuous_read;
const struct spinand_manufacturer *manufacturer;
void *priv;
};
--
2.34.1
More information about the linux-mtd
mailing list