dmautil.h

来自「网络驱动开发」· C头文件 代码 · 共 50 行

H
50
字号


typedef  struct _DMA_UTIL {

    NDIS_HANDLE     NdisDmaHandle;

    PNDIS_BUFFER    Buffer;

    ULONG           Offset;

    ULONG           Length;

    BOOLEAN         Direction;

} DMA_UTIL, *PDMA_UTIL;


VOID
InitializeDmaUtil(
    PDMA_UTIL      DmaUtil,
    NDIS_HANDLE    DmaHandle
    );

NTSTATUS
StartDmaTransfer(
    PDMA_UTIL     DmaUtil,
    PNDIS_BUFFER  Buffer,
    ULONG         Offset,
    ULONG         Length,
    BOOLEAN       ToDevice
    );

NTSTATUS
CompleteDmaTransfer(
    PDMA_UTIL    DmaUtil,
    BOOLEAN      ToDevice
    );





#define StartDmaTransferToDevice(_h,_b,_o,_l)   StartDmaTransfer(_h,_b,_o,_l,TRUE)
#define StartDmaTransferFromDevice(_h,_b,_o,_l) StartDmaTransfer(_h,_b,_o,_l,FALSE)


#define CompleteDmaTransferToDevice(_h)   CompleteDmaTransfer(_h,TRUE)
#define CompleteDmaTransferFromDevice(_h)   CompleteDmaTransfer(_h,FALSE)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?