提交 593f3976 编写于 作者: B Baruch Siach 提交者: Tom Rini

mtd: nand: pxa3xx: fix raw read when last_chunk_size == 0

Commit 6293b036 ("mtd: nand: pxa3xx: add raw read support") added the
local data_len variable in handle_data_pio() to track read size, but
forgot to update the condition of drain_fifo() call. That happens to
work when the layout last_chunk_size != 0. But when last_chunk_size ==
0, drain_fifo() is not called to read the last chunk, which leads to
"Wait timeout!!!" error. Fix this.

Fixes: 6293b036 ("mtd: nand: pxa3xx: add raw read support")
Cc: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: NBaruch Siach <baruch@tkos.co.il>
上级 79926e4f
......@@ -639,7 +639,7 @@ static void handle_data_pio(struct pxa3xx_nand_info *info)
DIV_ROUND_UP(info->step_spare_size, 4));
break;
case STATE_PIO_READING:
if (info->step_chunk_size)
if (data_len)
drain_fifo(info,
info->data_buff + info->data_buff_pos,
DIV_ROUND_UP(data_len, 4));
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册