summaryrefslogtreecommitdiff
path: root/fs/direct-io.c
diff options
context:
space:
mode:
authorBoris Brezillon <boris.brezillon@bootlin.com>2018-05-09 10:13:58 +0300
committerBoris Brezillon <boris.brezillon@bootlin.com>2018-05-14 15:46:20 +0300
commit90d617633368ab97a2c7571c6e66dad54f39228d (patch)
treebde32fbbe9bb2b937403158b9bad282396078fd3 /fs/direct-io.c
parentea739a287f4f16d6250bea779a1026ead79695f2 (diff)
downloadlinux-90d617633368ab97a2c7571c6e66dad54f39228d.tar.xz
mtd: rawnand: marvell: Fix read logic for layouts with ->nchunks > 2
The code is doing monolithic reads for all chunks except the last one which is wrong since a monolithic read will issue the READ0+ADDRS+READ_START sequence. It not only takes longer because it forces the NAND chip to reload the page content into its internal cache, but by doing that we also reset the column pointer to 0, which means we'll always read the first chunk instead of moving to the next one. Rework the code to do a monolithic read only for the first chunk, then switch to naked reads for all intermediate chunks and finally issue a last naked read for the last chunk. Fixes: 02f26ecf8c77 mtd: nand: add reworked Marvell NAND controller driver Cc: stable@vger.kernel.org Reported-by: Chris Packham <chris.packham@alliedtelesis.co.nz> Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com> Tested-by: Chris Packham <chris.packham@alliedtelesis.co.nz> Acked-by: Miquel Raynal <miquel.raynal@bootlin.com>
Diffstat (limited to 'fs/direct-io.c')
0 files changed, 0 insertions, 0 deletions