NET_DMA_PROVIDER_ATTRIBUTES - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// netdma.h

typedef struct _NET_DMA_PROVIDER_ATTRIBUTES {
  UCHAR            MajorHwVersion;
  UCHAR            MinorHwVersion;
  USHORT           Size;
  ULONG            Flags;
  ULONG            VendorId;
  ULONG            DmaChannelCount;
  ULONG            MaximumTransferSize;
  PHYSICAL_ADDRESS MaximumAddressSpace;
} NET_DMA_PROVIDER_ATTRIBUTES, *PNET_DMA_PROVIDER_ATTRIBUTES;
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-netdma-_net_dma_provider_attributes)

_NET_DMA_PROVIDER_ATTRIBUTES structure

Description

Note The NetDMA interface is not supported in Windows 8 and later.

The NET_DMA_PROVIDER_ATTRIBUTES structure specifies the configuration attributes for a NetDMA provider.

Members

MajorHwVersion

The major version number of the DMA provider hardware.

MinorHwVersion

The minor version number of the DMA provider hardware.

Size

The size, in bytes, of this NET_DMA_PROVIDER_ATTRIBUTES structure. Set this member to sizeof(NET_DMA_PROVIDER_ATTRIBUTES).

Flags

Reserved for DMA provider attributes flags. Set this member to zero.

VendorId

A vendor identifier (ID) that uniquely identifies the vendor that created the DMA engine. This vendor ID is specified in the device's PCI configuration space. For more information about the vendor ID, see Identifiers for PCI Devices.

DmaChannelCount

The number of DMA channels that the DMA provider supports. This number can differ from the MaxDmaChannelCount member of the NET_DMA_PROVIDER_CHARACTERISTICS structure that defines the maximum number of DMA channels that this type of DMA provider can support.

MaximumTransferSize

The maximum DMA transfer size, in bytes, that the DMA provider can support. This value can must be 4 KB or greater.

MaximumAddressSpace

The largest physical address that the DMA engine can support.

Remarks

To start a DMA provider, the DMA provider driver supplies a NET_DMA_PROVIDER_ATTRIBUTES structure at the ProviderAttributes parameter of the NetDmaProviderStart function.

A DMA provider driver initializes a DMA engine and starts a DMA provider while handling the IRP_MN_START_DEVICE IRP.

See also

IRP_MN_START_DEVICE

NET_DMA_PROVIDER_CHARACTERISTICS

NetDmaProviderStart

NetDmaProviderStop