Hi All!
Quick question:
Based on https://msdn.microsoft.com/en-us/library/windows/hardware/ff543291(v=vs.85).aspx,
Is there any framework limitation to fire(WdfDmaTransactionExecute) multiple concurrent transaction objects on a single DMA device ? (let’s assume that my dma programming logic (EvtProgramDma) handle properly that kind of situation).
Thanks,
Bob
Hi Bob,
You can have concurrent transactions for scatter/gather DMA enablers. For packet-based enablers, you need to explicitly request DMA version 3 by setting WDF_DMA_ENABLER_CONFIG.WdmDmaVersionOverride=3 when you create the WDFDMAENABLER object.
Thanks you for answare!
But for my clarification:
I can fire multiple concurrent transaction on one DMA enabler object (many[
*fired *transactions] to *one*[DMA enabler] relation) or I have to create
next separate DMA enabler objects for each of transaction
(one[fired transaction] to one[DMA enabler] relation) ?
Bob
2015-12-08 2:11 GMT+01:00 :
> Hi Bob,
>
> You can have concurrent transactions for scatter/gather DMA enablers. For
> packet-based enablers, you need to explicitly request DMA version 3 by
> setting WDF_DMA_ENABLER_CONFIG.WdmDmaVersionOverride=3 when you create the
> WDFDMAENABLER object.
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list online at: <
> http://www.osronline.com/showlists.cfm?list=ntdev>
>
> MONTHLY seminars on crash dump analysis, WDF, Windows internals and
> software drivers!
> Details at http:
>
> To unsubscribe, visit the List Server section of OSR Online at <
> http://www.osronline.com/page.cfm?name=ListServer>
></http:>
Yes, you can execute concurrent transactions on the same enabler.
If you’re using packet-based DMA, then you need to opt-in to DMAv3 like I mentioned above. Otherwise, WDF will issue a verifier break if it detects concurrent transactions for the same device object - and note that having multiple enablers would not avoid this break, you need to opt-in to DMAv3.
Many thanks for your clarification!
2015-12-08 19:18 GMT+01:00 :
> Yes, you can execute concurrent transactions on the same enabler.
>
> If you’re using packet-based DMA, then you need to opt-in to DMAv3 like I
> mentioned above. Otherwise, WDF will issue a verifier break if it detects
> concurrent transactions for the same device object - and note that having
> multiple enablers would not avoid this break, you need to opt-in to DMAv3.
>
> —
> NTDEV is sponsored by OSR
>
> Visit the list online at: <
> http://www.osronline.com/showlists.cfm?list=ntdev>
>
> MONTHLY seminars on crash dump analysis, WDF, Windows internals and
> software drivers!
> Details at http:
>
> To unsubscribe, visit the List Server section of OSR Online at <
> http://www.osronline.com/page.cfm?name=ListServer>
></http:>