{
int data_size = dev->data_bytes_per_chunk;
- return dev->param.drv_write_chunk_fn(dev, nand_chunk,
+ return dev->drv.drv_write_chunk_fn(dev, nand_chunk,
data, data_size,
(u8 *) spare, sizeof(*spare));
}
spare_size = sizeof(struct yaffs_spare);
if (dev->param.use_nand_ecc)
- return dev->param.drv_read_chunk_fn(dev, nand_chunk,
+ return dev->drv.drv_read_chunk_fn(dev, nand_chunk,
data, data_size,
(u8 *) spare, spare_size,
ecc_result);
/* Handle the ECC at this level. */
- ret_val = dev->param.drv_read_chunk_fn(dev, nand_chunk,
+ ret_val = dev->drv.drv_read_chunk_fn(dev, nand_chunk,
data, data_size,
(u8 *)spare, spare_size,
NULL);
*seq_number = 0;
- yaffs_rd_chunk_nand(dev, block_no * dev->param.chunks_per_block + 1,
+ /* Look for bad block markers in the first two chunks */
+ yaffs_rd_chunk_nand(dev, block_no * dev->param.chunks_per_block,
NULL, &spare0, &dummy, 0);
yaffs_rd_chunk_nand(dev, block_no * dev->param.chunks_per_block + 1,
NULL, &spare1, &dummy, 0);
{
if(dev->param.is_yaffs2)
return;
- if(!dev->param.write_chunk_tags_fn)
- dev->param.write_chunk_tags_fn = yaffs_tags_compat_wr;
- if(!dev->param.read_chunk_tags_fn)
- dev->param.read_chunk_tags_fn = yaffs_tags_compat_rd;
- if(!dev->param.query_block_fn)
- dev->param.query_block_fn = yaffs_tags_compat_query_block;
- if(!dev->param.mark_bad_fn)
- dev->param.mark_bad_fn = yaffs_tags_compat_mark_bad;
+ if(!dev->tagger.write_chunk_tags_fn)
+ dev->tagger.write_chunk_tags_fn = yaffs_tags_compat_wr;
+ if(!dev->tagger.read_chunk_tags_fn)
+ dev->tagger.read_chunk_tags_fn = yaffs_tags_compat_rd;
+ if(!dev->tagger.query_block_fn)
+ dev->tagger.query_block_fn = yaffs_tags_compat_query_block;
+ if(!dev->tagger.mark_bad_fn)
+ dev->tagger.mark_bad_fn = yaffs_tags_compat_mark_bad;
}