summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJosh Boyer <jwboyer@gmail.com>2007-03-15 08:05:07 -0500
committerJosh Boyer <jwboyer@gmail.com>2007-03-15 08:05:07 -0500
commit12d798a29a9a376ef495f527b1785317e3ae3d37 (patch)
tree2f500ba1b2c29324127b78a5dc0eef3996624f67 /include
parentaf5e6399f2dfb91c1e4326641e8a00179808c501 (diff)
Update header file to latest MTD ABI and fix mtd_debug to work properly
Signed-off-by: Josh Boyer <jwboyer@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/mtd/mtd-abi.h21
1 files changed, 7 insertions, 14 deletions
diff --git a/include/mtd/mtd-abi.h b/include/mtd/mtd-abi.h
index 7ccadb1..aaae170 100644
--- a/include/mtd/mtd-abi.h
+++ b/include/mtd/mtd-abi.h
@@ -7,11 +7,6 @@
#ifndef __MTD_ABI_H__
#define __MTD_ABI_H__
-#ifndef __KERNEL__ /* Urgh. The whole point of splitting this out into
- separate files was to avoid #ifdef __KERNEL__ */
-#define __user
-#endif
-
struct erase_info_user {
uint32_t start;
uint32_t length;
@@ -20,18 +15,20 @@ struct erase_info_user {
struct mtd_oob_buf {
uint32_t start;
uint32_t length;
- unsigned char __user *ptr;
+ unsigned char *ptr;
};
#define MTD_ABSENT 0
+#define MTD_RAM 1
+#define MTD_ROM 2
#define MTD_NORFLASH 3
#define MTD_NANDFLASH 4
#define MTD_DATAFLASH 6
-#define MTD_GENERIC_TYPE 7
#define MTD_WRITEABLE 0x400 /* Device is writeable */
#define MTD_BIT_WRITEABLE 0x800 /* Single bits can be flipped */
#define MTD_NO_ERASE 0x1000 /* No erase necessary */
+#define MTD_STUPID_LOCK 0x2000 /* Always locked after reset */
// Some common devices / combinations of capabilities
#define MTD_CAP_ROM 0
@@ -39,12 +36,6 @@ struct mtd_oob_buf {
#define MTD_CAP_NORFLASH (MTD_WRITEABLE | MTD_BIT_WRITEABLE)
#define MTD_CAP_NANDFLASH (MTD_WRITEABLE)
-
-// Types of automatic ECC/Checksum available
-#define MTD_ECC_NONE 0 // No automatic ECC available
-#define MTD_ECC_RS_DiskOnChip 1 // Automatic ECC on DiskOnChip
-#define MTD_ECC_SW 2 // SW ECC for Toshiba & Samsung devices
-
/* ECC byte placement */
#define MTD_NANDECC_OFF 0 // Switch off ECC (Not recommended)
#define MTD_NANDECC_PLACE 1 // Use the given placement in the structure (YAFFS1 legacy mode)
@@ -64,6 +55,8 @@ struct mtd_info_user {
uint32_t erasesize;
uint32_t writesize;
uint32_t oobsize; // Amount of OOB data per block (e.g. 16)
+ /* The below two fields are obsolete and broken, do not use them
+ * (TODO: remove at some point) */
uint32_t ecctype;
uint32_t eccsize;
};
@@ -131,7 +124,7 @@ struct nand_ecclayout {
};
/**
- * struct mtd_ecc_stats - error correction status
+ * struct mtd_ecc_stats - error correction stats
*
* @corrected: number of corrected bits
* @failed: number of uncorrectable errors