Expand Minimize

DxgkDdiSubmitCommand routine

The DxgkDdiSubmitCommand function submits a direct memory access (DMA) buffer to the hardware command execution unit.

Syntax


PDXGKDDI_SUBMITCOMMAND DxgkDdiSubmitCommand;

NTSTATUS APIENTRY DxgkDdiSubmitCommand(
  _In_ const HANDLE                hAdapter,
  _In_ const DXGKARG_SUBMITCOMMAND *pSubmitCommand
)
{ ... }

Parameters

hAdapter [in]

[in] A handle to a context block that is associated with a display adapter. The display miniport driver previously provided this handle to the Microsoft DirectX graphics kernel subsystem in the MiniportDeviceContext output parameter of the DxgkDdiAddDevice function.

pSubmitCommand [in]

[in] A pointer to a DXGKARG_SUBMITCOMMAND structure that describes the DMA buffer that the display miniport driver submits to the hardware command execution unit.

Return value

Returns STATUS_SUCCESS upon successful completion. If the driver instead returns an error code, the operating system causes a system bugcheck to occur. For more information, see the following Remarks section.

Remarks

Because paging operations are considered system operations, they are not associated with a specific application context or graphics context. Therefore, when the submission is for a paging operation, the DxgkDdiSubmitCommand function is called with NULL specified in the hDevice member of the DXGKARG_SUBMITCOMMAND structure that the pSubmitCommand parameter points to.

However, if the architecture of a particular hardware and driver must have a device internally, the driver must internally create the device during adapter initialization and must keep the device internally as the system default device for use in paging operations.

The driver can write the value that is supplied in the SubmissionFenceId member of DXGKARG_SUBMITCOMMAND into the fence command in the ring buffer. For more information about fence commands, see Supplying Fence Identifiers.

If the driver returns an error code, the Microsoft DirectX graphics kernel subsystem causes a system bugcheck to occur. In a crash dump file, the error is noted by the message BugCheck 0x119, which has the following four parameters.

  1. 0x2
  2. The NTSTATUS error code returned from the failed driver call
  3. A pointer to the DXGKARG_SUBMITCOMMAND structure
  4. A pointer to an internal scheduler data structure

DxgkDdiSubmitCommand should be made nonpageable because it runs at IRQL = DISPATCH_LEVEL.

Requirements

Target platform

Desktop

Version

Available in Windows Vista and later versions of the Windows operating systems.

Header

D3dkmddi.h (include D3dkmddi.h)

IRQL

DISPATCH_LEVEL

See also

DXGKARG_SUBMITCOMMAND
DxgkDdiAddDevice

 

 

Send comments about this topic to Microsoft

Show:
© 2015 Microsoft