1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux << 2 #ifndef AFFS_HARDBLOCKS_H 1 #ifndef AFFS_HARDBLOCKS_H 3 #define AFFS_HARDBLOCKS_H 2 #define AFFS_HARDBLOCKS_H 4 3 5 #include <linux/types.h> 4 #include <linux/types.h> 6 5 7 /* Just the needed definitions for the RDB of 6 /* Just the needed definitions for the RDB of an Amiga HD. */ 8 7 9 struct RigidDiskBlock { 8 struct RigidDiskBlock { 10 __be32 rdb_ID; !! 9 __u32 rdb_ID; 11 __be32 rdb_SummedLongs; 10 __be32 rdb_SummedLongs; 12 __be32 rdb_ChkSum; !! 11 __s32 rdb_ChkSum; 13 __be32 rdb_HostID; !! 12 __u32 rdb_HostID; 14 __be32 rdb_BlockBytes; 13 __be32 rdb_BlockBytes; 15 __be32 rdb_Flags; !! 14 __u32 rdb_Flags; 16 __be32 rdb_BadBlockList; !! 15 __u32 rdb_BadBlockList; 17 __be32 rdb_PartitionList; 16 __be32 rdb_PartitionList; 18 __be32 rdb_FileSysHeaderList; !! 17 __u32 rdb_FileSysHeaderList; 19 __be32 rdb_DriveInit; !! 18 __u32 rdb_DriveInit; 20 __be32 rdb_Reserved1[6]; !! 19 __u32 rdb_Reserved1[6]; 21 __be32 rdb_Cylinders; !! 20 __u32 rdb_Cylinders; 22 __be32 rdb_Sectors; !! 21 __u32 rdb_Sectors; 23 __be32 rdb_Heads; !! 22 __u32 rdb_Heads; 24 __be32 rdb_Interleave; !! 23 __u32 rdb_Interleave; 25 __be32 rdb_Park; !! 24 __u32 rdb_Park; 26 __be32 rdb_Reserved2[3]; !! 25 __u32 rdb_Reserved2[3]; 27 __be32 rdb_WritePreComp; !! 26 __u32 rdb_WritePreComp; 28 __be32 rdb_ReducedWrite; !! 27 __u32 rdb_ReducedWrite; 29 __be32 rdb_StepRate; !! 28 __u32 rdb_StepRate; 30 __be32 rdb_Reserved3[5]; !! 29 __u32 rdb_Reserved3[5]; 31 __be32 rdb_RDBBlocksLo; !! 30 __u32 rdb_RDBBlocksLo; 32 __be32 rdb_RDBBlocksHi; !! 31 __u32 rdb_RDBBlocksHi; 33 __be32 rdb_LoCylinder; !! 32 __u32 rdb_LoCylinder; 34 __be32 rdb_HiCylinder; !! 33 __u32 rdb_HiCylinder; 35 __be32 rdb_CylBlocks; !! 34 __u32 rdb_CylBlocks; 36 __be32 rdb_AutoParkSeconds; !! 35 __u32 rdb_AutoParkSeconds; 37 __be32 rdb_HighRDSKBlock; !! 36 __u32 rdb_HighRDSKBlock; 38 __be32 rdb_Reserved4; !! 37 __u32 rdb_Reserved4; 39 char rdb_DiskVendor[8]; 38 char rdb_DiskVendor[8]; 40 char rdb_DiskProduct[16]; 39 char rdb_DiskProduct[16]; 41 char rdb_DiskRevision[4]; 40 char rdb_DiskRevision[4]; 42 char rdb_ControllerVendor[8]; 41 char rdb_ControllerVendor[8]; 43 char rdb_ControllerProduct[16]; 42 char rdb_ControllerProduct[16]; 44 char rdb_ControllerRevision[4]; 43 char rdb_ControllerRevision[4]; 45 __be32 rdb_Reserved5[10]; !! 44 __u32 rdb_Reserved5[10]; 46 }; 45 }; 47 46 48 #define IDNAME_RIGIDDISK 0x5244534B 47 #define IDNAME_RIGIDDISK 0x5244534B /* "RDSK" */ 49 48 50 struct PartitionBlock { 49 struct PartitionBlock { 51 __be32 pb_ID; 50 __be32 pb_ID; 52 __be32 pb_SummedLongs; 51 __be32 pb_SummedLongs; 53 __be32 pb_ChkSum; !! 52 __s32 pb_ChkSum; 54 __be32 pb_HostID; !! 53 __u32 pb_HostID; 55 __be32 pb_Next; 54 __be32 pb_Next; 56 __be32 pb_Flags; !! 55 __u32 pb_Flags; 57 __be32 pb_Reserved1[2]; !! 56 __u32 pb_Reserved1[2]; 58 __be32 pb_DevFlags; !! 57 __u32 pb_DevFlags; 59 __u8 pb_DriveName[32]; 58 __u8 pb_DriveName[32]; 60 __be32 pb_Reserved2[15]; !! 59 __u32 pb_Reserved2[15]; 61 __be32 pb_Environment[17]; 60 __be32 pb_Environment[17]; 62 __be32 pb_EReserved[15]; !! 61 __u32 pb_EReserved[15]; 63 }; 62 }; 64 63 65 #define IDNAME_PARTITION 0x50415254 64 #define IDNAME_PARTITION 0x50415254 /* "PART" */ 66 65 67 #define RDB_ALLOCATION_LIMIT 16 66 #define RDB_ALLOCATION_LIMIT 16 68 67 69 #endif /* AFFS_HARDBLOCKS_H */ 68 #endif /* AFFS_HARDBLOCKS_H */ 70 69
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.