diff options
| -rw-r--r-- | include/linux/jffs2.h | 27 | ||||
| -rw-r--r-- | include/mtd/inftl-user.h | 36 | ||||
| -rw-r--r-- | include/mtd/jffs2-user.h | 5 | ||||
| -rw-r--r-- | include/mtd/mtd-abi.h | 66 | ||||
| -rw-r--r-- | include/mtd/nftl-user.h | 32 | ||||
| -rw-r--r-- | include/mtd/ubi-user.h | 72 |
6 files changed, 123 insertions, 115 deletions
diff --git a/include/linux/jffs2.h b/include/linux/jffs2.h index da720bc3eb15..2b32d638147d 100644 --- a/include/linux/jffs2.h +++ b/include/linux/jffs2.h | |||
| @@ -12,6 +12,7 @@ | |||
| 12 | #ifndef __LINUX_JFFS2_H__ | 12 | #ifndef __LINUX_JFFS2_H__ |
| 13 | #define __LINUX_JFFS2_H__ | 13 | #define __LINUX_JFFS2_H__ |
| 14 | 14 | ||
| 15 | #include <linux/types.h> | ||
| 15 | #include <linux/magic.h> | 16 | #include <linux/magic.h> |
| 16 | 17 | ||
| 17 | /* You must include something which defines the C99 uintXX_t types. | 18 | /* You must include something which defines the C99 uintXX_t types. |
| @@ -91,15 +92,15 @@ | |||
| 91 | byteswapping */ | 92 | byteswapping */ |
| 92 | 93 | ||
| 93 | typedef struct { | 94 | typedef struct { |
| 94 | uint32_t v32; | 95 | __u32 v32; |
| 95 | } __attribute__((packed)) jint32_t; | 96 | } __attribute__((packed)) jint32_t; |
| 96 | 97 | ||
| 97 | typedef struct { | 98 | typedef struct { |
| 98 | uint32_t m; | 99 | __u32 m; |
| 99 | } __attribute__((packed)) jmode_t; | 100 | } __attribute__((packed)) jmode_t; |
| 100 | 101 | ||
| 101 | typedef struct { | 102 | typedef struct { |
| 102 | uint16_t v16; | 103 | __u16 v16; |
| 103 | } __attribute__((packed)) jint16_t; | 104 | } __attribute__((packed)) jint16_t; |
| 104 | 105 | ||
| 105 | struct jffs2_unknown_node | 106 | struct jffs2_unknown_node |
| @@ -121,12 +122,12 @@ struct jffs2_raw_dirent | |||
| 121 | jint32_t version; | 122 | jint32_t version; |
| 122 | jint32_t ino; /* == zero for unlink */ | 123 | jint32_t ino; /* == zero for unlink */ |
| 123 | jint32_t mctime; | 124 | jint32_t mctime; |
| 124 | uint8_t nsize; | 125 | __u8 nsize; |
| 125 | uint8_t type; | 126 | __u8 type; |
| 126 | uint8_t unused[2]; | 127 | __u8 unused[2]; |
| 127 | jint32_t node_crc; | 128 | jint32_t node_crc; |
| 128 | jint32_t name_crc; | 129 | jint32_t name_crc; |
| 129 | uint8_t name[0]; | 130 | __u8 name[0]; |
| 130 | }; | 131 | }; |
| 131 | 132 | ||
| 132 | /* The JFFS2 raw inode structure: Used for storage on physical media. */ | 133 | /* The JFFS2 raw inode structure: Used for storage on physical media. */ |
| @@ -153,12 +154,12 @@ struct jffs2_raw_inode | |||
| 153 | jint32_t offset; /* Where to begin to write. */ | 154 | jint32_t offset; /* Where to begin to write. */ |
| 154 | jint32_t csize; /* (Compressed) data size */ | 155 | jint32_t csize; /* (Compressed) data size */ |
| 155 | jint32_t dsize; /* Size of the node's data. (after decompression) */ | 156 | jint32_t dsize; /* Size of the node's data. (after decompression) */ |
| 156 | uint8_t compr; /* Compression algorithm used */ | 157 | __u8 compr; /* Compression algorithm used */ |
| 157 | uint8_t usercompr; /* Compression algorithm requested by the user */ | 158 | __u8 usercompr; /* Compression algorithm requested by the user */ |
| 158 | jint16_t flags; /* See JFFS2_INO_FLAG_* */ | 159 | jint16_t flags; /* See JFFS2_INO_FLAG_* */ |
| 159 | jint32_t data_crc; /* CRC for the (compressed) data. */ | 160 | jint32_t data_crc; /* CRC for the (compressed) data. */ |
| 160 | jint32_t node_crc; /* CRC for the raw inode (excluding data) */ | 161 | jint32_t node_crc; /* CRC for the raw inode (excluding data) */ |
| 161 | uint8_t data[0]; | 162 | __u8 data[0]; |
| 162 | }; | 163 | }; |
| 163 | 164 | ||
| 164 | struct jffs2_raw_xattr { | 165 | struct jffs2_raw_xattr { |
| @@ -168,12 +169,12 @@ struct jffs2_raw_xattr { | |||
| 168 | jint32_t hdr_crc; | 169 | jint32_t hdr_crc; |
| 169 | jint32_t xid; /* XATTR identifier number */ | 170 | jint32_t xid; /* XATTR identifier number */ |
| 170 | jint32_t version; | 171 | jint32_t version; |
| 171 | uint8_t xprefix; | 172 | __u8 xprefix; |
| 172 | uint8_t name_len; | 173 | __u8 name_len; |
| 173 | jint16_t value_len; | 174 | jint16_t value_len; |
| 174 | jint32_t data_crc; | 175 | jint32_t data_crc; |
| 175 | jint32_t node_crc; | 176 | jint32_t node_crc; |
| 176 | uint8_t data[0]; | 177 | __u8 data[0]; |
| 177 | } __attribute__((packed)); | 178 | } __attribute__((packed)); |
| 178 | 179 | ||
| 179 | struct jffs2_raw_xref | 180 | struct jffs2_raw_xref |
diff --git a/include/mtd/inftl-user.h b/include/mtd/inftl-user.h index d409d489d900..8376bd1a9e01 100644 --- a/include/mtd/inftl-user.h +++ b/include/mtd/inftl-user.h | |||
| @@ -16,33 +16,33 @@ | |||
| 16 | /* Block Control Information */ | 16 | /* Block Control Information */ |
| 17 | 17 | ||
| 18 | struct inftl_bci { | 18 | struct inftl_bci { |
| 19 | uint8_t ECCsig[6]; | 19 | __u8 ECCsig[6]; |
| 20 | uint8_t Status; | 20 | __u8 Status; |
| 21 | uint8_t Status1; | 21 | __u8 Status1; |
| 22 | } __attribute__((packed)); | 22 | } __attribute__((packed)); |
| 23 | 23 | ||
| 24 | struct inftl_unithead1 { | 24 | struct inftl_unithead1 { |
| 25 | uint16_t virtualUnitNo; | 25 | __u16 virtualUnitNo; |
| 26 | uint16_t prevUnitNo; | 26 | __u16 prevUnitNo; |
| 27 | uint8_t ANAC; | 27 | __u8 ANAC; |
| 28 | uint8_t NACs; | 28 | __u8 NACs; |
| 29 | uint8_t parityPerField; | 29 | __u8 parityPerField; |
| 30 | uint8_t discarded; | 30 | __u8 discarded; |
| 31 | } __attribute__((packed)); | 31 | } __attribute__((packed)); |
| 32 | 32 | ||
| 33 | struct inftl_unithead2 { | 33 | struct inftl_unithead2 { |
| 34 | uint8_t parityPerField; | 34 | __u8 parityPerField; |
| 35 | uint8_t ANAC; | 35 | __u8 ANAC; |
| 36 | uint16_t prevUnitNo; | 36 | __u16 prevUnitNo; |
| 37 | uint16_t virtualUnitNo; | 37 | __u16 virtualUnitNo; |
| 38 | uint8_t NACs; | 38 | __u8 NACs; |
| 39 | uint8_t discarded; | 39 | __u8 discarded; |
| 40 | } __attribute__((packed)); | 40 | } __attribute__((packed)); |
| 41 | 41 | ||
| 42 | struct inftl_unittail { | 42 | struct inftl_unittail { |
| 43 | uint8_t Reserved[4]; | 43 | __u8 Reserved[4]; |
| 44 | uint16_t EraseMark; | 44 | __u16 EraseMark; |
| 45 | uint16_t EraseMark1; | 45 | __u16 EraseMark1; |
| 46 | } __attribute__((packed)); | 46 | } __attribute__((packed)); |
| 47 | 47 | ||
| 48 | union inftl_uci { | 48 | union inftl_uci { |
diff --git a/include/mtd/jffs2-user.h b/include/mtd/jffs2-user.h index 001685d7fa88..fa94b0eb67c1 100644 --- a/include/mtd/jffs2-user.h +++ b/include/mtd/jffs2-user.h | |||
| @@ -7,6 +7,7 @@ | |||
| 7 | 7 | ||
| 8 | /* This file is blessed for inclusion by userspace */ | 8 | /* This file is blessed for inclusion by userspace */ |
| 9 | #include <linux/jffs2.h> | 9 | #include <linux/jffs2.h> |
| 10 | #include <linux/types.h> | ||
| 10 | #include <endian.h> | 11 | #include <endian.h> |
| 11 | #include <byteswap.h> | 12 | #include <byteswap.h> |
| 12 | 13 | ||
| @@ -19,8 +20,8 @@ | |||
| 19 | 20 | ||
| 20 | extern int target_endian; | 21 | extern int target_endian; |
| 21 | 22 | ||
| 22 | #define t16(x) ({ uint16_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_16(__b); }) | 23 | #define t16(x) ({ __u16 __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_16(__b); }) |
| 23 | #define t32(x) ({ uint32_t __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_32(__b); }) | 24 | #define t32(x) ({ __u32 __b = (x); (target_endian==__BYTE_ORDER)?__b:bswap_32(__b); }) |
| 24 | 25 | ||
| 25 | #define cpu_to_je16(x) ((jint16_t){t16(x)}) | 26 | #define cpu_to_je16(x) ((jint16_t){t16(x)}) |
| 26 | #define cpu_to_je32(x) ((jint32_t){t32(x)}) | 27 | #define cpu_to_je32(x) ((jint32_t){t32(x)}) |
diff --git a/include/mtd/mtd-abi.h b/include/mtd/mtd-abi.h index fb672013299c..b6595b3c68b6 100644 --- a/include/mtd/mtd-abi.h +++ b/include/mtd/mtd-abi.h | |||
| @@ -5,14 +5,16 @@ | |||
| 5 | #ifndef __MTD_ABI_H__ | 5 | #ifndef __MTD_ABI_H__ |
| 6 | #define __MTD_ABI_H__ | 6 | #define __MTD_ABI_H__ |
| 7 | 7 | ||
| 8 | #include <linux/types.h> | ||
| 9 | |||
| 8 | struct erase_info_user { | 10 | struct erase_info_user { |
| 9 | uint32_t start; | 11 | __u32 start; |
| 10 | uint32_t length; | 12 | __u32 length; |
| 11 | }; | 13 | }; |
| 12 | 14 | ||
| 13 | struct mtd_oob_buf { | 15 | struct mtd_oob_buf { |
| 14 | uint32_t start; | 16 | __u32 start; |
| 15 | uint32_t length; | 17 | __u32 length; |
| 16 | unsigned char __user *ptr; | 18 | unsigned char __user *ptr; |
| 17 | }; | 19 | }; |
| 18 | 20 | ||
| @@ -48,30 +50,30 @@ struct mtd_oob_buf { | |||
| 48 | #define MTD_OTP_USER 2 | 50 | #define MTD_OTP_USER 2 |
| 49 | 51 | ||
| 50 | struct mtd_info_user { | 52 | struct mtd_info_user { |
| 51 | uint8_t type; | 53 | __u8 type; |
| 52 | uint32_t flags; | 54 | __u32 flags; |
| 53 | uint32_t size; // Total size of the MTD | 55 | __u32 size; // Total size of the MTD |
| 54 | uint32_t erasesize; | 56 | __u32 erasesize; |
| 55 | uint32_t writesize; | 57 | __u32 writesize; |
| 56 | uint32_t oobsize; // Amount of OOB data per block (e.g. 16) | 58 | __u32 oobsize; // Amount of OOB data per block (e.g. 16) |
| 57 | /* The below two fields are obsolete and broken, do not use them | 59 | /* The below two fields are obsolete and broken, do not use them |
| 58 | * (TODO: remove at some point) */ | 60 | * (TODO: remove at some point) */ |
| 59 | uint32_t ecctype; | 61 | __u32 ecctype; |
| 60 | uint32_t eccsize; | 62 | __u32 eccsize; |
| 61 | }; | 63 | }; |
| 62 | 64 | ||
| 63 | struct region_info_user { | 65 | struct region_info_user { |
| 64 | uint32_t offset; /* At which this region starts, | 66 | __u32 offset; /* At which this region starts, |
| 65 | * from the beginning of the MTD */ | 67 | * from the beginning of the MTD */ |
| 66 | uint32_t erasesize; /* For this region */ | 68 | __u32 erasesize; /* For this region */ |
| 67 | uint32_t numblocks; /* Number of blocks in this region */ | 69 | __u32 numblocks; /* Number of blocks in this region */ |
| 68 | uint32_t regionindex; | 70 | __u32 regionindex; |
| 69 | }; | 71 | }; |
| 70 | 72 | ||
| 71 | struct otp_info { | 73 | struct otp_info { |
| 72 | uint32_t start; | 74 | __u32 start; |
| 73 | uint32_t length; | 75 | __u32 length; |
| 74 | uint32_t locked; | 76 | __u32 locked; |
| 75 | }; | 77 | }; |
| 76 | 78 | ||
| 77 | #define MEMGETINFO _IOR('M', 1, struct mtd_info_user) | 79 | #define MEMGETINFO _IOR('M', 1, struct mtd_info_user) |
| @@ -99,15 +101,15 @@ struct otp_info { | |||
| 99 | * interfaces | 101 | * interfaces |
| 100 | */ | 102 | */ |
| 101 | struct nand_oobinfo { | 103 | struct nand_oobinfo { |
| 102 | uint32_t useecc; | 104 | __u32 useecc; |
| 103 | uint32_t eccbytes; | 105 | __u32 eccbytes; |
| 104 | uint32_t oobfree[8][2]; | 106 | __u32 oobfree[8][2]; |
| 105 | uint32_t eccpos[32]; | 107 | __u32 eccpos[32]; |
| 106 | }; | 108 | }; |
| 107 | 109 | ||
| 108 | struct nand_oobfree { | 110 | struct nand_oobfree { |
| 109 | uint32_t offset; | 111 | __u32 offset; |
| 110 | uint32_t length; | 112 | __u32 length; |
| 111 | }; | 113 | }; |
| 112 | 114 | ||
| 113 | #define MTD_MAX_OOBFREE_ENTRIES 8 | 115 | #define MTD_MAX_OOBFREE_ENTRIES 8 |
| @@ -116,9 +118,9 @@ struct nand_oobfree { | |||
| 116 | * diagnosis and to allow creation of raw images | 118 | * diagnosis and to allow creation of raw images |
| 117 | */ | 119 | */ |
| 118 | struct nand_ecclayout { | 120 | struct nand_ecclayout { |
| 119 | uint32_t eccbytes; | 121 | __u32 eccbytes; |
| 120 | uint32_t eccpos[64]; | 122 | __u32 eccpos[64]; |
| 121 | uint32_t oobavail; | 123 | __u32 oobavail; |
| 122 | struct nand_oobfree oobfree[MTD_MAX_OOBFREE_ENTRIES]; | 124 | struct nand_oobfree oobfree[MTD_MAX_OOBFREE_ENTRIES]; |
| 123 | }; | 125 | }; |
| 124 | 126 | ||
| @@ -131,10 +133,10 @@ struct nand_ecclayout { | |||
| 131 | * @bbtblocks: number of blocks reserved for bad block tables | 133 | * @bbtblocks: number of blocks reserved for bad block tables |
| 132 | */ | 134 | */ |
| 133 | struct mtd_ecc_stats { | 135 | struct mtd_ecc_stats { |
| 134 | uint32_t corrected; | 136 | __u32 corrected; |
| 135 | uint32_t failed; | 137 | __u32 failed; |
| 136 | uint32_t badblocks; | 138 | __u32 badblocks; |
| 137 | uint32_t bbtblocks; | 139 | __u32 bbtblocks; |
| 138 | }; | 140 | }; |
| 139 | 141 | ||
| 140 | /* | 142 | /* |
diff --git a/include/mtd/nftl-user.h b/include/mtd/nftl-user.h index 390d21c080aa..98e9e57f22de 100644 --- a/include/mtd/nftl-user.h +++ b/include/mtd/nftl-user.h | |||
| @@ -6,33 +6,35 @@ | |||
| 6 | #ifndef __MTD_NFTL_USER_H__ | 6 | #ifndef __MTD_NFTL_USER_H__ |
| 7 | #define __MTD_NFTL_USER_H__ | 7 | #define __MTD_NFTL_USER_H__ |
| 8 | 8 | ||
| 9 | #include <linux/types.h> | ||
| 10 | |||
| 9 | /* Block Control Information */ | 11 | /* Block Control Information */ |
| 10 | 12 | ||
| 11 | struct nftl_bci { | 13 | struct nftl_bci { |
| 12 | unsigned char ECCSig[6]; | 14 | unsigned char ECCSig[6]; |
| 13 | uint8_t Status; | 15 | __u8 Status; |
| 14 | uint8_t Status1; | 16 | __u8 Status1; |
| 15 | }__attribute__((packed)); | 17 | }__attribute__((packed)); |
| 16 | 18 | ||
| 17 | /* Unit Control Information */ | 19 | /* Unit Control Information */ |
| 18 | 20 | ||
| 19 | struct nftl_uci0 { | 21 | struct nftl_uci0 { |
| 20 | uint16_t VirtUnitNum; | 22 | __u16 VirtUnitNum; |
| 21 | uint16_t ReplUnitNum; | 23 | __u16 ReplUnitNum; |
| 22 | uint16_t SpareVirtUnitNum; | 24 | __u16 SpareVirtUnitNum; |
| 23 | uint16_t SpareReplUnitNum; | 25 | __u16 SpareReplUnitNum; |
| 24 | } __attribute__((packed)); | 26 | } __attribute__((packed)); |
| 25 | 27 | ||
| 26 | struct nftl_uci1 { | 28 | struct nftl_uci1 { |
| 27 | uint32_t WearInfo; | 29 | __u32 WearInfo; |
| 28 | uint16_t EraseMark; | 30 | __u16 EraseMark; |
| 29 | uint16_t EraseMark1; | 31 | __u16 EraseMark1; |
| 30 | } __attribute__((packed)); | 32 | } __attribute__((packed)); |
| 31 | 33 | ||
| 32 | struct nftl_uci2 { | 34 | struct nftl_uci2 { |
| 33 | uint16_t FoldMark; | 35 | __u16 FoldMark; |
| 34 | uint16_t FoldMark1; | 36 | __u16 FoldMark1; |
| 35 | uint32_t unused; | 37 | __u32 unused; |
| 36 | } __attribute__((packed)); | 38 | } __attribute__((packed)); |
| 37 | 39 | ||
| 38 | union nftl_uci { | 40 | union nftl_uci { |
| @@ -50,9 +52,9 @@ struct nftl_oob { | |||
| 50 | 52 | ||
| 51 | struct NFTLMediaHeader { | 53 | struct NFTLMediaHeader { |
| 52 | char DataOrgID[6]; | 54 | char DataOrgID[6]; |
| 53 | uint16_t NumEraseUnits; | 55 | __u16 NumEraseUnits; |
| 54 | uint16_t FirstPhysicalEUN; | 56 | __u16 FirstPhysicalEUN; |
| 55 | uint32_t FormattedSize; | 57 | __u32 FormattedSize; |
| 56 | unsigned char UnitSizeFactor; | 58 | unsigned char UnitSizeFactor; |
| 57 | } __attribute__((packed)); | 59 | } __attribute__((packed)); |
| 58 | 60 | ||
diff --git a/include/mtd/ubi-user.h b/include/mtd/ubi-user.h index 296efae3525e..466a8320f1e6 100644 --- a/include/mtd/ubi-user.h +++ b/include/mtd/ubi-user.h | |||
| @@ -21,6 +21,8 @@ | |||
| 21 | #ifndef __UBI_USER_H__ | 21 | #ifndef __UBI_USER_H__ |
| 22 | #define __UBI_USER_H__ | 22 | #define __UBI_USER_H__ |
| 23 | 23 | ||
| 24 | #include <linux/types.h> | ||
| 25 | |||
| 24 | /* | 26 | /* |
| 25 | * UBI device creation (the same as MTD device attachment) | 27 | * UBI device creation (the same as MTD device attachment) |
| 26 | * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | 28 | * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| @@ -152,7 +154,7 @@ | |||
| 152 | /* Create an UBI volume */ | 154 | /* Create an UBI volume */ |
| 153 | #define UBI_IOCMKVOL _IOW(UBI_IOC_MAGIC, 0, struct ubi_mkvol_req) | 155 | #define UBI_IOCMKVOL _IOW(UBI_IOC_MAGIC, 0, struct ubi_mkvol_req) |
| 154 | /* Remove an UBI volume */ | 156 | /* Remove an UBI volume */ |
| 155 | #define UBI_IOCRMVOL _IOW(UBI_IOC_MAGIC, 1, int32_t) | 157 | #define UBI_IOCRMVOL _IOW(UBI_IOC_MAGIC, 1, __s32) |
| 156 | /* Re-size an UBI volume */ | 158 | /* Re-size an UBI volume */ |
| 157 | #define UBI_IOCRSVOL _IOW(UBI_IOC_MAGIC, 2, struct ubi_rsvol_req) | 159 | #define UBI_IOCRSVOL _IOW(UBI_IOC_MAGIC, 2, struct ubi_rsvol_req) |
| 158 | /* Re-name volumes */ | 160 | /* Re-name volumes */ |
| @@ -165,24 +167,24 @@ | |||
| 165 | /* Attach an MTD device */ | 167 | /* Attach an MTD device */ |
| 166 | #define UBI_IOCATT _IOW(UBI_CTRL_IOC_MAGIC, 64, struct ubi_attach_req) | 168 | #define UBI_IOCATT _IOW(UBI_CTRL_IOC_MAGIC, 64, struct ubi_attach_req) |
| 167 | /* Detach an MTD device */ | 169 | /* Detach an MTD device */ |
| 168 | #define UBI_IOCDET _IOW(UBI_CTRL_IOC_MAGIC, 65, int32_t) | 170 | #define UBI_IOCDET _IOW(UBI_CTRL_IOC_MAGIC, 65, __s32) |
| 169 | 171 | ||
| 170 | /* ioctl commands of UBI volume character devices */ | 172 | /* ioctl commands of UBI volume character devices */ |
| 171 | 173 | ||
| 172 | #define UBI_VOL_IOC_MAGIC 'O' | 174 | #define UBI_VOL_IOC_MAGIC 'O' |
| 173 | 175 | ||
| 174 | /* Start UBI volume update */ | 176 | /* Start UBI volume update */ |
| 175 | #define UBI_IOCVOLUP _IOW(UBI_VOL_IOC_MAGIC, 0, int64_t) | 177 | #define UBI_IOCVOLUP _IOW(UBI_VOL_IOC_MAGIC, 0, __s64) |
| 176 | /* LEB erasure command, used for debugging, disabled by default */ | 178 | /* LEB erasure command, used for debugging, disabled by default */ |
| 177 | #define UBI_IOCEBER _IOW(UBI_VOL_IOC_MAGIC, 1, int32_t) | 179 | #define UBI_IOCEBER _IOW(UBI_VOL_IOC_MAGIC, 1, __s32) |
| 178 | /* Atomic LEB change command */ | 180 | /* Atomic LEB change command */ |
| 179 | #define UBI_IOCEBCH _IOW(UBI_VOL_IOC_MAGIC, 2, int32_t) | 181 | #define UBI_IOCEBCH _IOW(UBI_VOL_IOC_MAGIC, 2, __s32) |
| 180 | /* Map LEB command */ | 182 | /* Map LEB command */ |
| 181 | #define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req) | 183 | #define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req) |
| 182 | /* Unmap LEB command */ | 184 | /* Unmap LEB command */ |
| 183 | #define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, int32_t) | 185 | #define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, __s32) |
| 184 | /* Check if LEB is mapped command */ | 186 | /* Check if LEB is mapped command */ |
| 185 | #define UBI_IOCEBISMAP _IOR(UBI_VOL_IOC_MAGIC, 5, int32_t) | 187 | #define UBI_IOCEBISMAP _IOR(UBI_VOL_IOC_MAGIC, 5, __s32) |
| 186 | /* Set an UBI volume property */ | 188 | /* Set an UBI volume property */ |
| 187 | #define UBI_IOCSETPROP _IOW(UBI_VOL_IOC_MAGIC, 6, struct ubi_set_prop_req) | 189 | #define UBI_IOCSETPROP _IOW(UBI_VOL_IOC_MAGIC, 6, struct ubi_set_prop_req) |
| 188 | 190 | ||
| @@ -260,10 +262,10 @@ enum { | |||
| 260 | * sub-page of the first page and add needed padding. | 262 | * sub-page of the first page and add needed padding. |
| 261 | */ | 263 | */ |
| 262 | struct ubi_attach_req { | 264 | struct ubi_attach_req { |
| 263 | int32_t ubi_num; | 265 | __s32 ubi_num; |
| 264 | int32_t mtd_num; | 266 | __s32 mtd_num; |
| 265 | int32_t vid_hdr_offset; | 267 | __s32 vid_hdr_offset; |
| 266 | int8_t padding[12]; | 268 | __s8 padding[12]; |
| 267 | }; | 269 | }; |
| 268 | 270 | ||
| 269 | /** | 271 | /** |
| @@ -298,13 +300,13 @@ struct ubi_attach_req { | |||
| 298 | * BLOBs, without caring about how to properly align them. | 300 | * BLOBs, without caring about how to properly align them. |
| 299 | */ | 301 | */ |
| 300 | struct ubi_mkvol_req { | 302 | struct ubi_mkvol_req { |
| 301 | int32_t vol_id; | 303 | __s32 vol_id; |
| 302 | int32_t alignment; | 304 | __s32 alignment; |
| 303 | int64_t bytes; | 305 | __s64 bytes; |
| 304 | int8_t vol_type; | 306 | __s8 vol_type; |
| 305 | int8_t padding1; | 307 | __s8 padding1; |
| 306 | int16_t name_len; | 308 | __s16 name_len; |
| 307 | int8_t padding2[4]; | 309 | __s8 padding2[4]; |
| 308 | char name[UBI_MAX_VOLUME_NAME + 1]; | 310 | char name[UBI_MAX_VOLUME_NAME + 1]; |
| 309 | } __attribute__ ((packed)); | 311 | } __attribute__ ((packed)); |
| 310 | 312 | ||
| @@ -320,8 +322,8 @@ struct ubi_mkvol_req { | |||
| 320 | * zero number of bytes). | 322 | * zero number of bytes). |
| 321 | */ | 323 | */ |
| 322 | struct ubi_rsvol_req { | 324 | struct ubi_rsvol_req { |
| 323 | int64_t bytes; | 325 | __s64 bytes; |
| 324 | int32_t vol_id; | 326 | __s32 vol_id; |
| 325 | } __attribute__ ((packed)); | 327 | } __attribute__ ((packed)); |
| 326 | 328 | ||
| 327 | /** | 329 | /** |
| @@ -356,12 +358,12 @@ struct ubi_rsvol_req { | |||
| 356 | * re-name request. | 358 | * re-name request. |
| 357 | */ | 359 | */ |
| 358 | struct ubi_rnvol_req { | 360 | struct ubi_rnvol_req { |
| 359 | int32_t count; | 361 | __s32 count; |
| 360 | int8_t padding1[12]; | 362 | __s8 padding1[12]; |
| 361 | struct { | 363 | struct { |
| 362 | int32_t vol_id; | 364 | __s32 vol_id; |
| 363 | int16_t name_len; | 365 | __s16 name_len; |
| 364 | int8_t padding2[2]; | 366 | __s8 padding2[2]; |
| 365 | char name[UBI_MAX_VOLUME_NAME + 1]; | 367 | char name[UBI_MAX_VOLUME_NAME + 1]; |
| 366 | } ents[UBI_MAX_RNVOL]; | 368 | } ents[UBI_MAX_RNVOL]; |
| 367 | } __attribute__ ((packed)); | 369 | } __attribute__ ((packed)); |
| @@ -375,10 +377,10 @@ struct ubi_rnvol_req { | |||
| 375 | * @padding: reserved for future, not used, has to be zeroed | 377 | * @padding: reserved for future, not used, has to be zeroed |
| 376 | */ | 378 | */ |
| 377 | struct ubi_leb_change_req { | 379 | struct ubi_leb_change_req { |
| 378 | int32_t lnum; | 380 | __s32 lnum; |
| 379 | int32_t bytes; | 381 | __s32 bytes; |
| 380 | int8_t dtype; | 382 | __s8 dtype; |
| 381 | int8_t padding[7]; | 383 | __s8 padding[7]; |
| 382 | } __attribute__ ((packed)); | 384 | } __attribute__ ((packed)); |
| 383 | 385 | ||
| 384 | /** | 386 | /** |
| @@ -388,9 +390,9 @@ struct ubi_leb_change_req { | |||
| 388 | * @padding: reserved for future, not used, has to be zeroed | 390 | * @padding: reserved for future, not used, has to be zeroed |
| 389 | */ | 391 | */ |
| 390 | struct ubi_map_req { | 392 | struct ubi_map_req { |
| 391 | int32_t lnum; | 393 | __s32 lnum; |
| 392 | int8_t dtype; | 394 | __s8 dtype; |
| 393 | int8_t padding[3]; | 395 | __s8 padding[3]; |
| 394 | } __attribute__ ((packed)); | 396 | } __attribute__ ((packed)); |
| 395 | 397 | ||
| 396 | 398 | ||
| @@ -402,9 +404,9 @@ struct ubi_map_req { | |||
| 402 | * @value: value to set | 404 | * @value: value to set |
| 403 | */ | 405 | */ |
| 404 | struct ubi_set_prop_req { | 406 | struct ubi_set_prop_req { |
| 405 | uint8_t property; | 407 | __u8 property; |
| 406 | uint8_t padding[7]; | 408 | __u8 padding[7]; |
| 407 | uint64_t value; | 409 | __u64 value; |
| 408 | } __attribute__ ((packed)); | 410 | } __attribute__ ((packed)); |
| 409 | 411 | ||
| 410 | #endif /* __UBI_USER_H__ */ | 412 | #endif /* __UBI_USER_H__ */ |
