Mac Developer Library

Developer

SCSICmds_READ_CAPACITY_Definitions.h Reference

Options
Deployment Target:

On This Page

SCSICmds_READ_CAPACITY_Definitions.h Reference

Inheritance


Not Applicable

Conforms To


Not Applicable

Import Statement


Not Applicable

Objective-C

@import IOKit;

This file contains all definitions for the data returned from the READ CAPACITY 10 (0x25) and READ CAPACITY 16 (0x9E) commands.

Included Headers

  • <IOKit/IOTypes.h>

  • <CoreFoundation/CoreFoundation.h>

Data Types

See the Overview section above for header-level documentation.

  • Declaration

    Objective-C

    typedef struct SCSI_Capacity_Data { UInt32 RETURNED_LOGICAL_BLOCK_ADDRESS; UInt32 BLOCK_LENGTH_IN_BYTES; } SCSI_Capacity_Data;

    Discussion

    Capacity return structure for READ CAPACITY 10 command.

    Import Statement

    Objective-C

    @import IOKit;

    Availability

    Available in OS X v10.3 and later.

  • Declaration

    Objective-C

    typedef struct SCSI_Capacity_Data_Long { UInt64 RETURNED_LOGICAL_BLOCK_ADDRESS; UInt32 BLOCK_LENGTH_IN_BYTES; UInt8 RTO_EN_PROT_EN; UInt8 Reserved[19]; } SCSI_Capacity_Data_Long;

    Discussion

    Capacity return structure for READ CAPACITY 16 command.

    Import Statement

    Objective-C

    @import IOKit;

    Availability

    Available in OS X v10.3 and later.

Constants

See the Overview section above for header-level documentation.

  • Declaration

    Objective-C

    #define kREPORT_CAPACITY_16_MaximumLBA 0xFFFFFFFFFFFFFFFFULL #define kREPORT_CAPACITY_MaximumLBA 0xFFFFFFFFUL

    Constants

    • kREPORT_CAPACITY_16_MaximumLBA

      kREPORT_CAPACITY_16_MaximumLBA

      Maximum LBA supported via READ CAPACITY 16 command.

      Available in OS X v10.3 and later.

    • kREPORT_CAPACITY_MaximumLBA

      kREPORT_CAPACITY_MaximumLBA

      Maximum LBA supported via READ CAPACITY 10 command.

      Available in OS X v10.3 and later.

  • Declaration

    Objective-C

    enum { kREAD_CAPACITY_PROT_Enabled = 0x01, kREAD_CAPACITY_PROT_Disabled = 0x00, kREAD_CAPACITY_PROT_Mask = 0x01 };

    Constants

    • kREAD_CAPACITY_PROT_Enabled

      kREAD_CAPACITY_PROT_Enabled

      Protection Information enabled.

      Available in OS X v10.3 and later.

    • kREAD_CAPACITY_PROT_Disabled

      kREAD_CAPACITY_PROT_Disabled

      Protection Information disabled.

      Available in OS X v10.3 and later.

    • kREAD_CAPACITY_PROT_Mask

      kREAD_CAPACITY_PROT_Mask

      Mask to use when checking the RTO_EN_PROT_EN field.

      Available in OS X v10.3 and later.

    Discussion

    Values for the PROTECTION INFORMATION (PROT_EN) bit in the READ CAPACITY Long Data structure.

  • Declaration

    Objective-C

    enum { kREPORT_CAPACITY_DataSize = 8, kREPORT_CAPACITY_16_DataSize = 32 };

    Constants

    • kREPORT_CAPACITY_DataSize

      kREPORT_CAPACITY_DataSize

      Data size for a READ_CAPACITY command.

      Available in OS X v10.3 and later.

    • kREPORT_CAPACITY_16_DataSize

      kREPORT_CAPACITY_16_DataSize

      Data size for a READ_CAPACITY_16 command.

      Available in OS X v10.3 and later.

    Discussion

    Sizes of the payload for the READ CAPACITY 10 and READ CAPACITY 16 commands.

  • Declaration

    Objective-C

    enum { kREAD_CAPACITY_RTO_Enabled = 0x02, kREAD_CAPACITY_RTO_Disabled = 0x00, kREAD_CAPACITY_RTO_Mask = 0x02 };

    Constants

    • kREAD_CAPACITY_RTO_Enabled

      kREAD_CAPACITY_RTO_Enabled

      Reference Tag Own enabled.

      Available in OS X v10.3 and later.

    • kREAD_CAPACITY_RTO_Disabled

      kREAD_CAPACITY_RTO_Disabled

      Reference Tag Own disabled.

      Available in OS X v10.3 and later.

    • kREAD_CAPACITY_RTO_Mask

      kREAD_CAPACITY_RTO_Mask

      Mask to use when checking the RTO_EN_PROT_EN field.

      Available in OS X v10.3 and later.

    Discussion

    Values for the REFERENCE TAG OWN (RTO_EN) bit in the READ CAPACITY Long Data structure.