xref: /aosp_15_r20/bionic/libc/kernel/uapi/mtd/nftl-user.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1 /*
2  * This file is auto-generated. Modifications will be lost.
3  *
4  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5  * for more information.
6  */
7 #ifndef __MTD_NFTL_USER_H__
8 #define __MTD_NFTL_USER_H__
9 #include <linux/types.h>
10 struct nftl_bci {
11   unsigned char ECCSig[6];
12   __u8 Status;
13   __u8 Status1;
14 } __attribute__((packed));
15 struct nftl_uci0 {
16   __u16 VirtUnitNum;
17   __u16 ReplUnitNum;
18   __u16 SpareVirtUnitNum;
19   __u16 SpareReplUnitNum;
20 } __attribute__((packed));
21 struct nftl_uci1 {
22   __u32 WearInfo;
23   __u16 EraseMark;
24   __u16 EraseMark1;
25 } __attribute__((packed));
26 struct nftl_uci2 {
27   __u16 FoldMark;
28   __u16 FoldMark1;
29   __u32 unused;
30 } __attribute__((packed));
31 union nftl_uci {
32   struct nftl_uci0 a;
33   struct nftl_uci1 b;
34   struct nftl_uci2 c;
35 };
36 struct nftl_oob {
37   struct nftl_bci b;
38   union nftl_uci u;
39 };
40 struct NFTLMediaHeader {
41   char DataOrgID[6];
42   __u16 NumEraseUnits;
43   __u16 FirstPhysicalEUN;
44   __u32 FormattedSize;
45   unsigned char UnitSizeFactor;
46 } __attribute__((packed));
47 #define MAX_ERASE_ZONES (8192 - 512)
48 #define ERASE_MARK 0x3c69
49 #define SECTOR_FREE 0xff
50 #define SECTOR_USED 0x55
51 #define SECTOR_IGNORE 0x11
52 #define SECTOR_DELETED 0x00
53 #define FOLD_MARK_IN_PROGRESS 0x5555
54 #define ZONE_GOOD 0xff
55 #define ZONE_BAD_ORIGINAL 0
56 #define ZONE_BAD_MARKED 7
57 #endif
58