IOCTL_GNSS_INJECT_AGNSS - NtDoc

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

// CTL_CODE(0x0022, 0x020, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_GNSS_INJECT_AGNSS 0x00220080
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ni-gnssdriver-ioctl_gnss_inject_agnss)

IOCTL_GNSS_INJECT_AGNSS IOCTL

Description

The IOCTL_GNSS_INJECT_AGNSS control code is used by the GNSS adapter to inject AGNSS data into the driver. This IOCTL is sent as a result of the driver previously responding to a pending IOCTL_GNSS_LISTEN_AGNSS request.

Parameters

Major code

Input buffer

A pointer to a GNSS_AGNSS_INJECT structure.

Input buffer length

Set to sizeof(GNSS_AGNSS_INJECT).

Output buffer

Set to NULL.

Output buffer length

Set to 0.

Input/output buffer

Input/output buffer length

Status block

Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status to the appropriate error condition as a NTSTATUS code.

Remarks

Input

GNSS_AGNSS_INJECT

Depending on the InjectionType element, the appropriate data element is filled.

Output

NTSTATUS with the following indications:

GNSS adapter notes

When the GNSS adapter fails to get time for injection, it sets the InjectionStatus element. The driver must check that this element indicates success, before actually using the element data.

In case of failure in gathering injection data, the adapter does not automatically retry. It is up to the driver to retry the same request sequent.

This is a fire-and-forget IOCTL. The GNSS adapter does not handle error even if the driver returns a failure indicating that the injection data was not used.

GNSS driver notes

The GNSS driver completes the I/O request after consuming the injection data.

See also

Creating IOCTL Requests in Drivers

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously