Partager via


WdfDmaTransactionInitializeUsingOffset, fonction (wdfdmatransaction.h)

[S’applique uniquement à KMDF]

La méthode WdfDmaTransactionInitializeUsingOffset initialise une transaction DMA spécifiée à l’aide d’un décalage d’octet dans une chaîne MDL.

Syntaxe

NTSTATUS WdfDmaTransactionInitializeUsingOffset(
  [in] WDFDMATRANSACTION   DmaTransaction,
  [in] PFN_WDF_PROGRAM_DMA EvtProgramDmaFunction,
  [in] WDF_DMA_DIRECTION   DmaDirection,
  [in] PMDL                Mdl,
  [in] size_t              Offset,
  [in] size_t              Length
);

Paramètres

[in] DmaTransaction

Handle vers un objet de transaction DMA que le pilote a obtenu à partir d’un appel précédent à WdfDmaTransactionCreate.

[in] EvtProgramDmaFunction

Pointeur vers la fonction de rappel d’événement evtProgramDma du pilote.

[in] DmaDirection

Valeur WDF_DMA_DIRECTION-typée.

[in] Mdl

Pointeur vers une liste de descripteurs de mémoire (MDL) qui décrit la mémoire tampon qui sera utilisée pour la transaction DMA. Consultez plus d’informations dans Remarques.

[in] Offset

Décalage d’octet dans la chaîne MDL pour la transaction actuelle.

[in] Length

Nombre d’octets à transférer. Cette valeur doit être supérieure à zéro.

Valeur de retour

WdfDmaTransactionInitializeUsingOffset retourne STATUS_SUCCESS si l’opération réussit. Sinon, la méthode peut renvoyer l’une des valeurs décrites dans la section Retour des valeurs de WdfDmaTransactionInitialize.

Cette méthode peut également retourner d’autres valeurs NTSTATUS .

Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.

Remarques

WdfDmaTransactionInitializeUsingOffset équivaut à WdfDmaTransactionInitialize sauf qu’il prend un décalage dans la mémoire tampon décrite par la chaîne MDL plutôt qu’une adresse virtuelle.

Le pilote peut spécifier une chaîne MDL dans le paramètre Mdl de cette méthode. Une chaîne MDL est une séquence de structures MDL que le pilote a chaînées à l’aide du membre Next de la structure MDL.

Spécifications

Besoin Valeur
plateforme cible Universel
version minimale de KMDF 1.11
En-tête wdfdmatransaction.h (include Wdf.h)
Bibliothèque Wdf01000.sys (voir Versioning de la bibliothèque Framework.)
IRQL <=DISPATCH_LEVEL
règles de conformité DDI DriverCreate(kmdf)

Voir aussi

WdfDmaTransactionInitialize