X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/6601e61aa18bf4f09af135ff61fc7f4771d23b06..0c530ab8987f0ae6a1a3d9284f40182b88852816:/bsd/sys/disk.h?ds=sidebyside diff --git a/bsd/sys/disk.h b/bsd/sys/disk.h index 6e3d535ef..f7e627b64 100644 --- a/bsd/sys/disk.h +++ b/bsd/sys/disk.h @@ -30,34 +30,36 @@ /* * Definitions * - * ioctl description - * -------------------------------- -------------------------------------------- - * DKIOCEJECT eject media - * DKIOCSYNCHRONIZECACHE flush media + * ioctl description + * ------------------------------------- --------------------------------------- + * DKIOCEJECT eject media + * DKIOCSYNCHRONIZECACHE flush media * - * DKIOCFORMAT format media - * DKIOCGETFORMATCAPACITIES get media's formattable capacities + * DKIOCFORMAT format media + * DKIOCGETFORMATCAPACITIES get media's formattable capacities * - * DKIOCGETBLOCKSIZE get media's block size - * DKIOCGETBLOCKCOUNT get media's block count - * DKIOCGETFIRMWAREPATH get media's firmware path + * DKIOCGETBLOCKSIZE get media's block size + * DKIOCGETBLOCKCOUNT get media's block count + * DKIOCGETFIRMWAREPATH get media's firmware path * - * DKIOCISFORMATTED is media formatted? - * DKIOCISWRITABLE is media writable? + * DKIOCISFORMATTED is media formatted? + * DKIOCISWRITABLE is media writable? * - * DKIOCGETMAXBLOCKCOUNTREAD get maximum block count for reads - * DKIOCGETMAXBLOCKCOUNTWRITE get maximum block count for writes - * DKIOCGETMAXBYTECOUNTREAD get maximum byte count for reads - * DKIOCGETMAXBYTECOUNTWRITE get maximum byte count for writes - * DKIOCGETMAXSEGMENTCOUNTREAD get maximum segment count for reads - * DKIOCGETMAXSEGMENTCOUNTWRITE get maximum segment count for writes - * DKIOCGETMAXSEGMENTBYTECOUNTREAD get maximum segment byte count for reads - * DKIOCGETMAXSEGMENTBYTECOUNTWRITE get maximum segment byte count for writes + * DKIOCGETMAXBLOCKCOUNTREAD get maximum block count for reads + * DKIOCGETMAXBLOCKCOUNTWRITE get maximum block count for writes + * DKIOCGETMAXBYTECOUNTREAD get maximum byte count for reads + * DKIOCGETMAXBYTECOUNTWRITE get maximum byte count for writes + * + * DKIOCGETMAXSEGMENTCOUNTREAD get maximum segment count for reads + * DKIOCGETMAXSEGMENTCOUNTWRITE get maximum segment count for writes + * DKIOCGETMAXSEGMENTBYTECOUNTREAD get maximum segment byte count for reads + * DKIOCGETMAXSEGMENTBYTECOUNTWRITE get maximum segment byte count for writes + * + * DKIOCGETMINSEGMENTALIGNMENTBYTECOUNT get minimum segment alignment in bytes + * DKIOCGETMAXSEGMENTADDRESSABLEBITCOUNT get maximum segment width in bits */ -#if __DARWIN_ALIGN_POWER -#pragma options align=power -#endif +#pragma pack(4) typedef struct { @@ -81,38 +83,40 @@ typedef struct u_int8_t reserved0064[8]; /* reserved, clear to zero */ } dk_format_capacities_t; -#if __DARWIN_ALIGN_POWER -#pragma options align=reset -#endif +#pragma pack() + +#define DKIOCEJECT _IO('d', 21) +#define DKIOCSYNCHRONIZECACHE _IO('d', 22) + +#define DKIOCFORMAT _IOW('d', 26, dk_format_capacity_t) +#define DKIOCGETFORMATCAPACITIES _IOWR('d', 26, dk_format_capacities_t) -#define DKIOCEJECT _IO('d', 21) -#define DKIOCSYNCHRONIZECACHE _IO('d', 22) +#define DKIOCGETBLOCKSIZE _IOR('d', 24, u_int32_t) +#define DKIOCGETBLOCKCOUNT _IOR('d', 25, u_int64_t) +#define DKIOCGETFIRMWAREPATH _IOR('d', 28, dk_firmware_path_t) -#define DKIOCFORMAT _IOW('d', 26, dk_format_capacity_t) -#define DKIOCGETFORMATCAPACITIES _IOWR('d', 26, dk_format_capacities_t) +#define DKIOCISFORMATTED _IOR('d', 23, u_int32_t) +#define DKIOCISWRITABLE _IOR('d', 29, u_int32_t) -#define DKIOCGETBLOCKSIZE _IOR('d', 24, u_int32_t) -#define DKIOCGETBLOCKCOUNT _IOR('d', 25, u_int64_t) -#define DKIOCGETFIRMWAREPATH _IOR('d', 28, dk_firmware_path_t) +#define DKIOCGETMAXBLOCKCOUNTREAD _IOR('d', 64, u_int64_t) +#define DKIOCGETMAXBLOCKCOUNTWRITE _IOR('d', 65, u_int64_t) +#define DKIOCGETMAXBYTECOUNTREAD _IOR('d', 70, u_int64_t) +#define DKIOCGETMAXBYTECOUNTWRITE _IOR('d', 71, u_int64_t) -#define DKIOCISFORMATTED _IOR('d', 23, u_int32_t) -#define DKIOCISWRITABLE _IOR('d', 29, u_int32_t) +#define DKIOCGETMAXSEGMENTCOUNTREAD _IOR('d', 66, u_int64_t) +#define DKIOCGETMAXSEGMENTCOUNTWRITE _IOR('d', 67, u_int64_t) +#define DKIOCGETMAXSEGMENTBYTECOUNTREAD _IOR('d', 68, u_int64_t) +#define DKIOCGETMAXSEGMENTBYTECOUNTWRITE _IOR('d', 69, u_int64_t) -#define DKIOCGETMAXBLOCKCOUNTREAD _IOR('d', 64, u_int64_t) -#define DKIOCGETMAXBLOCKCOUNTWRITE _IOR('d', 65, u_int64_t) -#define DKIOCGETMAXBYTECOUNTREAD _IOR('d', 70, u_int64_t) -#define DKIOCGETMAXBYTECOUNTWRITE _IOR('d', 71, u_int64_t) -#define DKIOCGETMAXSEGMENTCOUNTREAD _IOR('d', 66, u_int64_t) -#define DKIOCGETMAXSEGMENTCOUNTWRITE _IOR('d', 67, u_int64_t) -#define DKIOCGETMAXSEGMENTBYTECOUNTREAD _IOR('d', 68, u_int64_t) -#define DKIOCGETMAXSEGMENTBYTECOUNTWRITE _IOR('d', 69, u_int64_t) +#define DKIOCGETMINSEGMENTALIGNMENTBYTECOUNT _IOR('d', 74, u_int64_t) +#define DKIOCGETMAXSEGMENTADDRESSABLEBITCOUNT _IOR('d', 75, u_int64_t) #ifdef KERNEL -#define DKIOCGETBLOCKCOUNT32 _IOR('d', 25, u_int32_t) -#define DKIOCSETBLOCKSIZE _IOW('d', 24, u_int32_t) -#define DKIOCGETBSDUNIT _IOR('d', 27, u_int32_t) -#define DKIOCISVIRTUAL _IOR('d', 72, u_int32_t) -#define DKIOCGETBASE _IOR('d', 73, u_int64_t) +#define DKIOCGETBLOCKCOUNT32 _IOR('d', 25, u_int32_t) +#define DKIOCSETBLOCKSIZE _IOW('d', 24, u_int32_t) +#define DKIOCGETBSDUNIT _IOR('d', 27, u_int32_t) +#define DKIOCISVIRTUAL _IOR('d', 72, u_int32_t) +#define DKIOCGETBASE _IOR('d', 73, u_int64_t) #endif /* KERNEL */ #endif /* _SYS_DISK_H_ */