1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/**************************************************************************** 2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** This header was automatically generated from a Linux kernel header 5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** of the same name, to make information necessary for userspace to 6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** call into the kernel available to libc. It contains only constants, 7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** structures, and macros generated from the original header, and thus, 8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** contains no copyrightable information. 9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** To edit the content of this header, modify the corresponding 11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** source file (e.g. under external/kernel-headers/original/) then 12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** run bionic/libc/kernel/tools/update_all.py 13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** Any manual change here will be lost the next time this script will 15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** be run. You've been warned! 16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/ 19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef AFFS_HARDBLOCKS_H 20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define AFFS_HARDBLOCKS_H 21655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/types.h> 22655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct RigidDiskBlock { 23d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_ID; 24d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 rdb_SummedLongs; 25d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 rdb_ChkSum; 26d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_HostID; 27d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 rdb_BlockBytes; 28d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Flags; 29d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_BadBlockList; 30d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 rdb_PartitionList; 31d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_FileSysHeaderList; 32d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_DriveInit; 33d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Reserved1[6]; 34d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Cylinders; 35d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Sectors; 36d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Heads; 37d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Interleave; 38d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Park; 39d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Reserved2[3]; 40d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_WritePreComp; 41d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_ReducedWrite; 42d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_StepRate; 43d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Reserved3[5]; 44d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_RDBBlocksLo; 45d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_RDBBlocksHi; 46d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_LoCylinder; 47d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_HiCylinder; 48d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_CylBlocks; 49d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_AutoParkSeconds; 50d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_HighRDSKBlock; 51d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Reserved4; 52d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char rdb_DiskVendor[8]; 53d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char rdb_DiskProduct[16]; 54d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char rdb_DiskRevision[4]; 55d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char rdb_ControllerVendor[8]; 56d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char rdb_ControllerProduct[16]; 57d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char rdb_ControllerRevision[4]; 58d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 rdb_Reserved5[10]; 59655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 60655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define IDNAME_RIGIDDISK 0x5244534B 61655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct PartitionBlock { 62d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 pb_ID; 63d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 pb_SummedLongs; 64d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 pb_ChkSum; 65d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 pb_HostID; 66d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 pb_Next; 67d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 pb_Flags; 68d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 pb_Reserved1[2]; 69d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 pb_DevFlags; 70d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u8 pb_DriveName[32]; 71d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 pb_Reserved2[15]; 72d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __be32 pb_Environment[17]; 73d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u32 pb_EReserved[15]; 74655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 75655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define IDNAME_PARTITION 0x50415254 76655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define RDB_ALLOCATION_LIMIT 16 77655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif 78