Changeset 34226 in vbox
- Timestamp:
- Nov 22, 2010 3:41:53 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Audio/DevIchIntelHDA.cpp
r34225 r34226 1337 1337 } 1338 1338 1339 static uint32_t hdaReadAudio(INTELHDLinkState *pState, uint32_t *pu32Avail, bool *fStop,uint32_t u32CblLimit)1339 static uint32_t hdaReadAudio(INTELHDLinkState *pState, uint32_t *pu32Avail, uint32_t u32CblLimit) 1340 1340 { 1341 1341 PHDABDLEDESC pBdle = &pState->stInBdle; … … 1350 1350 || (*pu32Avail < hdaFifoWToSz(pState, 0))) 1351 1351 { 1352 *fStop = true;1353 1352 return 0; 1354 1353 } … … 1363 1362 || cb2Copy < pBdle->cbUnderFifoW) 1364 1363 { 1365 *fStop = true;1366 1364 return 0; 1367 1365 } … … 1391 1389 pBdle->cbUnderFifoW += RT_MIN(cbBackendCopy, cb2Copy); 1392 1390 Assert((pBdle->cbUnderFifoW <= hdaFifoWToSz(pState, 0))); 1393 *fStop = true;1394 1391 break; 1395 1392 } … … 1404 1401 } 1405 1402 1406 static uint32_t hdaWriteAudio(INTELHDLinkState *pState, uint32_t *pu32Avail, bool *fStop,uint32_t u32CblLimit)1403 static uint32_t hdaWriteAudio(INTELHDLinkState *pState, uint32_t *pu32Avail, uint32_t u32CblLimit) 1407 1404 { 1408 1405 PHDABDLEDESC pBdle = &pState->stOutBdle; … … 1427 1424 { 1428 1425 Log(("hda:wa: amount of unreported bytes is less than room may be transfered (cbUnderFifoW:%d < %d)\n", pBdle->cbUnderFifoW, cb2Copy)); 1429 *fStop = true;1430 1426 goto done; 1431 1427 } … … 1486 1482 DECLCALLBACK(void) hdaTransfer(CODECState *pCodecState, ENMSOUNDSOURCE src, int avail) 1487 1483 { 1488 bool fStop = false;1489 1484 uint64_t u64BaseDMA = 0; 1490 1485 PHDABDLEDESC pBdle = NULL; … … 1538 1533 *pu32Sts |= HDA_REG_FIELD_FLAG_MASK(SDSTS, FIFORDY); 1539 1534 fetch_bd(pState, pBdle, u64BaseDMA); 1540 while( avail && !fStop)1535 while(avail) 1541 1536 { 1542 1537 Assert((avail >= 0 && (u32Cbl >= (*pu32Lpib)))); /* sanity */ … … 1546 1541 { 1547 1542 case PO_INDEX: 1548 nBytes = hdaWriteAudio(pState, (uint32_t *)&avail, &fStop,u32CblLimit);1543 nBytes = hdaWriteAudio(pState, (uint32_t *)&avail, u32CblLimit); 1549 1544 break; 1550 1545 case PI_INDEX: 1551 nBytes = hdaReadAudio(pState, (uint32_t *)&avail, &fStop,u32CblLimit);1546 nBytes = hdaReadAudio(pState, (uint32_t *)&avail, u32CblLimit); 1552 1547 break; 1553 1548 default: 1554 1549 nBytes = 0; 1555 fStop = true;1556 1550 AssertMsgFailed(("Unsupported")); 1551 break; 1557 1552 } 1558 1553 /* … … 1597 1592 1598 1593 } 1599 fStop = true;1594 break; 1600 1595 } 1601 1596 }
Note:
See TracChangeset
for help on using the changeset viewer.