INQUIRYDATA structure (storport.h)
The INQUIRYDATA structure is used in conjunction with the TapeMiniExtensionInit and TapeMiniVerifyInquiry routines to report SCSI inquiry data associated with a tape device.
Syntax
typedef struct _INQUIRYDATA {
UCHAR DeviceType : 5;
UCHAR DeviceTypeQualifier : 3;
UCHAR DeviceTypeModifier : 7;
UCHAR RemovableMedia : 1;
UCHAR Versions;
UCHAR ResponseDataFormat : 4;
UCHAR HiSupport : 1;
UCHAR NormACA : 1;
UCHAR ReservedBit : 1;
UCHAR AERC : 1;
UCHAR AdditionalLength;
UCHAR Reserved[2];
UCHAR SoftReset : 1;
UCHAR CommandQueue : 1;
UCHAR Reserved2 : 1;
UCHAR LinkedCommands : 1;
UCHAR Synchronous : 1;
UCHAR Wide16Bit : 1;
UCHAR Wide32Bit : 1;
UCHAR RelativeAddressing : 1;
UCHAR VendorId[8];
UCHAR ProductId[16];
UCHAR ProductRevisionLevel[4];
UCHAR VendorSpecific[20];
UCHAR Reserved3[2];
VERSION_DESCRIPTOR VersionDescriptors[8];
UCHAR Reserved4[30];
} INQUIRYDATA, *PINQUIRYDATA;
Members
DeviceType
Specifies the type of device. For a complete list of symbolic constants that indicate the various device types, see Specifying Device Types.
DeviceTypeQualifier
Indicates whether the device is present or not. The values that this member can take are as follows:
Value | Meaning |
---|---|
DEVICE_QUALIFIER_ACTIVE | The operating system supports the device, and the device is present. |
DEVICE_QUALIFIER_NOT_ACTIVE | The operating system supports the device, but the device is not present. |
DEVICE_QUALIFIER_NOT_SUPPORTED | The operating system does not support this device. |
DeviceTypeModifier
Specifies the device type modifier, if any, as defined by SCSI. If no device type modifier exists, this member is zero.
RemovableMedia
Indicates, when TRUE, that the media is removable, and when FALSE that the media is not removable.
Versions
Indicates the version of the inquiry data standard that this data conforms to. For more information about the version values allowed in this field, see the SCSI Primary Commands - 2 (SPC-2) specification.
ResponseDataFormat
Indicates the SCSI standard that governs the response data format. The value of this member must be 2.
HiSupport
Indicates, when zero, that the target does not use the hierarchical addressing model to assign LUNs to logical units. A value of 1 indicates the target uses the hierarchical addressing model to assign LUNs to logical units.
NormACA
Indicates, when set to one, that the operating system supports setting the NACA bit to one in the control byte of the command descriptor block (CDB). A value of zero indicates that the system does not support setting the NACA bit to one. For more information about the function of the NACA bit and the control byte in a CDB, see the SCSI Primary Commands - 2 (SPC-2) specification.
ReservedBit
AERC
Indicates, when set to one, that the target device supports the asynchronous event reporting capability. A value of zero indicates that the target device does not support asynchronous event reports. Details of the asynchronous event reporting support are protocol-specific. For more information about asynchronous even reporting, see the SCSI Primary Commands - 2 (SPC-2) specification.
AdditionalLength
Specifies the length in bytes of the parameters of the command descriptor block (CDB).
Reserved[2]
Reserved.
SoftReset
Indicates, when set to one, that the target device supports soft resets. A value of zero indicates that the target does not support soft resets.
CommandQueue
Indicates, when set to one, that the target device supports command queuing for this logical unit. However, a value of zero does not necessarily indicate that the target device does not support command queuing. The meaning of these values depends on the values present in the SCSI inquiry data. For information about the meaning of the command queuing bit, see the SCSI Primary Commands - 2 (SPC-2) specification.
Reserved2
Reserved.
LinkedCommands
Indicates, when set to one, that the operating system supports linked commands. A value of zero indicates the operating system does not support linked commands.
Synchronous
Indicates, when set to one, that the target supports synchronous data transfer. A value of zero indicates that the target does not support synchronous data transfer.
Wide16Bit
Indicates, when set to one, that the target supports 16-bit wide data transfers. A value of zero indicates that the device does not support 16-bit wide data transfers.
Wide32Bit
Indicates, when set to one, that the target supports 32-bit wide data transfers. A value of zero indicates that the device does not support 32-bit wide data transfers.
RelativeAddressing
Indicates, when set to one, that the operating system supports the relative addressing mode. A value of zero indicates the operating system does not support relative addressing.
VendorId[8]
Contains eight bytes of ASCII data that identifies the vendor of the product.
ProductId[16]
Contains sixteen bytes of ASCII data that indicates the product ID, as defined by the vendor. The data shall be left-aligned within this field and the unused bytes filled with ASCII blanks.
ProductRevisionLevel[4]
Contains four bytes of ASCII data that indicates the product revision level, as defined by the vendor.
VendorSpecific[20]
Contains 20 bytes of vendor-specific data.
Reserved3[2]
Reserved.
VersionDescriptors[8]
Contains 8 bytes of ASCII data that indicates the version descriptor, as defined by the vendor.
Reserved4[30]
Reserved.
Requirements
Requirement | Value |
---|---|
Header | storport.h (include Scsi.h, Minitape.h, Storport.h) |