X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=direct%2Fyaffs_flashif.c;h=95ac613f13f7dc97b853db39d9258d1b8c7a51ff;hp=73c07c8a1df0747f3297507b85e41a637ef781dd;hb=137f935f6d622bffdef2fece0c5194e85f5174e9;hpb=2e51ed27a28a076ee9eb870ba8c0eb09b8114b01 diff --git a/direct/yaffs_flashif.c b/direct/yaffs_flashif.c index 73c07c8..95ac613 100644 --- a/direct/yaffs_flashif.c +++ b/direct/yaffs_flashif.c @@ -1,29 +1,24 @@ /* - * YAFFS: Yet another FFS. A NAND-flash specific file system. - * yaffs_ramdisk.c: yaffs ram disk component + * YAFFS: Yet Another Flash File System. A NAND-flash specific file system. * - * Copyright (C) 2002 Aleph One Ltd. + * Copyright (C) 2002-2010 Aleph One Ltd. + * for Toby Churchill Ltd and Brightstar Engineering * * Created by Charles Manning * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. - * */ -// This provides a rma disk under yaffs. -// NB this is not intended for NAND emulation. -// Use this with dev->useNANDECC enabled, then ECC overheads are not required. -const char *yaffs_flashif_c_version = "$Id: yaffs_flashif.c,v 1.1 2004-11-03 08:29:28 charles Exp $"; +const char *yaffs_flashif_c_version = "$Id: yaffs_flashif.c,v 1.3 2007-02-14 01:09:06 wookey Exp $"; #include "yportenv.h" #include "yaffs_flashif.h" #include "yaffs_guts.h" -#include "devextras.h" #define SIZE_IN_MB 16 @@ -35,7 +30,7 @@ const char *yaffs_flashif_c_version = "$Id: yaffs_flashif.c,v 1.1 2004-11-03 08: typedef struct { - __u8 data[528]; // Data + spare + u8 data[528]; // Data + spare } yflash_Page; typedef struct @@ -54,7 +49,7 @@ typedef struct static yflash_Device ramdisk; -static int CheckInit(yaffs_Device *dev) +static int CheckInit(struct yaffs_dev *dev) { static int initialised = 0; @@ -72,7 +67,7 @@ static int CheckInit(yaffs_Device *dev) ramdisk.nBlocks = (SIZE_IN_MB * 1024 * 1024)/(16 * 1024); - ramdisk.block = YMALLOC(sizeof(yflash_Block *) * ramdisk.nBlocks); + ramdisk.block = kmalloc(sizeof(yflash_Block *) * ramdisk.nBlocks); if(!ramdisk.block) return 0; @@ -83,7 +78,7 @@ static int CheckInit(yaffs_Device *dev) for(i=0; i page[pg].data[512],sizeof(yaffs_PackedTags)); - yaffs_UnpackTags(tags,&pt); + yaffs_unpack_tags(tags,&pt); } return YAFFS_OK; } -int yflash_CheckChunkErased(yaffs_Device *dev,int chunkInNAND) +int yflash_CheckChunkErased(struct yaffs_dev *dev,int nand_chunk) { int blk; int pg; @@ -180,8 +175,8 @@ int yflash_CheckChunkErased(yaffs_Device *dev,int chunkInNAND) CheckInit(dev); - blk = chunkInNAND/32; - pg = chunkInNAND%32; + blk = nand_chunk/32; + pg = nand_chunk%32; for(i = 0; i < 528; i++) @@ -196,7 +191,7 @@ int yflash_CheckChunkErased(yaffs_Device *dev,int chunkInNAND) } -int yflash_EraseBlockInNAND(yaffs_Device *dev, int blockNumber) +int yflash_EraseBlockInNAND(struct yaffs_dev *dev, int blockNumber) { CheckInit(dev); @@ -214,19 +209,19 @@ int yflash_EraseBlockInNAND(yaffs_Device *dev, int blockNumber) } -int yflash_MarkNANDBlockBad(struct yaffs_DeviceStruct *dev, int blockNo) +int yflash_MarkNANDBlockBad(struct yaffs_dev *dev, int block_no) { return YAFFS_OK; } -int yflash_QueryNANDBlock(struct yaffs_DeviceStruct *dev, int blockNo, yaffs_BlockState *state, int *sequenceNumber) +int yflash_QueryNANDBlock(struct yaffs_dev *dev, int block_no, enum yaffs_block_state *state, int *seq_number) { *state = YAFFS_BLOCK_STATE_EMPTY; - *sequenceNumber = 0; + *seq_number = 0; } -int yflash_InitialiseNAND(yaffs_Device *dev) +int yflash_InitialiseNAND(struct yaffs_dev *dev) { return YAFFS_OK; }