summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Curutchet <bastien.curutchet@bootlin.com>2025-01-03 11:13:49 +0300
committerMiquel Raynal <miquel.raynal@bootlin.com>2025-01-08 21:26:48 +0300
commit6df2d9553e168fe32dd49873dd254a63ca913307 (patch)
tree34bc5904682bea712a1c054a410340bdcd17344d
parentb9371866799d67a80be0ea9e01bd41987db22f26 (diff)
downloadlinux-6df2d9553e168fe32dd49873dd254a63ca913307.tar.xz
mtd: rawnand: davinci: Reduce polling interval in NAND_OP_WAITRDY_INSTR
For each NAND_OP_WAITRDY_INSTR operation, the NANDFSR register is polled only once every 100 us to check for the EMA_WAIT pin. This isn't frequent enough and causes delays in NAND accesses. Set the polling interval to 5 us. It increases the page read speed reported by flash_speed by ~30% (~10% on page writes). Signed-off-by: Bastien Curutchet <bastien.curutchet@bootlin.com> Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
-rw-r--r--drivers/mtd/nand/raw/davinci_nand.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mtd/nand/raw/davinci_nand.c b/drivers/mtd/nand/raw/davinci_nand.c
index 94fdc658ed14..ee87ca669c92 100644
--- a/drivers/mtd/nand/raw/davinci_nand.c
+++ b/drivers/mtd/nand/raw/davinci_nand.c
@@ -736,7 +736,7 @@ static int davinci_nand_exec_instr(struct davinci_nand_info *info,
case NAND_OP_WAITRDY_INSTR:
timeout_us = instr->ctx.waitrdy.timeout_ms * 1000;
ret = readl_relaxed_poll_timeout(info->base + NANDFSR_OFFSET,
- status, status & BIT(0), 100,
+ status, status & BIT(0), 5,
timeout_us);
if (ret)
return ret;