1 #ifndef AFFS_HARDBLOCKS_H
2 #define AFFS_HARDBLOCKS_H
4 #include <linux/types.h>
6 /* Just the needed definitions for the RDB of an Amiga HD. */
8 struct RigidDiskBlock {
10 __be32 rdb_SummedLongs;
13 __be32 rdb_BlockBytes;
15 __u32 rdb_BadBlockList;
16 __be32 rdb_PartitionList;
17 __u32 rdb_FileSysHeaderList;
19 __u32 rdb_Reserved1[6];
25 __u32 rdb_Reserved2[3];
26 __u32 rdb_WritePreComp;
27 __u32 rdb_ReducedWrite;
29 __u32 rdb_Reserved3[5];
30 __u32 rdb_RDBBlocksLo;
31 __u32 rdb_RDBBlocksHi;
35 __u32 rdb_AutoParkSeconds;
36 __u32 rdb_HighRDSKBlock;
38 char rdb_DiskVendor[8];
39 char rdb_DiskProduct[16];
40 char rdb_DiskRevision[4];
41 char rdb_ControllerVendor[8];
42 char rdb_ControllerProduct[16];
43 char rdb_ControllerRevision[4];
44 __u32 rdb_Reserved5[10];
47 #define IDNAME_RIGIDDISK 0x5244534B /* "RDSK" */
49 struct PartitionBlock {
51 __be32 pb_SummedLongs;
56 __u32 pb_Reserved1[2];
58 __u8 pb_DriveName[32];
59 __u32 pb_Reserved2[15];
60 __be32 pb_Environment[17];
61 __u32 pb_EReserved[15];
64 #define IDNAME_PARTITION 0x50415254 /* "PART" */
66 #define RDB_ALLOCATION_LIMIT 16
68 #endif /* AFFS_HARDBLOCKS_H */