Changeset 38680 in vbox for trunk/include
- Timestamp:
- Sep 8, 2011 7:52:08 AM (13 years ago)
- Location:
- trunk/include/VBox
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/scsi.h
r32983 r38680 116 116 SCSI_READ_6 = 0x08, 117 117 SCSI_WRITE_6 = 0x0a, 118 SCSI_LOG_SENSE = 0x4d 118 SCSI_LOG_SENSE = 0x4d, 119 SCSI_UNMAP = 0x42 119 120 } SCSICMD; 120 121 121 122 /** 122 * Service action in opco e identifiers123 * Service action in opcode identifiers 123 124 */ 124 125 typedef enum SCSISVCACTIONIN … … 178 179 179 180 /* additional sense keys */ 180 #define SCSI_ASC_NONE 0x00181 #define SCSI_ASC_WRITE_ERROR 0x0c182 #define SCSI_ASC_READ_ERROR 0x11183 #define SCSI_ASC_ILLEGAL_OPCODE 0x20184 #define SCSI_ASC_LOGICAL_BLOCK_OOR 0x21185 #define SCSI_ASC_INV_FIELD_IN_CMD_PACKET 0x24186 #define SCSI_ASC_MEDIUM_MAY_HAVE_CHANGED 0x28187 #define SCSI_ASC_MEDIUM_NOT_PRESENT 0x3a188 #define SCSI_ASC_SAVING_PARAMETERS_NOT_SUPPORTED 0x39189 #define SCSI_ASC_INVALID_MESSAGE 0x49190 #define SCSI_ASC_MEDIA_LOAD_OR_EJECT_FAILED 0x53181 #define SCSI_ASC_NONE 0x00 182 #define SCSI_ASC_WRITE_ERROR 0x0c 183 #define SCSI_ASC_READ_ERROR 0x11 184 #define SCSI_ASC_ILLEGAL_OPCODE 0x20 185 #define SCSI_ASC_LOGICAL_BLOCK_OOR 0x21 186 #define SCSI_ASC_INV_FIELD_IN_CMD_PACKET 0x24 187 #define SCSI_ASC_MEDIUM_MAY_HAVE_CHANGED 0x28 188 #define SCSI_ASC_MEDIUM_NOT_PRESENT 0x3a 189 #define SCSI_ASC_SAVING_PARAMETERS_NOT_SUPPORTED 0x39 190 #define SCSI_ASC_INVALID_MESSAGE 0x49 191 #define SCSI_ASC_MEDIA_LOAD_OR_EJECT_FAILED 0x53 191 192 #define SCSI_ASC_LOGICAL_UNIT_DOES_NOT_RESPOND_TO_SELECTION 0x00 193 #define SCSI_ASC_SYSTEM_RESOURCE_FAILURE 0x55 194 195 /** Additional sense code qualifiers (ASCQ). */ 196 #define SCSI_ASCQ_SYSTEM_BUFFER_FULL 0x01 192 197 193 198 /** @name SCSI_INQUIRY -
trunk/include/VBox/vscsi.h
r33540 r38680 5 5 6 6 /* 7 * Copyright (C) 2006-201 0Oracle Corporation7 * Copyright (C) 2006-2011 Oracle Corporation 8 8 * 9 9 * This file is part of VirtualBox Open Source Edition (OSE), as … … 68 68 /** Flush */ 69 69 VSCSIIOREQTXDIR_FLUSH, 70 /** Unmap */ 71 VSCSIIOREQTXDIR_UNMAP, 70 72 /** 32bit hack */ 71 73 VSCSIIOREQTXDIR_32BIT_HACK = 0x7fffffff … … 94 96 95 97 /** 98 * Range descriptor. 99 */ 100 typedef struct VSCSIRANGE 101 { 102 /** Start offset. */ 103 uint64_t offStart; 104 /** Size of the range. */ 105 size_t cbRange; 106 } VSCSIRANGE; 107 /** Pointer to a range descriptor. */ 108 typedef VSCSIRANGE *PVSCSIRANGE; 109 110 /** The LUN can handle the UNMAP command. */ 111 #define VSCSI_LUN_FEATURE_UNMAP RT_BIT(0) 112 /** The LUN has a non rotational medium. */ 113 #define VSCSI_LUN_FEATURE_NON_ROTATIONAL RT_BIT(1) 114 115 /** 96 116 * Virtual SCSI LUN I/O Callback table. 97 117 */ … … 125 145 VSCSIIOREQ hVScsiIoReq)); 126 146 147 /** 148 * Returns flags of supported features. 149 * 150 * @returns VBox status status code. 151 * @param hVScsiLun Virtual SCSI LUN handle. 152 * @param pvScsiLunUser Opaque user data which may 153 * be used to identify the medium. 154 * @param hVScsiIoReq Virtual SCSI I/O request handle. 155 */ 156 DECLR3CALLBACKMEMBER(int, pfnVScsiLunGetFeatureFlags, (VSCSILUN hVScsiLun, 157 void *pvScsiLunUser, 158 uint64_t *pfFeatures)); 159 160 127 161 } VSCSILUNIOCALLBACKS; 128 162 /** Pointer to a virtual SCSI LUN I/O callback table. */ … … 284 318 size_t *pcbSeg, PCRTSGSEG *ppaSeg); 285 319 320 /** 321 * Query unmap parameters. 322 * 323 * @returns VBox status code. 324 * @param hVScsiIoReq The SCSI I/O request handle. 325 * @param ppaRanges Where to store the pointer to the range array on success. 326 * @param pcRanges Where to store the number of ranges on success. 327 */ 328 VBOXDDU_DECL(int) VSCSIIoReqUnmapParamsGet(VSCSIIOREQ hVScsiIoReq, PVSCSIRANGE *ppaRanges, 329 unsigned *pcRanges); 330 286 331 RT_C_DECLS_END 287 332
Note:
See TracChangeset
for help on using the changeset viewer.