Changeset 65968 in vbox
- Timestamp:
- Mar 7, 2017 10:59:50 AM (8 years ago)
- svn:sync-xref-src-repo-rev:
- 113794
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Storage/DevATA.cpp
r65966 r65968 3398 3398 { 3399 3399 const uint8_t *pbPacket = &s->aATAPICmd[0]; 3400 size_t cbTransfer = 0;3401 PDMMEDIATXDIR uTxDir = PDMMEDIATXDIR_NONE;3402 uint8_t u8ScsiSts = SCSI_STATUS_OK;3403 3400 3404 3401 /* Some cases we have to handle here. */ … … 3406 3403 && ASMAtomicReadU32(&s->MediaEventStatus) != ATA_EVENT_STATUS_UNCHANGED) 3407 3404 { 3408 cbTransfer = scsiBE2H_U16(pbPacket + 7);3405 uint32_t cbTransfer = scsiBE2H_U16(pbPacket + 7); 3409 3406 ataR3StartTransfer(s, RT_MIN(cbTransfer, 8), PDMMEDIATXDIR_FROM_DEVICE, ATAFN_BT_ATAPI_CMD, ATAFN_SS_ATAPI_GET_EVENT_STATUS_NOTIFICATION, true); 3410 3407 } … … 3416 3413 size_t cbBuf = 0; 3417 3414 size_t cbATAPISector = 0; 3415 size_t cbTransfer = 0; 3416 PDMMEDIATXDIR uTxDir = PDMMEDIATXDIR_NONE; 3417 uint8_t u8ScsiSts = SCSI_STATUS_OK; 3418 3418 3419 if (pbPacket[0] == SCSI_FORMAT_UNIT || pbPacket[0] == SCSI_GET_PERFORMANCE) 3419 3420 cbBuf = s->uATARegLCyl | (s->uATARegHCyl << 8); /* use ATAPI transfer length */ … … 3426 3427 s->cbATAPISector = (uint32_t)cbATAPISector; 3427 3428 Assert(s->cbATAPISector == (uint32_t)cbATAPISector); 3429 Assert(cbTransfer == (uint32_t)cbTransfer); 3428 3430 3429 3431 /* … … 3435 3437 if (cbTransfer == 0) 3436 3438 uTxDir = PDMMEDIATXDIR_NONE; 3437 ataR3StartTransfer(s, cbTransfer, uTxDir, ATAFN_BT_ATAPI_PASSTHROUGH_CMD, ATAFN_SS_ATAPI_PASSTHROUGH, true);3439 ataR3StartTransfer(s, (uint32_t)cbTransfer, uTxDir, ATAFN_BT_ATAPI_PASSTHROUGH_CMD, ATAFN_SS_ATAPI_PASSTHROUGH, true); 3438 3440 } 3439 3441 else if (u8ScsiSts == SCSI_STATUS_CHECK_CONDITION)
Note:
See TracChangeset
for help on using the changeset viewer.