Dr Andrew Scott G7VAV

My photo
 
June 2025
Mo Tu We Th Fr Sa Su
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 1 2 3 4 5 6


inftl-user.h
01: /*
02:  * Parts of INFTL headers shared with userspace
03:  *
04:  */
05: 
06: #ifndef __MTD_INFTL_USER_H__
07: #define __MTD_INFTL_USER_H__
08: 
09: #include <linux/types.h>
10: 
11: #define OSAK_VERSION    0x5120
12: #define PERCENTUSED     98
13: 
14: #define SECTORSIZE      512
15: 
16: /* Block Control Information */
17: 
18: struct inftl_bci {
19:         __u8 ECCsig[6];
20:         __u8 Status;
21:         __u8 Status1;
22: } __attribute__((packed));
23: 
24: struct inftl_unithead1 {
25:         __u16 virtualUnitNo;
26:         __u16 prevUnitNo;
27:         __u8 ANAC;
28:         __u8 NACs;
29:         __u8 parityPerField;
30:         __u8 discarded;
31: } __attribute__((packed));
32: 
33: struct inftl_unithead2 {
34:         __u8 parityPerField;
35:         __u8 ANAC;
36:         __u16 prevUnitNo;
37:         __u16 virtualUnitNo;
38:         __u8 NACs;
39:         __u8 discarded;
40: } __attribute__((packed));
41: 
42: struct inftl_unittail {
43:         __u8 Reserved[4];
44:         __u16 EraseMark;
45:         __u16 EraseMark1;
46: } __attribute__((packed));
47: 
48: union inftl_uci {
49:         struct inftl_unithead1 a;
50:         struct inftl_unithead2 b;
51:         struct inftl_unittail c;
52: };
53: 
54: struct inftl_oob {
55:         struct inftl_bci b;
56:         union inftl_uci u;
57: };
58: 
59: 
60: /* INFTL Media Header */
61: 
62: struct INFTLPartition {
63:         __u32 virtualUnits;
64:         __u32 firstUnit;
65:         __u32 lastUnit;
66:         __u32 flags;
67:         __u32 spareUnits;
68:         __u32 Reserved0;
69:         __u32 Reserved1;
70: } __attribute__((packed));
71: 
72: struct INFTLMediaHeader {
73:         char bootRecordID[8];
74:         __u32 NoOfBootImageBlocks;
75:         __u32 NoOfBinaryPartitions;
76:         __u32 NoOfBDTLPartitions;
77:         __u32 BlockMultiplierBits;
78:         __u32 FormatFlags;
79:         __u32 OsakVersion;
80:         __u32 PercentUsed;
81:         struct INFTLPartition Partitions[4];
82: } __attribute__((packed));
83: 
84: /* Partition flag types */
85: #define INFTL_BINARY    0x20000000
86: #define INFTL_BDTL      0x40000000
87: #define INFTL_LAST      0x80000000
88: 
89: #endif /* __MTD_INFTL_USER_H__ */
90: 
91: 
92: 


for client (none)
© Andrew Scott 2006 - 2025,
All Rights Reserved
http://www.andrew-scott.uk/
Andrew Scott
http://www.andrew-scott.co.uk/