2 * Parts of NFTL headers shared with userspace
6 #ifndef __MTD_NFTL_USER_H__
7 #define __MTD_NFTL_USER_H__
9 /* Block Control Information */
12 unsigned char ECCSig[6];
15 }__attribute__((packed));
17 /* Unit Control Information */
22 uint16_t SpareVirtUnitNum;
23 uint16_t SpareReplUnitNum;
24 } __attribute__((packed));
30 } __attribute__((packed));
36 } __attribute__((packed));
49 /* NFTL Media Header */
51 struct NFTLMediaHeader {
53 uint16_t NumEraseUnits;
54 uint16_t FirstPhysicalEUN;
55 uint32_t FormattedSize;
56 unsigned char UnitSizeFactor;
57 } __attribute__((packed));
59 #define MAX_ERASE_ZONES (8192 - 512)
61 #define ERASE_MARK 0x3c69
62 #define SECTOR_FREE 0xff
63 #define SECTOR_USED 0x55
64 #define SECTOR_IGNORE 0x11
65 #define SECTOR_DELETED 0x00
67 #define FOLD_MARK_IN_PROGRESS 0x5555
69 #define ZONE_GOOD 0xff
70 #define ZONE_BAD_ORIGINAL 0
71 #define ZONE_BAD_MARKED 7
74 #endif /* __MTD_NFTL_USER_H__ */