X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=yaffs_guts.h;h=397aae8cc9c838abcbceca3d9008d94212338643;hb=bdb04f601934f804c982cbd1ae6add208c96732b;hp=77bc7e9968c386612d951f818f9e1e627f69c386;hpb=53892fe9e3770882fd8f53f1a8a392d875175b4b;p=yaffs2.git diff --git a/yaffs_guts.h b/yaffs_guts.h index 77bc7e9..397aae8 100644 --- a/yaffs_guts.h +++ b/yaffs_guts.h @@ -163,6 +163,7 @@ union yaffs_tags_union { enum yaffs_ecc_result { YAFFS_ECC_RESULT_UNKNOWN, YAFFS_ECC_RESULT_NO_ERROR, + YAFFS_ECC_RESULT_REFRESH, YAFFS_ECC_RESULT_FIXED, YAFFS_ECC_RESULT_UNFIXED }; @@ -876,10 +877,13 @@ struct yaffs_obj *yaffs_create_file(struct yaffs_obj *parent, const YCHAR *name, u32 mode, u32 uid, u32 gid); -int yaffs_flush_file(struct yaffs_obj *obj, int update_time, int data_sync); +int yaffs_flush_file(struct yaffs_obj *in, + int update_time, + int data_sync, + int discard_cache); /* Flushing and checkpointing */ -void yaffs_flush_whole_cache(struct yaffs_dev *dev); +void yaffs_flush_whole_cache(struct yaffs_dev *dev, int discard); int yaffs_checkpoint_save(struct yaffs_dev *dev); int yaffs_checkpoint_restore(struct yaffs_dev *dev); @@ -937,7 +941,8 @@ void yaffs_chunk_del(struct yaffs_dev *dev, int chunk_id, int mark_flash, int lyn); int yaffs_check_ff(u8 *buffer, int n_bytes); void yaffs_handle_chunk_error(struct yaffs_dev *dev, - struct yaffs_block_info *bi); + struct yaffs_block_info *bi, + enum yaffs_ecc_result err_type); u8 *yaffs_get_temp_buffer(struct yaffs_dev *dev); void yaffs_release_temp_buffer(struct yaffs_dev *dev, u8 *buffer);