Lines Matching defs:pStreamDesc

760                                            PHDASTREAMTRANSFERDESC pStreamDesc);
761 static void hdaFetchBdle(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc);
992 DECLINLINE(void) hdaUpdatePosBuf(PHDASTATE pThis, PHDASTREAMTRANSFERDESC pStreamDesc)
996 (pThis->u64DPBase & DPBASE_ADDR_MASK) + pStreamDesc->u8Strm * 8,
997 pStreamDesc->pu32Lpib, sizeof(uint32_t));
1001 DECLINLINE(uint32_t) hdaFifoWToSz(PHDASTATE pThis, PHDASTREAMTRANSFERDESC pStreamDesc)
1004 switch(HDA_STREAM_REG(pThis, FIFOW, pStreamDesc->u8Strm))
1010 AssertMsgFailed(("unsupported value (%x) in SDFIFOW(,%d)\n", HDA_REG_IND(pThis, pStreamDesc->u8Strm), pStreamDesc->u8Strm));
1277 static void hdaStreamReset(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc, uint8_t u8Strm)
1282 && pStreamDesc
1285 *pStreamDesc->pu32Lpib = 0;
1286 *pStreamDesc->pu32Sts = 0;
2014 static void hdaFetchBdle(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc)
2017 Assert(( pStreamDesc->u64BaseDMA
2020 PDMDevHlpPhysRead(pThis->CTX_SUFF(pDevIns), pStreamDesc->u64BaseDMA + pBdle->u32BdleCvi*16, bdle, 16);
2025 dump_bd(pThis, pBdle, pStreamDesc->u64BaseDMA);
2029 DECLINLINE(uint32_t) hdaCalculateTransferBufferLength(PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc,
2040 cb2Copy = RT_MIN(cb2Copy, pStreamDesc->u32Fifos + 1);
2103 DECLINLINE(void) hdaBackendTransferUnreported(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc,
2113 Assert((pBdle->cbUnderFifoW <= hdaFifoWToSz(pThis, pStreamDesc)));
2116 DECLINLINE(bool) hdaIsTransferCountersOverlapped(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc)
2118 bool fOnBufferEdge = ( *pStreamDesc->pu32Lpib == pStreamDesc->u32Cbl
2121 Assert((*pStreamDesc->pu32Lpib <= pStreamDesc->u32Cbl));
2123 if (*pStreamDesc->pu32Lpib == pStreamDesc->u32Cbl)
2124 *pStreamDesc->pu32Lpib -= pStreamDesc->u32Cbl;
2125 hdaUpdatePosBuf(pThis, pStreamDesc);
2139 DECLINLINE(void) hdaStreamCounterUpdate(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc,
2148 *pStreamDesc->pu32Lpib += cbInc;
2153 Assert((*pStreamDesc->pu32Lpib <= pStreamDesc->u32Cbl));
2155 hdaUpdatePosBuf(pThis, pStreamDesc);
2159 static bool hdaDoNextTransferCycle(PHDASTATE pThis, PHDABDLEDESC pBdle, PHDASTREAMTRANSFERDESC pStreamDesc)
2163 || *pStreamDesc->pu32Lpib == pStreamDesc->u32Cbl)
2173 *pStreamDesc->pu32Sts |= HDA_REG_FIELD_FLAG_MASK(SDSTS, BCIS);
2178 if (pStreamDesc->u32Ctl & HDA_REG_FIELD_FLAG_MASK(SDCTL, ICE))
2193 PHDASTREAMTRANSFERDESC pStreamDesc,
2203 uint32_t cb2Copy = hdaCalculateTransferBufferLength(pBdle, pStreamDesc, *pcbAvail, u32CblLimit);
2231 hdaBackendTransferUnreported(pThis, pBdle, pStreamDesc, cbRead, pcbAvail);
2247 static int hdaReadAudio(PHDASTATE pThis, PHDASTREAMTRANSFERDESC pStreamDesc,
2260 cb2Copy = hdaCalculateTransferBufferLength(pBdle, pStreamDesc, *pu32Avail, u32CblLimit);
2289 hdaBackendTransferUnreported(pThis, pBdle, pStreamDesc, cbBackendCopy, pu32Avail);
2304 static int hdaWriteAudio(PHDASTATE pThis, PHDASTREAMTRANSFERDESC pStreamDesc, uint32_t u32CblLimit,
2317 uint32_t cb2Copy = hdaCalculateTransferBufferLength(pBdle, pStreamDesc, *pcbAvail, u32CblLimit);
2339 if (cb2Copy + pBdle->cbUnderFifoW >= hdaFifoWToSz(pThis, pStreamDesc))
2374 hdaBackendTransferUnreported(pThis, pBdle, pStreamDesc, cb2Copy, NULL);
2400 PHDASTREAMTRANSFERDESC pStreamDesc)
2402 Assert(pThis); Assert(pBdle); Assert(pStreamDesc); Assert(u8Strm <= 7);
2404 RT_BZERO(pStreamDesc, sizeof(HDASTREAMTRANSFERDESC));
2405 pStreamDesc->u8Strm = u8Strm;
2406 pStreamDesc->u32Ctl = HDA_STREAM_REG(pThis, CTL, u8Strm);
2407 pStreamDesc->u64BaseDMA = RT_MAKE_U64(HDA_STREAM_REG(pThis, BDPL, u8Strm),
2409 pStreamDesc->pu32Lpib = &HDA_STREAM_REG(pThis, LPIB, u8Strm);
2410 pStreamDesc->pu32Sts = &HDA_STREAM_REG(pThis, STS, u8Strm);
2411 pStreamDesc->u32Cbl = HDA_STREAM_REG(pThis, CBL, u8Strm);
2412 pStreamDesc->u32Fifos = HDA_STREAM_REG(pThis, FIFOS, u8Strm);
2421 dump_bd(pThis, pBdle, pStreamDesc->u64BaseDMA);