Funzione UfxDeviceNotifyHardwareReady (ufxclient.h)

Notifica a UFX che l'hardware è pronto.

Sintassi

void UfxDeviceNotifyHardwareReady(
  [in] UFXDEVICE UfxDevice
);

Parametri

[in] UfxDevice

Handle per un oggetto dispositivo UFX creato dal driver chiamando UfxDeviceCreate.

Valore restituito

Nessuno

Osservazioni

Il driver client chiama in genere UfxDeviceNotifyHardwareReady dalla relativa EvtDeviceD0Entry funzione di callback, come illustrato nell'esempio seguente.

NTSTATUS
OnEvtDeviceD0Entry (
  _In_ WDFDEVICE Device,
  _In_ WDF_POWER_DEVICE_STATE PreviousState
)
/*++

Routine Description:

    Called by the framework after entering D0 state.

Arguments:

    Device - WDFDEVICE framework handle to the bus FDO.

    PreviousState - The WDF_POWER_DEVICE_STATE from which the stack is
        making this transition.

Return Value:

    Returns STATUS_SUCCESS or an appropriate NTSTATUS code otherwise.

--*/
{
    PCONTROLLER_CONTEXT ControllerContext;

    TraceEntry();

    ControllerContext = DeviceGetControllerContext(Device);

    if (PreviousState > WdfPowerDeviceD1) { 
        DevicePerformSoftReset(Device);

        WdfWaitLockAcquire(ControllerContext->InitializeDefaultEndpointLock, NULL);
        ControllerContext->InitializeDefaultEndpoint = TRUE;
        WdfWaitLockRelease(ControllerContext->InitializeDefaultEndpointLock);
    }

    if (PreviousState == WdfPowerDeviceD3Final) {
        //
        // Notify UFX that HW is now ready
        //
        UfxDeviceNotifyHardwareReady(ControllerContext->UfxDevice);
    }

    TraceExit();
    return STATUS_SUCCESS;
}

Fabbisogno

Requisito Valore
client minimo supportato Windows 10
piattaforma di destinazione Finestre
intestazione ufxclient.h
libreria ufxstub.lib
IRQL DISPATCH_LEVEL