Mercurial > yaffs-ecoscentric-gpl
comparison direct/yaffs_nandif.h @ 265:1da182c82204
Add experimental yaffs_nandif.[ch]
| author | charles <charles> |
|---|---|
| date | Mon, 09 Feb 2009 03:20:33 +0000 |
| parents | |
| children | b5309c9b6d7f |
comparison
equal
deleted
inserted
replaced
| 264:3d3cda524900 | 265:1da182c82204 |
|---|---|
| 1 /* | |
| 2 * YAFFS: Yet another Flash File System . A NAND-flash specific file system. | |
| 3 * | |
| 4 * Copyright (C) 2002-2007 Aleph One Ltd. | |
| 5 * for Toby Churchill Ltd and Brightstar Engineering | |
| 6 * | |
| 7 * Created by Charles Manning <charles@aleph1.co.uk> | |
| 8 * | |
| 9 * This program is free software; you can redistribute it and/or modify | |
| 10 * it under the terms of the GNU Lesser General Public License version 2.1 as | |
| 11 * published by the Free Software Foundation. | |
| 12 * | |
| 13 * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL. | |
| 14 */ | |
| 15 | |
| 16 | |
| 17 #ifndef __YNANDIF_H__ | |
| 18 #define __YNANDIF_H__ | |
| 19 | |
| 20 #include "yaffs_guts.h" | |
| 21 | |
| 22 typedef struct { | |
| 23 unsigned startBlock; | |
| 24 unsigned endBlock; | |
| 25 unsigned dataSize; // Number of data bytes per page | |
| 26 unsigned spareSize; // Number of spare bytes per chunk | |
| 27 unsigned pagesPerBlock; | |
| 28 unsigned hasECC; | |
| 29 unsigned inbandTags; // Use inband tags on this device | |
| 30 unsigned useYaffs2; | |
| 31 } ynandif_Geometry; | |
| 32 | |
| 33 int ynandif_WriteChunkWithTagsToNAND(yaffs_Device *dev,int chunkInNAND,const __u8 *data, const yaffs_ExtendedTags *tags); | |
| 34 int ynandif_ReadChunkWithTagsFromNAND(yaffs_Device *dev,int chunkInNAND, __u8 *data, yaffs_ExtendedTags *tags); | |
| 35 int ynandif_EraseBlockInNAND(yaffs_Device *dev, int blockNumber); | |
| 36 int ynandif_InitialiseNAND(yaffs_Device *dev); | |
| 37 int ynandif_MarkNANDBlockBad(yaffs_Device *dev,int blockNumber); | |
| 38 int ynandif_QueryNANDBlock(yaffs_Device *dev, int blockNo, yaffs_BlockState *state, __u32 *sequenceNumber); | |
| 39 int ynandif_GetGeometry(yaffs_Device *dev, ynandif_Geometry *geometry); | |
| 40 #endif |
