diff options
Diffstat (limited to 'include/uapi/linux/msdos_fs.h')
-rw-r--r-- | include/uapi/linux/msdos_fs.h | 38 |
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 | |||
90 | struct __fat_dirent { | 92 | struct __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 | ||
133 | struct fat_boot_fsinfo { | 155 | struct fat_boot_fsinfo { |