StorPortInvokeAcpiMethod function (storport.h)
The StorPortInvokeAcpiMethod routine executes an ACPI method for a storage device.
Syntax
ULONG StorPortInvokeAcpiMethod(
[in] PVOID HwDeviceExtension,
[in, optional] PSTOR_ADDRESS Address,
[in] ULONG MethodName,
[in, optional] PVOID InputBuffer,
[in] ULONG InputBufferLength,
[in, optional] PVOID OutputBuffer,
[in] ULONG OutputBufferLength,
[out, optional] PULONG BytesReturned
);
Parameters
[in] HwDeviceExtension
A pointer to the hardware device extension for the host bus adapter (HBA).
[in, optional] Address
The address of the target device. This parameter is optional. If Address is set to NULL, the adapter is the target.
[in] MethodName
A four-byte name for the ACPI method. For example, ((ULONG) 'DDS_') would name the _SDD, or 'Set Device Data', ACPI method for an AHCI controller.
[in, optional] InputBuffer
A pointer to the input data to the method.
[in] InputBufferLength
The length, in bytes, of the buffer in InputBuffer.
[in, optional] OutputBuffer
A pointer to the output data from the method.
[in] OutputBufferLength
The length, in bytes, of the buffer in OutputBuffer.
[out, optional] BytesReturned
A pointer to the length, in bytes, of the data returned in OutputBuffer.
Return value
The StorPortInvokeAcpiMethod routine returns one of these status codes:
Return code | Description |
---|---|
|
A general error condition exists. |
|
HwDeviceExtension, InputBuffer, or OutputBuffer is NULL.
-or- Address refers to a target that does not exist. |
|
The ACPI method is not implemented. |
|
Insufficient resources are available to execute the method, or OutputBufferLength is not large enough for the returned data. |
|
Current IRQL > PASSIVE_LEVEL. |
|
The method executed successfully. |
Remarks
The StorPortInvokeAcpiMethod enables a miniport driver to invoke ACPI methods defined for storage controllers and storage LUNs. The method names are four-byte character strings that occupy a ULONG value in MethodName.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available in Windows 8 and later versions of Windows. |
Target Platform | Universal |
Header | storport.h (include Storport.h) |
IRQL | PASSIVE_LEVEL |