diff options
-rw-r--r-- | drivers/mtd/nand/fsl_elbc_nand.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/drivers/mtd/nand/fsl_elbc_nand.c b/drivers/mtd/nand/fsl_elbc_nand.c index 378b7aa63812..b9f9f22cd860 100644 --- a/drivers/mtd/nand/fsl_elbc_nand.c +++ b/drivers/mtd/nand/fsl_elbc_nand.c | |||
@@ -346,19 +346,20 @@ static void fsl_elbc_cmdfunc(struct mtd_info *mtd, unsigned int command, | |||
346 | ctrl->column = column; | 346 | ctrl->column = column; |
347 | ctrl->oob = 0; | 347 | ctrl->oob = 0; |
348 | 348 | ||
349 | fcr = (NAND_CMD_PAGEPROG << FCR_CMD1_SHIFT) | | ||
350 | (NAND_CMD_SEQIN << FCR_CMD2_SHIFT); | ||
351 | |||
352 | if (priv->page_size) { | 349 | if (priv->page_size) { |
350 | fcr = (NAND_CMD_SEQIN << FCR_CMD0_SHIFT) | | ||
351 | (NAND_CMD_PAGEPROG << FCR_CMD1_SHIFT); | ||
352 | |||
353 | out_be32(&lbc->fir, | 353 | out_be32(&lbc->fir, |
354 | (FIR_OP_CW0 << FIR_OP0_SHIFT) | | 354 | (FIR_OP_CW0 << FIR_OP0_SHIFT) | |
355 | (FIR_OP_CA << FIR_OP1_SHIFT) | | 355 | (FIR_OP_CA << FIR_OP1_SHIFT) | |
356 | (FIR_OP_PA << FIR_OP2_SHIFT) | | 356 | (FIR_OP_PA << FIR_OP2_SHIFT) | |
357 | (FIR_OP_WB << FIR_OP3_SHIFT) | | 357 | (FIR_OP_WB << FIR_OP3_SHIFT) | |
358 | (FIR_OP_CW1 << FIR_OP4_SHIFT)); | 358 | (FIR_OP_CW1 << FIR_OP4_SHIFT)); |
359 | |||
360 | fcr |= NAND_CMD_READ0 << FCR_CMD0_SHIFT; | ||
361 | } else { | 359 | } else { |
360 | fcr = (NAND_CMD_PAGEPROG << FCR_CMD1_SHIFT) | | ||
361 | (NAND_CMD_SEQIN << FCR_CMD2_SHIFT); | ||
362 | |||
362 | out_be32(&lbc->fir, | 363 | out_be32(&lbc->fir, |
363 | (FIR_OP_CW0 << FIR_OP0_SHIFT) | | 364 | (FIR_OP_CW0 << FIR_OP0_SHIFT) | |
364 | (FIR_OP_CM2 << FIR_OP1_SHIFT) | | 365 | (FIR_OP_CM2 << FIR_OP1_SHIFT) | |