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 */