diff options
Diffstat (limited to 'yaffs2/direct/yaffscfg2k.c')
-rw-r--r-- | yaffs2/direct/yaffscfg2k.c | 179 |
1 files changed, 0 insertions, 179 deletions
diff --git a/yaffs2/direct/yaffscfg2k.c b/yaffs2/direct/yaffscfg2k.c deleted file mode 100644 index cb960bc..0000000 --- a/yaffs2/direct/yaffscfg2k.c +++ /dev/null @@ -1,179 +0,0 @@ -/* - * YAFFS: Yet another FFS. A NAND-flash specific file system. - * yaffscfg.c The configuration for the "direct" use of yaffs. - * - * This file is intended to be modified to your requirements. - * There is no need to redistribute this file. - */ - -#include "yaffscfg.h" -#include "yaffsfs.h" -#include "yaffs_fileem2k.h" -#include "yaffs_nandemul2k.h" - -#include <errno.h> - -unsigned yaffs_traceMask = YAFFS_TRACE_SCAN | YAFFS_TRACE_GC /*| YAFFS_TRACE_GC_DETAIL | YAFFS_TRACE_WRITE */ | YAFFS_TRACE_ERASE | YAFFS_TRACE_TRACING | YAFFS_TRACE_ALLOCATE | YAFFS_TRACE_CHECKPOINT; -//unsigned yaffs_traceMask = ~0; - - -void yaffsfs_SetError(int err) -{ - //Do whatever to set error - errno = err; -} - -void yaffsfs_Lock(void) -{ -} - -void yaffsfs_Unlock(void) -{ -} - -__u32 yaffsfs_CurrentTime(void) -{ - return 0; -} - -void yaffsfs_LocalInitialisation(void) -{ - // Define locking semaphore. -} - -// Configuration for: -// /ram 2MB ramdisk -// /boot 2MB boot disk (flash) -// /flash 14MB flash disk (flash) -// NB Though /boot and /flash occupy the same physical device they -// are still disticnt "yaffs_Devices. You may think of these as "partitions" -// using non-overlapping areas in the same device. -// - -#include "yaffs_ramdisk.h" -#include "yaffs_flashif.h" -#include "yaffs_nandemul2k.h" - -static yaffs_Device ramDev; -static yaffs_Device bootDev; -static yaffs_Device flashDev; -static yaffs_Device ram2kDev; - -static yaffsfs_DeviceConfiguration yaffsfs_config[] = { -#if 0 - { "/ram", &ramDev}, - { "/boot", &bootDev}, - { "/flash/", &flashDev}, - { "/ram2k", &ram2kDev}, - {(void *)0,(void *)0} -#else - { "/", &ramDev}, - { "/flash/boot", &bootDev}, - { "/flash/flash", &flashDev}, - { "/ram2k", &ram2kDev}, - {(void *)0,(void *)0} /* Null entry to terminate list */ -#endif -}; - - -int yaffs_StartUp(void) -{ - // Stuff to configure YAFFS - // Stuff to initialise anything special (eg lock semaphore). - yaffsfs_LocalInitialisation(); - - // Set up devices - // /ram - memset(&ramDev,0,sizeof(ramDev)); - ramDev.nDataBytesPerChunk = 512; - ramDev.nChunksPerBlock = 32; - ramDev.nReservedBlocks = 2; // Set this smaller for RAM - ramDev.startBlock = 0; // Can use block 0 - ramDev.endBlock = 127; // Last block in 2MB. - //ramDev.useNANDECC = 1; - ramDev.nShortOpCaches = 0; // Disable caching on this device. - ramDev.genericDevice = (void *) 0; // Used to identify the device in fstat. - ramDev.writeChunkWithTagsToNAND = yramdisk_WriteChunkWithTagsToNAND; - ramDev.readChunkWithTagsFromNAND = yramdisk_ReadChunkWithTagsFromNAND; - ramDev.eraseBlockInNAND = yramdisk_EraseBlockInNAND; - ramDev.initialiseNAND = yramdisk_InitialiseNAND; - - // /boot - memset(&bootDev,0,sizeof(bootDev)); - bootDev.nDataBytesPerChunk = 512; - bootDev.nChunksPerBlock = 32; - bootDev.nReservedBlocks = 5; - bootDev.startBlock = 0; // Can use block 0 - bootDev.endBlock = 63; // Last block - //bootDev.useNANDECC = 0; // use YAFFS's ECC - bootDev.nShortOpCaches = 10; // Use caches - bootDev.genericDevice = (void *) 1; // Used to identify the device in fstat. - bootDev.writeChunkWithTagsToNAND = yflash_WriteChunkWithTagsToNAND; - bootDev.readChunkWithTagsFromNAND = yflash_ReadChunkWithTagsFromNAND; - bootDev.eraseBlockInNAND = yflash_EraseBlockInNAND; - bootDev.initialiseNAND = yflash_InitialiseNAND; - bootDev.markNANDBlockBad = yflash_MarkNANDBlockBad; - bootDev.queryNANDBlock = yflash_QueryNANDBlock; - - - - // /flash - // Set this puppy up to use - // the file emulation space as - // 2kpage/64chunk per block/128MB device - memset(&flashDev,0,sizeof(flashDev)); - - flashDev.nDataBytesPerChunk = 2048; - flashDev.nChunksPerBlock = 64; - flashDev.nReservedBlocks = 5; - flashDev.nCheckpointReservedBlocks = 5; - //flashDev.checkpointStartBlock = 1; - //flashDev.checkpointEndBlock = 20; - flashDev.startBlock = 20; - //flashDev.endBlock = 127; // Make it smaller - flashDev.endBlock = yflash_GetNumberOfBlocks()-1; - flashDev.isYaffs2 = 1; - flashDev.wideTnodesDisabled=0; - flashDev.nShortOpCaches = 10; // Use caches - flashDev.genericDevice = (void *) 2; // Used to identify the device in fstat. - flashDev.writeChunkWithTagsToNAND = yflash_WriteChunkWithTagsToNAND; - flashDev.readChunkWithTagsFromNAND = yflash_ReadChunkWithTagsFromNAND; - flashDev.eraseBlockInNAND = yflash_EraseBlockInNAND; - flashDev.initialiseNAND = yflash_InitialiseNAND; - flashDev.markNANDBlockBad = yflash_MarkNANDBlockBad; - flashDev.queryNANDBlock = yflash_QueryNANDBlock; - - // /ram2k - // Set this puppy up to use - // the file emulation space as - // 2kpage/64chunk per block/128MB device - memset(&ram2kDev,0,sizeof(ram2kDev)); - - ram2kDev.nDataBytesPerChunk = nandemul2k_GetBytesPerChunk(); - ram2kDev.nChunksPerBlock = nandemul2k_GetChunksPerBlock(); - ram2kDev.nReservedBlocks = 5; - ram2kDev.startBlock = 0; // First block after /boot - //ram2kDev.endBlock = 127; // Last block in 16MB - ram2kDev.endBlock = nandemul2k_GetNumberOfBlocks() - 1; // Last block in 512MB - ram2kDev.isYaffs2 = 1; - ram2kDev.nShortOpCaches = 10; // Use caches - ram2kDev.genericDevice = (void *) 3; // Used to identify the device in fstat. - ram2kDev.writeChunkWithTagsToNAND = nandemul2k_WriteChunkWithTagsToNAND; - ram2kDev.readChunkWithTagsFromNAND = nandemul2k_ReadChunkWithTagsFromNAND; - ram2kDev.eraseBlockInNAND = nandemul2k_EraseBlockInNAND; - ram2kDev.initialiseNAND = nandemul2k_InitialiseNAND; - ram2kDev.markNANDBlockBad = nandemul2k_MarkNANDBlockBad; - ram2kDev.queryNANDBlock = nandemul2k_QueryNANDBlock; - - yaffs_initialise(yaffsfs_config); - - return 0; -} - - - -void SetCheckpointReservedBlocks(int n) -{ - flashDev.nCheckpointReservedBlocks = n; -} - |