/vbox/src/VBox/Devices/Storage/VSCSI/ |
H A D | VSCSISense.cpp | 35 int vscsiReqSenseOkSet(PVSCSISENSE pVScsiSense, PVSCSIREQINT pVScsiReq) argument 45 if (pVScsiReq->pbSense && pVScsiReq->cbSense) 46 memcpy(pVScsiReq->pbSense, pVScsiSense->abSenseBuf, RT_MIN(sizeof(pVScsiSense->abSenseBuf), pVScsiReq->cbSense)); 51 int vscsiReqSenseErrorSet(PVSCSISENSE pVScsiSense, PVSCSIREQINT pVScsiReq, uint8_t uSCSISenseKey, uint8_t uSCSIASC, uint8_t uSCSIASCQ) argument 60 if (pVScsiReq->pbSense && pVScsiReq->cbSense) 61 memcpy(pVScsiReq->pbSense, pVScsiSense->abSenseBuf, RT_MIN(sizeof(pVScsiSense->abSenseBuf), pVScsiReq 66 vscsiReqSenseErrorInfoSet(PVSCSISENSE pVScsiSense, PVSCSIREQINT pVScsiReq, uint8_t uSCSISenseKey, uint8_t uSCSIASC, uint8_t uSCSIASCQ, uint32_t uInfo) argument 82 vscsiReqSenseCmd(PVSCSISENSE pVScsiSense, PVSCSIREQINT pVScsiReq) argument [all...] |
H A D | VSCSIVpdPagePool.cpp | 98 int vscsiVpdPagePoolQueryPage(PVSCSIVPDPOOL pVScsiVpdPool, PVSCSIREQINT pVScsiReq, uint8_t uPage) argument 107 RTSgBufCopyFromBuf(&pVScsiReq->SgBuf, &pPage->abPage[0], pPage->cbPage);
|
H A D | VSCSIIoReq.cpp | 28 int vscsiIoReqFlushEnqueue(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq) argument 37 pVScsiIoReq->pVScsiReq = pVScsiReq; 54 int vscsiIoReqTransferEnqueue(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq, argument 61 LogFlowFunc(("pVScsiLun=%#p pVScsiReq=%#p enmTxDir=%u uOffset=%llu cbTransfer=%u\n", 62 pVScsiLun, pVScsiReq, enmTxDir, uOffset, cbTransfer)); 68 pVScsiIoReq->pVScsiReq = pVScsiReq; 73 pVScsiIoReq->u.Io.paSeg = pVScsiReq->SgBuf.paSegs; 74 pVScsiIoReq->u.Io.cSeg = pVScsiReq 89 vscsiIoReqUnmapEnqueue(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq, PRTRANGE paRanges, unsigned cRanges) argument 131 PVSCSIREQINT pVScsiReq; local [all...] |
H A D | VSCSIDevice.cpp | 50 * @param pVScsiReq The SCSi request. 53 static bool vscsiDeviceReqProcess(PVSCSIDEVICEINT pVScsiDevice, PVSCSIREQINT pVScsiReq, argument 58 switch (pVScsiReq->pbCDB[0]) 62 if (!vscsiDeviceLunIsPresent(pVScsiDevice, pVScsiReq->iLun)) 71 cbData = RTSgBufCopyFromBuf(&pVScsiReq->SgBuf, (uint8_t *)&ScsiInquiryReply, sizeof(SCSIINQUIRYDATA)); 72 *prcReq = vscsiReqSenseOkSet(&pVScsiDevice->VScsiSense, pVScsiReq); 85 if (vscsiBE2HU32(&pVScsiReq->pbCDB[6]) < 16) 86 *prcReq = vscsiReqSenseErrorSet(&pVScsiDevice->VScsiSense, pVScsiReq, SCSI_SENSE_ILLEGAL_REQUEST, SCSI_ASC_INV_FIELD_IN_CMD_PACKET, 0x00); 94 cbData = RTSgBufCopyFromBuf(&pVScsiReq->SgBuf, aReply, sizeof(aReply)); 96 *prcReq = vscsiReqSenseErrorSet(&pVScsiDevice->VScsiSense, pVScsiReq, SCSI_SENSE_ILLEGAL_REQUES 128 vscsiDeviceReqComplete(PVSCSIDEVICEINT pVScsiDevice, PVSCSIREQINT pVScsiReq, int rcScsiCode, bool fRedoPossible, int rcReq) argument 280 PVSCSIREQINT pVScsiReq = (PVSCSIREQINT)hVScsiReq; local 325 PVSCSIREQINT pVScsiReq = NULL; local [all...] |
H A D | VSCSILunMmc.cpp | 63 static int mmcReadTOCNormal(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq, uint16_t cbMaxTransfer, bool fMSF) argument 72 iStartTrack = pVScsiReq->pbCDB[6]; 75 return vscsiLunReqSenseErrorSet(pVScsiLun, pVScsiReq, SCSI_SENSE_ILLEGAL_REQUEST, SCSI_ASC_INV_FIELD_IN_CMD_PACKET, 0x00); 121 RTSgBufCopyFromBuf(&pVScsiReq->SgBuf, aReply, cbMaxTransfer); 123 return vscsiLunReqSenseOkSet(pVScsiLun, pVScsiReq); 127 static int mmcReadTOCMulti(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq, uint16_t cbMaxTransfer, bool fMSF) argument 152 RTSgBufCopyFromBuf(&pVScsiReq->SgBuf, aReply, 12); 154 return vscsiLunReqSenseOkSet(pVScsiLun, pVScsiReq); 178 static int vscsiLunMmcReqProcess(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq) argument 186 unsigned uCmd = pVScsiReq [all...] |
H A D | VSCSILunSbc.cpp | 191 static int vscsiLunSbcReqProcess(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq) argument 200 switch(pVScsiReq->pbCDB[0]) 205 if (pVScsiReq->pbCDB[1] & 0x1) 207 rc = vscsiVpdPagePoolQueryPage(&pVScsiLunSbc->VpdPagePool, pVScsiReq, pVScsiReq->pbCDB[2]); 210 rcReq = vscsiLunReqSenseErrorSet(pVScsiLun, pVScsiReq, SCSI_SENSE_ILLEGAL_REQUEST, 215 rcReq = vscsiLunReqSenseOkSet(pVScsiLun, pVScsiReq); 217 else if (pVScsiReq->pbCDB[2] != 0) /* A non zero page code is an error. */ 218 rcReq = vscsiLunReqSenseErrorSet(pVScsiLun, pVScsiReq, SCSI_SENSE_ILLEGAL_REQUEST, 236 RTSgBufCopyFromBuf(&pVScsiReq [all...] |
H A D | VSCSIInternal.h | 129 PVSCSIREQINT pVScsiReq; member in struct:VSCSIIOREQINT 206 * @param pVScsiReq The SCSi request to process. 208 DECLR3CALLBACKMEMBER(int, pfnVScsiLunReqProcess, (PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq)); 220 * @param pVScsiReq The request which completed. 226 void vscsiDeviceReqComplete(PVSCSIDEVICEINT pVScsiDevice, PVSCSIREQINT pVScsiReq, 242 * @param pVScsiReq The SCSI request. 244 int vscsiReqSenseOkSet(PVSCSISENSE pVScsiSense, PVSCSIREQINT pVScsiReq); 251 * @param pVScsiReq The SCSI request. 256 int vscsiReqSenseErrorSet(PVSCSISENSE pVScsiSense, PVSCSIREQINT pVScsiReq, uint8_t uSCSISenseKey, 264 * @param pVScsiReq Th 438 vscsiLunReqSenseOkSet(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq) argument 446 vscsiLunReqSenseErrorSet(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq, uint8_t uSCSISenseKey, uint8_t uSCSIASC, uint8_t uSCSIASCQ) argument 454 vscsiLunReqSenseErrorInfoSet(PVSCSILUNINT pVScsiLun, PVSCSIREQINT pVScsiReq, uint8_t uSCSISenseKey, uint8_t uSCSIASC, uint8_t uSCSIASCQ, uint32_t uInfo) argument [all...] |