Adding fsx test to yaffs direct
[yaffs2.git] / yaffs_ecc.h
index f96d7077a72efb1ad6e8a2bf9d4e30f20d7ee56f..40fd02b9653ec750fe66ce4f991a3121e0310415 100644 (file)
@@ -1,41 +1,44 @@
 /*
- * YAFFS: Yet another FFS. A NAND-flash specific file system. 
+ * YAFFS: Yet another Flash File System . A NAND-flash specific file system. 
  *
- * yaffs_ecc.c: ECC generation/correction algorithms.
- *
- * Copyright (C) 2002 Aleph One Ltd.
+ * Copyright (C) 2002-2007 Aleph One Ltd.
+ *   for Toby Churchill Ltd and Brightstar Engineering
  *
  * Created by Charles Manning <charles@aleph1.co.uk>
  *
  * 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
+ * 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 code implements the ECC algorithm used in SmartMedia.
- *
- * The ECC comprises 22 bits of parity information and is stuffed into 3 bytes. 
- * The two unused bit are set to 1.
- * The ECC can correct single bit errors in a 256-byte page of data. Thus, two such ECC 
- * blocks are used on a 512-byte NAND page.
- *
- */
 * This code implements the ECC algorithm used in SmartMedia.
 *
 * The ECC comprises 22 bits of parity information and is stuffed into 3 bytes. 
 * The two unused bit are set to 1.
 * The ECC can correct single bit errors in a 256-byte page of data. Thus, two such ECC 
 * blocks are used on a 512-byte NAND page.
 *
 */
 
 #ifndef __YAFFS_ECC_H__
 #define __YAFFS_ECC_H__
 
-typedef struct
-{
+typedef struct {
        unsigned char colParity;
        unsigned lineParity;
        unsigned lineParityPrime;
 } yaffs_ECCOther;
 
-void yaffs_ECCCalculate(const unsigned char *data,unsigned char *ecc);
-int yaffs_ECCCorrect(unsigned char *data, unsigned char *read_ecc, const unsigned char *test_ecc);
+void yaffs_ECCCalculate(const unsigned char *data, unsigned char *ecc);
+int yaffs_ECCCorrect(unsigned char *data, unsigned char *read_ecc,
+                    const unsigned char *test_ecc);
 
-void yaffs_ECCCalculateOther(const unsigned char *data,unsigned nBytes, yaffs_ECCOther *ecc);
-int yaffs_ECCCorrectOther(unsigned char *data, unsigned nBytes, yaffs_ECCOther *read_ecc, const yaffs_ECCOther *test_ecc);
+void yaffs_ECCCalculateOther(const unsigned char *data, unsigned nBytes,
+                            yaffs_ECCOther * ecc);
+int yaffs_ECCCorrectOther(unsigned char *data, unsigned nBytes,
+                         yaffs_ECCOther * read_ecc,
+                         const yaffs_ECCOther * test_ecc);
 #endif