X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs2.git;a=blobdiff_plain;f=yaffs_packedtags2.h;h=c132a98cdc2043bbad5133e38dbcf4887e9318b5;hp=7eb89d44e55f8758f4307636398513096bc3cc5c;hb=401f9eb48ce20b18902ad9a4a8039d43e363d2ec;hpb=37fd9ec3587b5c4d497a7682522a9adfab682e51 diff --git a/yaffs_packedtags2.h b/yaffs_packedtags2.h index 7eb89d4..c132a98 100644 --- a/yaffs_packedtags2.h +++ b/yaffs_packedtags2.h @@ -1,31 +1,43 @@ -// This is used to pack YAFFS2 tags, not YAFFS1tags. +/* + * YAFFS: Yet another Flash File System . A NAND-flash specific file system. + * + * 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 Lesser General Public License version 2.1 as + * published by the Free Software Foundation. + * + * Note: Only YAFFS headers are LGPL, YAFFS C code is covered by GPL. + */ + +/* This is used to pack YAFFS2 tags, not YAFFS1tags. */ #ifndef __YAFFS_PACKEDTAGS2_H__ #define __YAFFS_PACKEDTAGS2_H__ - #include "yaffs_guts.h" #include "yaffs_ecc.h" -typedef struct -{ - unsigned sequenceNumber; - unsigned chunkId; - unsigned objectId; - unsigned byteCount; - unsigned nandTagsEcc; - +typedef struct { + unsigned sequenceNumber; + unsigned objectId; + unsigned chunkId; + unsigned byteCount; } yaffs_PackedTags2TagsPart; -typedef struct -{ - yaffs_PackedTags2TagsPart t; - yaffs_ECCOther ecc; +typedef struct { + yaffs_PackedTags2TagsPart t; + yaffs_ECCOther ecc; } yaffs_PackedTags2; +/* Full packed tags with ECC, used for oob tags */ +void yaffs_PackTags2(yaffs_PackedTags2 *pt, const yaffs_ExtendedTags *t, int tagsECC); +void yaffs_UnpackTags2(yaffs_ExtendedTags *t, yaffs_PackedTags2 *pt, int tagsECC); -void yaffs_PackTags2(yaffs_PackedTags2 *pt, const yaffs_ExtendedTags *t); -void yaffs_UnpackTags2(yaffs_ExtendedTags *t, const yaffs_PackedTags2 *pt); +/* Only the tags part (no ECC for use with inband tags */ +void yaffs_PackTags2TagsPart(yaffs_PackedTags2TagsPart *pt, const yaffs_ExtendedTags *t); +void yaffs_UnpackTags2TagsPart(yaffs_ExtendedTags *t, yaffs_PackedTags2TagsPart *pt); #endif - -