X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Fbasic-test%2Fyaffs_fileem2k.c;h=52f1e1114ffcb8f67e7a600022cf508a6fc0b574;hp=367003e48df7e60cc2a76100bbd16bad891e1231;hb=137f935f6d622bffdef2fece0c5194e85f5174e9;hpb=470ba34cc1d593fca7cd98bb9a385a100f7cb3ac diff --git a/direct/basic-test/yaffs_fileem2k.c b/direct/basic-test/yaffs_fileem2k.c index 367003e..52f1e11 100644 --- a/direct/basic-test/yaffs_fileem2k.c +++ b/direct/basic-test/yaffs_fileem2k.c @@ -24,23 +24,23 @@ const char *yaffs_flashif2_c_version = "$Id: yaffs_fileem2k.c,v 1.24 2010-02-18 #include "yaffs_flashif2.h" #include "yaffs_guts.h" -#include "devextras.h" +#include "yaffs_fileem2k.h" +#include "yaffs_packedtags2.h" +#include "yaffs_tagsvalidity.h" + #include #include #include #include -#include "yaffs_fileem2k.h" -#include "yaffs_packedtags2.h" - #define REPORT_ERROR 0 typedef struct { - __u8 data[PAGE_SIZE]; // Data + spare + u8 data[PAGE_SIZE]; // Data + spare } yflash_Page; typedef struct @@ -66,7 +66,6 @@ int yaffs_test_partial_write = 0; extern int random_seed; extern int simulate_power_failure; -static int initialised = 0; static int remaining_ops; static int nops_so_far; @@ -93,7 +92,7 @@ static void yflash2_MaybePowerFail(unsigned int nand_chunk, int failPoint) -static __u8 localBuffer[PAGE_SIZE]; +static u8 localBuffer[PAGE_SIZE]; static char *NToName(char *buf,int n) { @@ -171,7 +170,7 @@ int yflash2_GetNumberOfBlocks(void) return filedisk.nBlocks; } -int yflash2_WriteChunkWithTagsToNAND(yaffs_dev_t *dev,int nand_chunk,const __u8 *data, const yaffs_ext_tags *tags) +int yflash2_WriteChunkWithTagsToNAND(struct yaffs_dev *dev,int nand_chunk,const u8 *data, const struct yaffs_ext_tags *tags) { int written; int pos; @@ -180,15 +179,15 @@ int yflash2_WriteChunkWithTagsToNAND(yaffs_dev_t *dev,int nand_chunk,const __u8 int nRead; int error; - T(YAFFS_TRACE_MTD,(TSTR("write chunk %d data %x tags %x" TENDSTR),nand_chunk,(unsigned)data, (unsigned)tags)); + yaffs_trace(YAFFS_TRACE_MTD, "write chunk %d data %p tags %p",nand_chunk, data, tags); CheckInit(); if(dev->param.inband_tags){ - yaffs_packed_tags2_tags_only * pt2tp; - pt2tp = (yaffs_packed_tags2_tags_only *)&data[dev->data_bytes_per_chunk]; + struct yaffs_packed_tags2_tags_only * pt2tp; + pt2tp = (struct yaffs_packed_tags2_tags_only *)&data[dev->data_bytes_per_chunk]; yaffs_pack_tags2_tags_only(pt2tp,tags); pos = (nand_chunk % (PAGES_PER_BLOCK * BLOCKS_PER_HANDLE)) * PAGE_SIZE; @@ -255,14 +254,14 @@ int yflash2_WriteChunkWithTagsToNAND(yaffs_dev_t *dev,int nand_chunk,const __u8 if( 0 && dev->param.is_yaffs2) { - written = write(h,tags,sizeof(yaffs_ext_tags)); - if(written != sizeof(yaffs_ext_tags)) return YAFFS_FAIL; + written = write(h,tags,sizeof(struct yaffs_ext_tags)); + if(written != sizeof(struct yaffs_ext_tags)) return YAFFS_FAIL; } else { - yaffs_packed_tags2 pt; + struct yaffs_packed_tags2 pt; yaffs_pack_tags2(&pt,tags, !dev->param.no_tags_ecc); - __u8 * ptab = (__u8 *)&pt; + u8 * ptab = (u8 *)&pt; nRead = read(h,localBuffer,sizeof(pt)); for(i = error = 0; REPORT_ERROR && i < sizeof(pt) && !error; i++){ @@ -333,14 +332,14 @@ int yflash2_WriteChunkWithTagsToNAND(yaffs_dev_t *dev,int nand_chunk,const __u8 if( 0 && dev->param.is_yaffs2) { - written = write(h,tags,sizeof(yaffs_ext_tags)); - if(written != sizeof(yaffs_ext_tags)) return YAFFS_FAIL; + written = write(h,tags,sizeof(struct yaffs_ext_tags)); + if(written != sizeof(struct yaffs_ext_tags)) return YAFFS_FAIL; } else { - yaffs_packed_tags2 pt; + struct yaffs_packed_tags2 pt; yaffs_pack_tags2(&pt,tags,!dev->param.no_tags_ecc); - __u8 * ptab = (__u8 *)&pt; + u8 * ptab = (u8 *)&pt; nRead = read(h,localBuffer,sizeof(pt)); for(i = error = 0; REPORT_ERROR && i < sizeof(pt) && !error; i++){ @@ -371,7 +370,7 @@ int yflash2_WriteChunkWithTagsToNAND(yaffs_dev_t *dev,int nand_chunk,const __u8 } -int yaffs_check_all_ff(const __u8 *ptr, int n) +int yaffs_check_all_ff(const u8 *ptr, int n) { while(n) { @@ -388,7 +387,7 @@ static int fail320 = 1; static int failRead10 = 2; -int yflash2_ReadChunkWithTagsFromNAND(yaffs_dev_t *dev,int nand_chunk, __u8 *data, yaffs_ext_tags *tags) +int yflash2_ReadChunkWithTagsFromNAND(struct yaffs_dev *dev,int nand_chunk, u8 *data, struct yaffs_ext_tags *tags) { int nread; int pos; @@ -397,7 +396,7 @@ int yflash2_ReadChunkWithTagsFromNAND(yaffs_dev_t *dev,int nand_chunk, __u8 *dat int retval = YAFFS_OK; int nRead; - T(YAFFS_TRACE_MTD,(TSTR("read chunk %d data %x tags %x" TENDSTR),nand_chunk,(unsigned)data, (unsigned)tags)); + yaffs_trace(YAFFS_TRACE_MTD,"read chunk %d data %p tags %p",nand_chunk, data, tags); CheckInit(); @@ -412,8 +411,8 @@ int yflash2_ReadChunkWithTagsFromNAND(yaffs_dev_t *dev,int nand_chunk, __u8 *dat } - yaffs_packed_tags2_tags_only * pt2tp; - pt2tp = (yaffs_packed_tags2_tags_only *)&data[dev->data_bytes_per_chunk]; + struct yaffs_packed_tags2_tags_only * pt2tp; + pt2tp = (struct yaffs_packed_tags2_tags_only *)&data[dev->data_bytes_per_chunk]; pos = (nand_chunk % (PAGES_PER_BLOCK * BLOCKS_PER_HANDLE)) * PAGE_SIZE; @@ -458,10 +457,10 @@ int yflash2_ReadChunkWithTagsFromNAND(yaffs_dev_t *dev,int nand_chunk, __u8 *dat if(0 && dev->param.is_yaffs2) { - nread= read(h,tags,sizeof(yaffs_ext_tags)); - if(nread != sizeof(yaffs_ext_tags)) + nread= read(h,tags,sizeof(struct yaffs_ext_tags)); + if(nread != sizeof(struct yaffs_ext_tags)) retval = YAFFS_FAIL; - if(yaffs_check_all_ff((__u8 *)tags,sizeof(yaffs_ext_tags))) + if(yaffs_check_all_ff((u8 *)tags,sizeof(struct yaffs_ext_tags))) { yaffs_init_tags(tags); } @@ -472,7 +471,7 @@ int yflash2_ReadChunkWithTagsFromNAND(yaffs_dev_t *dev,int nand_chunk, __u8 *dat } else { - yaffs_packed_tags2 pt; + struct yaffs_packed_tags2 pt; nread= read(h,&pt,sizeof(pt)); yaffs_unpack_tags2(tags,&pt, !dev->param.no_tags_ecc); #ifdef SIMULATE_FAILURES @@ -508,12 +507,12 @@ int yflash2_ReadChunkWithTagsFromNAND(yaffs_dev_t *dev,int nand_chunk, __u8 *dat } -int yflash2_MarkNANDBlockBad(struct yaffs_dev_s *dev, int block_no) +int yflash2_MarkNANDBlockBad(struct yaffs_dev *dev, int block_no) { int written; int h; - yaffs_packed_tags2 pt; + struct yaffs_packed_tags2 pt; CheckInit(); @@ -529,7 +528,7 @@ int yflash2_MarkNANDBlockBad(struct yaffs_dev_s *dev, int block_no) } -int yflash2_EraseBlockInNAND(yaffs_dev_t *dev, int blockNumber) +int yflash2_EraseBlockInNAND(struct yaffs_dev *dev, int blockNumber) { int i; @@ -537,20 +536,20 @@ int yflash2_EraseBlockInNAND(yaffs_dev_t *dev, int blockNumber) CheckInit(); - printf("erase block %d\n",blockNumber); + //printf("erase block %d\n",blockNumber); if(blockNumber == 320) fail320 = 1; if(blockNumber < 0 || blockNumber >= filedisk.nBlocks) { - T(YAFFS_TRACE_ALWAYS,("Attempt to erase non-existant block %d\n",blockNumber)); + yaffs_trace(YAFFS_TRACE_ALWAYS,"Attempt to erase non-existant block %d",blockNumber); return YAFFS_FAIL; } else { - __u8 pg[PAGE_SIZE]; + u8 pg[PAGE_SIZE]; int syz = PAGE_SIZE; int pos; @@ -570,7 +569,7 @@ int yflash2_EraseBlockInNAND(yaffs_dev_t *dev, int blockNumber) } -int yflash2_InitialiseNAND(yaffs_dev_t *dev) +int yflash2_InitialiseNAND(struct yaffs_dev *dev) { CheckInit(); @@ -580,9 +579,9 @@ int yflash2_InitialiseNAND(yaffs_dev_t *dev) -int yflash2_QueryNANDBlock(struct yaffs_dev_s *dev, int block_no, yaffs_block_state_t *state, __u32 *seq_number) +int yflash2_QueryNANDBlock(struct yaffs_dev *dev, int block_no, enum yaffs_block_state *state, u32 *seq_number) { - yaffs_ext_tags tags; + struct yaffs_ext_tags tags; int chunkNo; *seq_number = 0;