]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
mtd: rawnand: qcom: Fix read len for onfi param page
authorMd Sadre Alam <quic_mdalam@quicinc.com>
Thu, 10 Apr 2025 10:00:19 +0000 (15:30 +0530)
committerMiquel Raynal <miquel.raynal@bootlin.com>
Tue, 29 Apr 2025 09:05:35 +0000 (11:05 +0200)
The minimum size to fetch the data from device to QPIC buffer
is 512-bytes. If size is less than 512-bytes the data will not be
protected by ECC as per QPIC standard. So while reading onfi parameter
page from NAND device set nandc->buf_count = 512.

Cc: stable@vger.kernel.org
Fixes: 89550beb098e ("mtd: rawnand: qcom: Implement exec_op()")
Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Tested-by: Lakshmi Sowjanya D <quic_laksd@quicinc.com>
Signed-off-by: Md Sadre Alam <quic_mdalam@quicinc.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
drivers/mtd/nand/raw/qcom_nandc.c

index a73bb154353f10eb8863a3f542245945284d6c82..1003cf118c01b8403c9a0f275f7fa1ba2ba597d6 100644 (file)
@@ -1930,7 +1930,7 @@ static int qcom_param_page_type_exec(struct nand_chip *chip,  const struct nand_
                qcom_write_reg_dma(nandc, &nandc->regs->cmd1, NAND_DEV_CMD1, 1, NAND_BAM_NEXT_SGL);
        }
 
-       nandc->buf_count = len;
+       nandc->buf_count = 512;
        memset(nandc->data_buffer, 0xff, nandc->buf_count);
 
        config_nand_single_cw_page_read(chip, false, 0);