From 5dce9cd65806e71906078fdec8e28df8ae4e152f Mon Sep 17 00:00:00 2001 From: Charles Manning Date: Fri, 18 Jan 2013 15:46:43 +1300 Subject: [PATCH] yaffs linux: Fix chunk alignment for inband tags Signed-off-by: Charles Manning --- yaffs_mtdif_multi.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yaffs_mtdif_multi.c b/yaffs_mtdif_multi.c index bd63855..265dd78 100644 --- a/yaffs_mtdif_multi.c +++ b/yaffs_mtdif_multi.c @@ -105,7 +105,7 @@ static int yaffs_mtd_read(struct yaffs_dev *dev, int nand_chunk, struct mtd_oob_ops ops; int retval; - addr = ((loff_t) nand_chunk) * dev->data_bytes_per_chunk; + addr = ((loff_t) nand_chunk) * dev->param.total_bytes_per_chunk; memset(&ops, 0, sizeof(ops)); ops.mode = MTD_OPS_AUTO_OOB; ops.len = (data) ? data_len : 0; @@ -186,7 +186,7 @@ static int yaffs_mtd_erase(struct yaffs_dev *dev, int block_no) static int yaffs_mtd_mark_bad(struct yaffs_dev *dev, int block_no) { struct mtd_info *mtd = yaffs_dev_to_mtd(dev); - int blocksize = dev->param.chunks_per_block * dev->data_bytes_per_chunk; + int blocksize = dev->param.chunks_per_block * dev->param.total_bytes_per_chunk; int retval; yaffs_trace(YAFFS_TRACE_BAD_BLOCKS, "marking block %d bad", block_no); @@ -198,7 +198,7 @@ static int yaffs_mtd_mark_bad(struct yaffs_dev *dev, int block_no) static int yaffs_mtd_check_bad(struct yaffs_dev *dev, int block_no) { struct mtd_info *mtd = yaffs_dev_to_mtd(dev); - int blocksize = dev->param.chunks_per_block * dev->data_bytes_per_chunk; + int blocksize = dev->param.chunks_per_block * dev->param.total_bytes_per_chunk; int retval; yaffs_trace(YAFFS_TRACE_BAD_BLOCKS, "checking block %d bad", block_no); -- 2.30.2