aboutsummaryrefslogtreecommitdiffstats
path: root/include/uapi/linux/msdos_fs.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/uapi/linux/msdos_fs.h')
-rw-r--r--include/uapi/linux/msdos_fs.h38
1 files changed, 30 insertions, 8 deletions
diff --git a/include/uapi/linux/msdos_fs.h b/include/uapi/linux/msdos_fs.h
index 996719f82e28..f055e58b3147 100644
--- a/include/uapi/linux/msdos_fs.h
+++ b/include/uapi/linux/msdos_fs.h
@@ -87,6 +87,8 @@
87#define IS_FSINFO(x) (le32_to_cpu((x)->signature1) == FAT_FSINFO_SIG1 \ 87#define IS_FSINFO(x) (le32_to_cpu((x)->signature1) == FAT_FSINFO_SIG1 \
88 && le32_to_cpu((x)->signature2) == FAT_FSINFO_SIG2) 88 && le32_to_cpu((x)->signature2) == FAT_FSINFO_SIG2)
89 89
90#define FAT_STATE_DIRTY 0x01
91
90struct __fat_dirent { 92struct __fat_dirent {
91 long d_ino; 93 long d_ino;
92 __kernel_off_t d_off; 94 __kernel_off_t d_off;
@@ -120,14 +122,34 @@ struct fat_boot_sector {
120 __le32 hidden; /* hidden sectors (unused) */ 122 __le32 hidden; /* hidden sectors (unused) */
121 __le32 total_sect; /* number of sectors (if sectors == 0) */ 123 __le32 total_sect; /* number of sectors (if sectors == 0) */
122 124
123 /* The following fields are only used by FAT32 */ 125 union {
124 __le32 fat32_length; /* sectors/FAT */ 126 struct {
125 __le16 flags; /* bit 8: fat mirroring, low 4: active fat */ 127 /* Extended BPB Fields for FAT16 */
126 __u8 version[2]; /* major, minor filesystem version */ 128 __u8 drive_number; /* Physical drive number */
127 __le32 root_cluster; /* first cluster in root directory */ 129 __u8 state; /* undocumented, but used
128 __le16 info_sector; /* filesystem info sector */ 130 for mount state. */
129 __le16 backup_boot; /* backup boot sector */ 131 /* other fiealds are not added here */
130 __le16 reserved2[6]; /* Unused */ 132 } fat16;
133
134 struct {
135 /* only used by FAT32 */
136 __le32 length; /* sectors/FAT */
137 __le16 flags; /* bit 8: fat mirroring,
138 low 4: active fat */
139 __u8 version[2]; /* major, minor filesystem
140 version */
141 __le32 root_cluster; /* first cluster in
142 root directory */
143 __le16 info_sector; /* filesystem info sector */
144 __le16 backup_boot; /* backup boot sector */
145 __le16 reserved2[6]; /* Unused */
146 /* Extended BPB Fields for FAT32 */
147 __u8 drive_number; /* Physical drive number */
148 __u8 state; /* undocumented, but used
149 for mount state. */
150 /* other fiealds are not added here */
151 } fat32;
152 };
131}; 153};
132 154
133struct fat_boot_fsinfo { 155struct fat_boot_fsinfo {