Yaffs Clean ups
[yaffs2.git] / yaffs_nand.c
index 9afd5ec8e1c6cdf2233fc81264a69cf79cae4d28..a8dae40bd37804c4d396e189b229969723868c92 100644 (file)
@@ -42,7 +42,7 @@ int yaffs_rd_chunk_tags_nand(struct yaffs_dev *dev, int nand_chunk,
                bi = yaffs_get_block_info(dev,
                                          nand_chunk /
                                          dev->param.chunks_per_block);
-               yaffs_handle_chunk_error(dev, bi);
+               yaffs_handle_chunk_error(dev, bi, tags->ecc_result);
        }
        return result;
 }
@@ -80,6 +80,10 @@ int yaffs_mark_bad(struct yaffs_dev *dev, int block_no)
 {
        block_no -= dev->block_offset;
        dev->n_bad_markings++;
+
+       if (dev->param.disable_bad_block_marking)
+               return YAFFS_OK;
+
        return dev->tagger.mark_bad_fn(dev, block_no);
 }