Changeset 29047 in vbox for trunk/src/VBox/Devices
- Timestamp:
- May 4, 2010 10:38:43 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Storage/DevAHCI.cpp
r29030 r29047 3885 3885 * @param pAhciPort The port for which the SDB Fis is send. 3886 3886 * @param uFinishedTasks Bitmask of finished tasks. 3887 * @param pAhciPortTaskState The state of the last task.3888 3887 * @param fInterrupt If an interrupt should be asserted. 3889 3888 */ 3890 static void ahciSendSDBFis(PAHCIPort pAhciPort, uint32_t uFinishedTasks, PAHCIPORTTASKSTATE pAhciPortTaskState,bool fInterrupt)3889 static void ahciSendSDBFis(PAHCIPort pAhciPort, uint32_t uFinishedTasks, bool fInterrupt) 3891 3890 { 3892 3891 uint32_t sdbFis[2]; … … 4934 4933 4935 4934 if (!cOutstandingTasks) 4936 ahciSendSDBFis(pAhciPort, 0, pAhciPortTaskState,true);4935 ahciSendSDBFis(pAhciPort, 0, true); 4937 4936 } 4938 4937 else … … 5203 5202 uChkSum += aBuf[i]; 5204 5203 5205 aBuf[511] = ~uChkSum; 5204 aBuf[511] = (uint8_t)-(int8_t)uChkSum; 5205 5206 /* 5207 * Reading this log page results in an abort of all outstanding commands 5208 * and clearing the SActive register and TaskFile register. 5209 */ 5210 ahciSendSDBFis(pAhciPort, 0xffffffff, true); 5206 5211 } 5207 5212 break; … … 5467 5472 { 5468 5473 #ifdef RT_STRICT 5469 boolfXchg = ASMAtomicCmpXchgBool(&pAhciPortTaskState->fActive, false, true);5474 fXchg = ASMAtomicCmpXchgBool(&pAhciPortTaskState->fActive, false, true); 5470 5475 AssertMsg(fXchg, ("Task is not active\n")); 5471 5476 #endif … … 5813 5818 { 5814 5819 if (uQueuedTasksFinished && RT_LIKELY(!pAhciPort->fPortReset)) 5815 ahciSendSDBFis(pAhciPort, uQueuedTasksFinished, pAhciPortTaskState,true);5820 ahciSendSDBFis(pAhciPort, uQueuedTasksFinished, true); 5816 5821 5817 5822 uQueuedTasksFinished = 0; … … 5822 5827 5823 5828 if (uQueuedTasksFinished && RT_LIKELY(!pAhciPort->fPortReset)) 5824 ahciSendSDBFis(pAhciPort, uQueuedTasksFinished, pAhciPortTaskState,true);5829 ahciSendSDBFis(pAhciPort, uQueuedTasksFinished, true); 5825 5830 5826 5831 uQueuedTasksFinished = 0;
Note:
See TracChangeset
for help on using the changeset viewer.