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