X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=yaffs_guts.h;h=73375cc3f8fbbe8adf36e22fef73daa50f729d07;hp=b23447605249dfe593460333df467e1697b10163;hb=afa20b9f76da4dfb1a0759ffdbedf61933f7d139;hpb=2bae4078dafc0765f55763413a53b4340986a6b7 diff --git a/yaffs_guts.h b/yaffs_guts.h index b234476..73375cc 100644 --- a/yaffs_guts.h +++ b/yaffs_guts.h @@ -14,7 +14,7 @@ * * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL. * - * $Id: yaffs_guts.h,v 1.13 2005-08-11 02:51:49 charles Exp $ + * $Id: yaffs_guts.h,v 1.16 2005-10-09 07:55:00 charles Exp $ */ #ifndef __YAFFS_GUTS_H__ @@ -526,6 +526,13 @@ struct yaffs_DeviceStruct { #endif int isYaffs2; + + /* The removeObjectCallback function must be supplied by OS flavours that + * need it. The Linux kernel does not use this, but yaffs direct does use + * it to implement the faster readdir + */ + void (*removeObjectCallback)(struct yaffs_ObjectStruct *obj); + /* End of stuff that must be set before initialisation. */ @@ -555,6 +562,8 @@ struct yaffs_DeviceStruct { /* Block Info */ yaffs_BlockInfo *blockInfo; __u8 *chunkBits; /* bitmap of chunks in use */ + unsigned blockInfoAlt:1; /* was allocated using alternative strategy */ + unsigned chunkBitsAlt:1; /* was allocated using alternative strategy */ int chunkBitmapStride; /* Number of bytes of chunkBits per block. * Must be consistent with nChunksPerBlock. */ @@ -732,7 +741,7 @@ int yaffs_DumpObject(yaffs_Object * obj); void yaffs_GutsTest(yaffs_Device * dev); -/* AAAA few useful functions */ +/* A few useful functions */ void yaffs_InitialiseTags(yaffs_ExtendedTags * tags); void yaffs_DeleteChunk(yaffs_Device * dev, int chunkId, int markNAND, int lyn); int yaffs_CheckFF(__u8 * buffer, int nBytes);