130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#ifndef _UAPI_ADFS_FS_H
230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define _UAPI_ADFS_FS_H
330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng
430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#include <linux/types.h>
530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#include <linux/magic.h>
630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng
730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng/*
830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng * Disc Record at disc address 0xc00
930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng */
1030692c65c4174412c90e79489e98ab85c1a7412fBen Chengstruct adfs_discrecord {
1130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  log2secsize;
1230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  secspertrack;
1330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  heads;
1430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  density;
1530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  idlen;
1630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  log2bpmb;
1730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  skew;
1830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  bootoption;
1930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  lowsector;
2030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  nzones;
2130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le16 zone_spare;
2230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le32 root;
2330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le32 disc_size;
2430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le16 disc_id;
2530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  disc_name[10];
2630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le32 disc_type;
2730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le32 disc_size_high;
2830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  log2sharesize:4;
2930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  unused40:4;
3030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  big_flag:1;
3130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  unused41:1;
3230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  nzones_high;
3330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le32 format_version;
3430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __le32 root_size;
3530692c65c4174412c90e79489e98ab85c1a7412fBen Cheng    __u8  unused52[60 - 52];
3630692c65c4174412c90e79489e98ab85c1a7412fBen Cheng};
3730692c65c4174412c90e79489e98ab85c1a7412fBen Cheng
3830692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define ADFS_DISCRECORD		(0xc00)
3930692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define ADFS_DR_OFFSET		(0x1c0)
4030692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define ADFS_DR_SIZE		 60
4130692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#define ADFS_DR_SIZE_BITS	(ADFS_DR_SIZE << 3)
4230692c65c4174412c90e79489e98ab85c1a7412fBen Cheng
4330692c65c4174412c90e79489e98ab85c1a7412fBen Cheng
4430692c65c4174412c90e79489e98ab85c1a7412fBen Cheng#endif /* _UAPI_ADFS_FS_H */
45