IOCTL_STORAGE_DEVICE_POWER_CAP IOCTL (ntddstor.h)
Un pilote peut utiliser IOCTL_STORAGE_DEVICE_POWER_CAP pour spécifier un niveau maximal de consommation d’alimentation opérationnelle pour un périphérique de stockage. Le système d’exploitation fera de son mieux pour passer l’appareil à un état d’alimentation qui ne dépassera pas le maximum donné ; toutefois, cela dépend de ce que l’appareil prend en charge. La valeur maximale réelle peut être inférieure ou supérieure à la valeur maximale souhaitée.
Code principal
Mémoire tampon d’entrée
Irp->AssociatedIrp.SystemBuffer contient une structure STORAGE_DEVICE_POWER_CAP qui spécifie la puissance maximale.
Longueur de la mémoire tampon d’entrée
-
Parameters.DeviceIoControl.InputBufferLength indique la taille, en octets, de la mémoire tampon de paramètres d’entrée à Irp->AssociatedIrp.SystemBuffer, qui doit être supérieure ou égale à
sizeof(STORAGE_DEVICE_POWER_CAP)
.
Mémoire tampon de sortie
Si l’opération réussit, la mémoire tampon de sortie à Irp->AssociatedIrp.SystemBuffer contient une structure de STORAGE_DEVICE_POWER_CAP.
Longueur de la mémoire tampon de sortie
Parameters.DeviceIoControl.OutputBufferLength indique la taille, en octets, de la mémoire tampon de paramètres de sortie à Irp->AssociatedIrp.SystemBuffer.
outputBufferLength doit être supérieur ou égal à sizeof(STORAGE_DEVICE_POWER_CAP)
.
Bloc d’état
Le champ Informations est défini sur le nombre d’octets retournés. Le champ Status est défini sur STATUS_SUCCESS, ou éventuellement sur STATUS_INVALID_DEVICE_REQUEST, STATUS_INVALID_PARAMETER ou STATUS_NOT_SUPPORTED.
Remarques
Pour un redémarrage, l’effet IOCTL_STORAGE_DEVICE_POWER_CAP n’est pas persistant. Pour un cycle de réinitialisation/alimentation de l’appareil NVMe, l’effet du IOCTL est persistant.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 10 |
serveur minimum pris en charge | Windows Server 2016 |
d’en-tête | ntddstor.h (include Ntddstor.h) |