*** empty log message ***
[yaffs/.git] / yaffs_guts.h
index 0fe8f74557b7ca942ad0d1c9b5591102606cc0e8..769dcc50adc2a7706012569b9d54c96bc8dbc64e 100644 (file)
@@ -14,7 +14,7 @@
  *
  * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL.
  *
- * $Id: yaffs_guts.h,v 1.14 2003-01-14 23:15:32 charles Exp $
+ * $Id: yaffs_guts.h,v 1.16 2003-01-31 03:30:33 charles Exp $
  */
 
 #ifndef __YAFFS_GUTS_H__
@@ -62,8 +62,6 @@
 #define YAFFS_NOBJECT_BUCKETS          256
 
 
-#define YAFFS_RESERVED_BLOCKS          8
-
 #define YAFFS_OBJECT_SPACE                     0x40000
 #define YAFFS_MAX_NAME_LENGTH          255
 #define YAFFS_SHORT_NAME_LENGTH                15
@@ -399,9 +397,11 @@ struct yaffs_DeviceStruct
 {
        // Entry parameters set up way early. Yaffs sets up the rest.
        int   nBytesPerChunk;    // Should be a power of 2 >= 512
-       int       nChunksPerBlock;
-       int   startBlock;       // Start block we're allowed to use
-       int   endBlock;         // End block we're allowed to use
+       int       nChunksPerBlock;       // does not need to be a power of 2
+       int   startBlock;                // Start block we're allowed to use
+       int   endBlock;                  // End block we're allowed to use
+       int   nReservedBlocks;   // We want this tuneable so that we can reduce
+                                                        // reserved blocks on NOR and RAM.
        
        int   useNANDECC;               // Flag to decide whether or not to use NANDECC
        int   nShortOpCaches;   // If <= 0, then short op caching is disabled, else
@@ -466,7 +466,6 @@ struct yaffs_DeviceStruct
                
        int   currentDirtyChecker;      // Used to find current dirtiest block
        
-       int   garbageCollectionRequired;
        
        // Operations since mount
        int nPageWrites;
@@ -474,6 +473,7 @@ struct yaffs_DeviceStruct
        int nBlockErasures;
        int nGCCopies;
        int garbageCollections;
+       int passiveGarbageCollections;
        int nRetriedWrites;
        int nRetiredBlocks;
        int eccFixed;
@@ -491,8 +491,6 @@ struct yaffs_DeviceStruct
 //     yaffs_Spare bufferedSpare[YAFFS_CHUNKS_PER_BLOCK];
        int bufferedBlock;      // Which block is buffered here?
        int doingBufferedBlockRewrite;
-       
-       int blockSelectedForGC;
 
        yaffs_ChunkCache *srCache;
        int srLastUse;