blob: 3fb869939d82484a9947d6860e3fe490b2d4efdf [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef AFFS_HARDBLOCKS_H
2#define AFFS_HARDBLOCKS_H
3
4/* Just the needed definitions for the RDB of an Amiga HD. */
5
6struct RigidDiskBlock {
7 u32 rdb_ID;
8 __be32 rdb_SummedLongs;
9 s32 rdb_ChkSum;
10 u32 rdb_HostID;
11 __be32 rdb_BlockBytes;
12 u32 rdb_Flags;
13 u32 rdb_BadBlockList;
14 __be32 rdb_PartitionList;
15 u32 rdb_FileSysHeaderList;
16 u32 rdb_DriveInit;
17 u32 rdb_Reserved1[6];
18 u32 rdb_Cylinders;
19 u32 rdb_Sectors;
20 u32 rdb_Heads;
21 u32 rdb_Interleave;
22 u32 rdb_Park;
23 u32 rdb_Reserved2[3];
24 u32 rdb_WritePreComp;
25 u32 rdb_ReducedWrite;
26 u32 rdb_StepRate;
27 u32 rdb_Reserved3[5];
28 u32 rdb_RDBBlocksLo;
29 u32 rdb_RDBBlocksHi;
30 u32 rdb_LoCylinder;
31 u32 rdb_HiCylinder;
32 u32 rdb_CylBlocks;
33 u32 rdb_AutoParkSeconds;
34 u32 rdb_HighRDSKBlock;
35 u32 rdb_Reserved4;
36 char rdb_DiskVendor[8];
37 char rdb_DiskProduct[16];
38 char rdb_DiskRevision[4];
39 char rdb_ControllerVendor[8];
40 char rdb_ControllerProduct[16];
41 char rdb_ControllerRevision[4];
42 u32 rdb_Reserved5[10];
43};
44
45#define IDNAME_RIGIDDISK 0x5244534B /* "RDSK" */
46
47struct PartitionBlock {
48 __be32 pb_ID;
49 __be32 pb_SummedLongs;
50 s32 pb_ChkSum;
51 u32 pb_HostID;
52 __be32 pb_Next;
53 u32 pb_Flags;
54 u32 pb_Reserved1[2];
55 u32 pb_DevFlags;
56 u8 pb_DriveName[32];
57 u32 pb_Reserved2[15];
58 __be32 pb_Environment[17];
59 u32 pb_EReserved[15];
60};
61
62#define IDNAME_PARTITION 0x50415254 /* "PART" */
63
64#define RDB_ALLOCATION_LIMIT 16
65
66#endif /* AFFS_HARDBLOCKS_H */