Devs,
I’m trying to put together some scatter-gather DMA code. The first time I
tried to MapTransfer, driver verifier bugchecked complaining, “HAL Verifier
detected violation - VF: Driver did not flush adapter buffers – bytes
mapped: 2f8 (0 max)”
This is all well and good, so I added a line to flush the buffers just
before MapTransfer looking like:
(*pdx->DmaInfo[iDMAChannel].AdapterObject->DmaOperations->FlushAdapterBuffer
s)
(pdx->DmaInfo[iDMAChannel].AdapterObject,
pdx->DmaInfo[iDMAChannel].pMdl,
pdx->DmaInfo[iDMAChannel].MapRegisterBase,
pdx->DmaInfo[iDMAChannel].TransferVa,
pdx->DmaInfo[iDMAChannel].TransferSize,
FALSE);
longAddr =
(pdx->DmaInfo[iDMAChannel].AdapterObject->DmaOperations->MapTransfer)
(pdx->DmaInfo[iDMAChannel].AdapterObject,
pdx->DmaInfo[iDMAChannel].pMdl,
pdx->DmaInfo[iDMAChannel].MapRegisterBase,
vaddr,
&elen,
!isread);
The driver verifer still bugchecks complaining about the lack of adapter
flushes. This is on the first pass through the code after the application
starts.
Thanks for any help…
Evan Hillman
General Standards
435-755-0309
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com