Funzione StorPortPoFxPowerControl (storport.h)

La routine StorPortPoFxPowerControl invia una richiesta di controllo alimentazione al framework di risparmio energia (PoFx) per inoltrare al plug-in del motore di alimentazione (PEP).

Sintassi

ULONG StorPortPoFxPowerControl(
  [in]            PVOID         HwDeviceExtension,
                  PSTOR_ADDRESS Address,
  [in]            LPCGUID       PowerControlCode,
  [in, optional]  PVOID         InBuffer,
  [in]            SIZE_T        InBufferSize,
  [out, optional] PVOID         OutBuffer,
  [in]            SIZE_T        OutBufferSize,
  [out, optional] PSIZE_T       BytesReturned
);

Parametri

[in] HwDeviceExtension

Puntatore all'estensione del dispositivo hardware per l'adattatore bus host (HBA). Si tratta dell'estensione del dispositivo usata per registrare il dispositivo in una chiamata precedente a StorPortInitializePoFxPower.

Address

Puntatore al codice di controllo alimentazione. Questo codice è un valore GUID che specifica l'operazione richiesta.

[in] PowerControlCode

Puntatore al codice di controllo alimentazione. Questo codice è un valore GUID che specifica l'operazione richiesta.

[in, optional] InBuffer

Puntatore a un buffer allocato dal chiamante che contiene i dati di input per l'operazione. Il formato per i dati in questo buffer dipende dal codice di controllo alimentazione specificato dal parametro PowerControlCode . Il parametro InBuffer è facoltativo e può essere specificato come NULL se l'operazione specificata non richiede dati di input.

[in] InBufferSize

Dimensione, in byte, del buffer di input a cui punta il parametro InBuffer . Se InBuffer è NULL, impostare InBufferSize su zero.

[out, optional] OutBuffer

Puntatore a un buffer allocato dal chiamante che deve contenere i dati di output dell'operazione. Il formato per i dati in questo buffer dipende dal codice di controllo alimentazione specificato dal parametro PowerControlCode . Il parametro OutBuffer è facoltativo e può essere specificato come NULL se l'operazione specificata non produce dati di output.

[in] OutBufferSize

Dimensioni, in byte, del buffer di output a cui punta il parametro OutBuffer . Se OutBuffer è NULL, impostare OutBufferSize su zero.

[out, optional] BytesReturned

Puntatore a una posizione in cui la routine scrive il numero di byte di dati scritti nel buffer a cui punta OutBuffer. Il numero di byte scritti sarà minore o uguale a OutBufferSize. Questo parametro è facoltativo e può essere specificato come NULL se il chiamante non deve sapere quanti byte sono stati scritti nel buffer di output.

Valore restituito

La routine StorPortPoFxPowerControl restituisce uno dei codici di stato seguenti:

Codice restituito Descrizione
STOR_STATUS_SUCCESS
L'operazione di controllo alimentazione specificata in PowerControlCode è stata eseguita correttamente.
STOR_STATUS_INVALID_PARAMETER
HwDeviceExtension o Device è NULL.

-oppure-

L'indirizzo punta a una struttura di indirizzi di unità non valida.

-oppure-

Il dispositivo di archiviazione specificato da Address non viene trovato.

STOR_STATUS_INVALID_DEVICE_REQUEST
Il dispositivo di archiviazione non è registrato con PoFx.
STOR_STATUS_INVALID_IRQL
> DISPATCH_LEVEL IRQL corrente.
STOR_STATUS_UNSUCCESSFUL
L'operazione di controllo alimentazione non è riuscita.

Commenti

Un driver minport chiama questa routine per inviare una richiesta di controllo alimentazione direttamente al PEP. Una richiesta di controllo alimentazione è simile a una richiesta di controllo I/O (IOCTL). A differenza di un IOCTL, tuttavia, una richiesta di controllo alimentazione viene inviata direttamente a PEP e non viene osservata da altri driver di dispositivo nello stack di dispositivi. Durante una chiamata StorPortPoFxPowerControl , il PEP esegue in modo sincrono l'operazione richiesta.

Analogamente, il PEP può inviare una richiesta di controllo alimentazione direttamente al miniport. Il driver miniport gestisce questa richiesta nelle routine HwStorAdapterControl e HwStorUnitControl . Il parametro ControlType riceve il tipo ScsiAdapterPoFxPowerControl nella routine HwStorAdapterControl e ScsiUnitPoFxPowerControl nella routine HwStorUnitControl .

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 8.
Piattaforma di destinazione Universale
Intestazione storport.h
Libreria Storport.lib
IRQL <= DISPATCH_LEVEL

Vedi anche

HwStorAdapterControl

HwStorUnitControl