VirtualBox

Ignore:
Timestamp:
Jan 7, 2016 7:24:00 PM (9 years ago)
Author:
vboxsync
Message:

HDA: Try to only initialize streams if we have a valid DMA base address.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Audio/DevIchHda.cpp

    r59280 r59283  
    14851485    pStrmSt->State.cBDLE = 0;
    14861486
    1487     if (pStrmSt->u16LVI) /* Any BDLEs to fetch? */
    1488     {
    1489         AssertMsg(pStrmSt->u64BaseDMA, ("No base DMA address set for stream %RU8\n", u8Strm));
    1490 
     1487    if (/* Is there a base DMA address set? */
     1488           pStrmSt->u64BaseDMA
     1489        /* Any BDLEs to fetch? */
     1490        && pStrmSt->u16LVI)
     1491    {
    14911492        uint32_t cbBDLE = 0;
    14921493
     
    19751976#ifdef IN_RING3
    19761977        /*
    1977          * Only (re-)initialize the stream when not running.
    1978          */
    1979         if (!fRun && !fInRun)
    1980         {
    1981             int rc2 = hdaStreamInit(pThis, pStrmSt, u8Strm);
    1982             AssertRC(rc2);
    1983         }
    1984 
    1985         /*
    19861978         * We enter here to change DMA states only.
    19871979         */
    19881980        if (fInRun != fRun)
    19891981        {
     1982            if (fRun)
     1983            {
     1984                int rc2 = hdaStreamInit(pThis, pStrmSt, u8Strm);
     1985                AssertRC(rc2);
     1986            }
     1987
    19901988            Assert(!fReset && !fInReset);
    19911989            LogFunc(("[SD%RU8]: fRun=%RTbool\n", u8Strm, fRun));
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette