On Wed, 15 Jun 2016 13:09:51 +0200 Boris Brezillon <boris.brezil...@free-electrons.com> wrote:
> 8 bits opcodes should be followed by a single address cycle. Make the > 2nd address cycle dependent of !nand_opcode_8bits(command). Applied. > > Signed-off-by: Boris Brezillon <boris.brezil...@free-electrons.com> > --- > drivers/mtd/nand/nand_base.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c > index 0b0dc29..c2f83236 100644 > --- a/drivers/mtd/nand/nand_base.c > +++ b/drivers/mtd/nand/nand_base.c > @@ -745,7 +745,10 @@ static void nand_command_lp(struct mtd_info *mtd, > unsigned int command, > column >>= 1; > chip->cmd_ctrl(mtd, column, ctrl); > ctrl &= ~NAND_CTRL_CHANGE; > - chip->cmd_ctrl(mtd, column >> 8, ctrl); > + > + /* Only ouput a single addr cycle for 8bits opcodes. */ > + if (!nand_opcode_8bits(command)) > + chip->cmd_ctrl(mtd, column >> 8, ctrl); > } > if (page_addr != -1) { > chip->cmd_ctrl(mtd, page_addr, ctrl);