1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef AFFS_HARDBLOCKS_H
3 #define AFFS_HARDBLOCKS_H
5 #include <linux/types.h>
7 /* Just the needed definitions for the RDB of an Amiga HD. */
9 struct RigidDiskBlock {
11 __be32 rdb_SummedLongs;
14 __be32 rdb_BlockBytes;
16 __be32 rdb_BadBlockList;
17 __be32 rdb_PartitionList;
18 __be32 rdb_FileSysHeaderList;
20 __be32 rdb_Reserved1[6];
24 __be32 rdb_Interleave;
26 __be32 rdb_Reserved2[3];
27 __be32 rdb_WritePreComp;
28 __be32 rdb_ReducedWrite;
30 __be32 rdb_Reserved3[5];
31 __be32 rdb_RDBBlocksLo;
32 __be32 rdb_RDBBlocksHi;
33 __be32 rdb_LoCylinder;
34 __be32 rdb_HiCylinder;
36 __be32 rdb_AutoParkSeconds;
37 __be32 rdb_HighRDSKBlock;
39 char rdb_DiskVendor[8];
40 char rdb_DiskProduct[16];
41 char rdb_DiskRevision[4];
42 char rdb_ControllerVendor[8];
43 char rdb_ControllerProduct[16];
44 char rdb_ControllerRevision[4];
45 __be32 rdb_Reserved5[10];
48 #define IDNAME_RIGIDDISK 0x5244534B /* "RDSK" */
50 struct PartitionBlock {
52 __be32 pb_SummedLongs;
57 __be32 pb_Reserved1[2];
59 __u8 pb_DriveName[32];
60 __be32 pb_Reserved2[15];
61 __be32 pb_Environment[17];
62 __be32 pb_EReserved[15];
65 #define IDNAME_PARTITION 0x50415254 /* "PART" */
67 #define RDB_ALLOCATION_LIMIT 16
69 #endif /* AFFS_HARDBLOCKS_H */