140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project/* 240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * YAFFS: Yet another FFS. A NAND-flash specific file system. 340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * 440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * Copyright (C) 2002 Aleph One Ltd. 540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * for Toby Churchill Ltd and Brightstar Engineering 640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * 740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * Created by Charles Manning <charles@aleph1.co.uk> 840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * 940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * This program is free software; you can redistribute it and/or modify 1040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * it under the terms of the GNU General Public License version 2 as 1140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * published by the Free Software Foundation. 1240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project * 1340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project */ 1440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 1540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#ifndef __YAFFS_NAND_H__ 1640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#define __YAFFS_NAND_H__ 1740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#include "yaffs_guts.h" 1840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 1940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 2040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 2140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectint yaffs_ReadChunkWithTagsFromNAND(yaffs_Device * dev, int chunkInNAND, 2240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project __u8 * buffer, 2340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project yaffs_ExtendedTags * tags); 2440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 2540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectint yaffs_WriteChunkWithTagsToNAND(yaffs_Device * dev, 2640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project int chunkInNAND, 2740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project const __u8 * buffer, 2840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project yaffs_ExtendedTags * tags); 2940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 3040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectint yaffs_MarkBlockBad(yaffs_Device * dev, int blockNo); 3140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 3240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectint yaffs_QueryInitialBlockState(yaffs_Device * dev, 3340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project int blockNo, 3440c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project yaffs_BlockState * state, 3540c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project unsigned *sequenceNumber); 3640c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 3740c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectint yaffs_EraseBlockInNAND(struct yaffs_DeviceStruct *dev, 3840c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project int blockInNAND); 3940c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 4040c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Projectint yaffs_InitialiseNAND(struct yaffs_DeviceStruct *dev); 4140c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 4240c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project#endif 4340c4004d07a37a9b140067f893930ce4436b9346The Android Open Source Project 44