xref: /aosp_15_r20/prebuilts/build-tools/sysroots/aarch64-unknown-linux-musl/include/mtd/inftl-user.h (revision cda5da8d549138a6648c5ee6d7a49cf8f4a657be)
1*cda5da8dSAndroid Build Coastguard Worker /*
2*cda5da8dSAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*cda5da8dSAndroid Build Coastguard Worker  *
4*cda5da8dSAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*cda5da8dSAndroid Build Coastguard Worker  * for more information.
6*cda5da8dSAndroid Build Coastguard Worker  */
7*cda5da8dSAndroid Build Coastguard Worker #ifndef __MTD_INFTL_USER_H__
8*cda5da8dSAndroid Build Coastguard Worker #define __MTD_INFTL_USER_H__
9*cda5da8dSAndroid Build Coastguard Worker #include <linux/types.h>
10*cda5da8dSAndroid Build Coastguard Worker #define OSAK_VERSION 0x5120
11*cda5da8dSAndroid Build Coastguard Worker #define PERCENTUSED 98
12*cda5da8dSAndroid Build Coastguard Worker #define SECTORSIZE 512
13*cda5da8dSAndroid Build Coastguard Worker struct inftl_bci {
14*cda5da8dSAndroid Build Coastguard Worker   __u8 ECCsig[6];
15*cda5da8dSAndroid Build Coastguard Worker   __u8 Status;
16*cda5da8dSAndroid Build Coastguard Worker   __u8 Status1;
17*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
18*cda5da8dSAndroid Build Coastguard Worker struct inftl_unithead1 {
19*cda5da8dSAndroid Build Coastguard Worker   __u16 virtualUnitNo;
20*cda5da8dSAndroid Build Coastguard Worker   __u16 prevUnitNo;
21*cda5da8dSAndroid Build Coastguard Worker   __u8 ANAC;
22*cda5da8dSAndroid Build Coastguard Worker   __u8 NACs;
23*cda5da8dSAndroid Build Coastguard Worker   __u8 parityPerField;
24*cda5da8dSAndroid Build Coastguard Worker   __u8 discarded;
25*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
26*cda5da8dSAndroid Build Coastguard Worker struct inftl_unithead2 {
27*cda5da8dSAndroid Build Coastguard Worker   __u8 parityPerField;
28*cda5da8dSAndroid Build Coastguard Worker   __u8 ANAC;
29*cda5da8dSAndroid Build Coastguard Worker   __u16 prevUnitNo;
30*cda5da8dSAndroid Build Coastguard Worker   __u16 virtualUnitNo;
31*cda5da8dSAndroid Build Coastguard Worker   __u8 NACs;
32*cda5da8dSAndroid Build Coastguard Worker   __u8 discarded;
33*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
34*cda5da8dSAndroid Build Coastguard Worker struct inftl_unittail {
35*cda5da8dSAndroid Build Coastguard Worker   __u8 Reserved[4];
36*cda5da8dSAndroid Build Coastguard Worker   __u16 EraseMark;
37*cda5da8dSAndroid Build Coastguard Worker   __u16 EraseMark1;
38*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
39*cda5da8dSAndroid Build Coastguard Worker union inftl_uci {
40*cda5da8dSAndroid Build Coastguard Worker   struct inftl_unithead1 a;
41*cda5da8dSAndroid Build Coastguard Worker   struct inftl_unithead2 b;
42*cda5da8dSAndroid Build Coastguard Worker   struct inftl_unittail c;
43*cda5da8dSAndroid Build Coastguard Worker };
44*cda5da8dSAndroid Build Coastguard Worker struct inftl_oob {
45*cda5da8dSAndroid Build Coastguard Worker   struct inftl_bci b;
46*cda5da8dSAndroid Build Coastguard Worker   union inftl_uci u;
47*cda5da8dSAndroid Build Coastguard Worker };
48*cda5da8dSAndroid Build Coastguard Worker struct INFTLPartition {
49*cda5da8dSAndroid Build Coastguard Worker   __u32 virtualUnits;
50*cda5da8dSAndroid Build Coastguard Worker   __u32 firstUnit;
51*cda5da8dSAndroid Build Coastguard Worker   __u32 lastUnit;
52*cda5da8dSAndroid Build Coastguard Worker   __u32 flags;
53*cda5da8dSAndroid Build Coastguard Worker   __u32 spareUnits;
54*cda5da8dSAndroid Build Coastguard Worker   __u32 Reserved0;
55*cda5da8dSAndroid Build Coastguard Worker   __u32 Reserved1;
56*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
57*cda5da8dSAndroid Build Coastguard Worker struct INFTLMediaHeader {
58*cda5da8dSAndroid Build Coastguard Worker   char bootRecordID[8];
59*cda5da8dSAndroid Build Coastguard Worker   __u32 NoOfBootImageBlocks;
60*cda5da8dSAndroid Build Coastguard Worker   __u32 NoOfBinaryPartitions;
61*cda5da8dSAndroid Build Coastguard Worker   __u32 NoOfBDTLPartitions;
62*cda5da8dSAndroid Build Coastguard Worker   __u32 BlockMultiplierBits;
63*cda5da8dSAndroid Build Coastguard Worker   __u32 FormatFlags;
64*cda5da8dSAndroid Build Coastguard Worker   __u32 OsakVersion;
65*cda5da8dSAndroid Build Coastguard Worker   __u32 PercentUsed;
66*cda5da8dSAndroid Build Coastguard Worker   struct INFTLPartition Partitions[4];
67*cda5da8dSAndroid Build Coastguard Worker } __attribute__((packed));
68*cda5da8dSAndroid Build Coastguard Worker #define INFTL_BINARY 0x20000000
69*cda5da8dSAndroid Build Coastguard Worker #define INFTL_BDTL 0x40000000
70*cda5da8dSAndroid Build Coastguard Worker #define INFTL_LAST 0x80000000
71*cda5da8dSAndroid Build Coastguard Worker #endif
72