STOR_POFX_COMPONENT 結構 (storport.h)

STOR_POFX_COMPONENT 結構描述存放裝置元件的電源狀態屬性。 STOR_POFX_COMPONENT_V2 結構提供額外的電源狀態控制件。

語法

typedef struct _STOR_POFX_COMPONENT {
  ULONG                          Version;
  ULONG                          Size;
  ULONG                          FStateCount;
  ULONG                          DeepestWakeableFState;
  GUID                           Id;
  STOR_POFX_COMPONENT_IDLE_STATE FStates[ANYSIZE_ARRAY];
} STOR_POFX_COMPONENT, *PSTOR_POFX_COMPONENT;

成員

Version

這個結構的版本號碼。 將此成員設定為 STOR_POFX_DEVICE_VERSION_V1

Size

此結構的大小。 將此值設定為 STOR_POFX_COMPONENT_SIZE

FStateCount

FStates 成員所指向之陣列中的元素數目。 此外,此成員會指定元件所支援 (F 狀態) 的功能電源狀態數目。 元件必須支援至少一個 F 狀態 (F0) 。

DeepestWakeableFState

元件可以從中喚醒的最深層 F 狀態索引。 針對 F0 指定 0,F1 則指定 1,依此類傳。 此索引必須小於 FStateCount

Id

元件標識碼,可唯一識別此元件與裝置中的其他元件有關。 如果電源管理架構 (PoFx) 需要元件標識碼來區別此元件與相同裝置中的其他類似元件,驅動程式應該為此成員指定非零值。 Storport 支援的元件標識碼是STORPORT_POFX_ADAPTER_GUID (识别适配卡) ,而STORPORT_POFX_LUN_GUID (识别单位) 。

FStates[ANYSIZE_ARRAY]

STOR_POFX_COMPONENT_IDLE_STATE 結構的陣列。 此陣列的長度是由 FStateCount 成員指定。 每個數位元素都會指定元件所支援之 F 狀態的屬性。 元素 0 描述 F0、元素 1 描述 F1 等等。 需要多個閑置狀態結構時,會在 STOR_ POFX_COMPONENT 結構結尾配置其他結構, 而 FStateCount 設定為 1,也就是ANYSIZE_ARRAY的值,再加上其他結構的計數。

備註

當迷你埠驅動程式向 Storport 電源管理架構註冊裝置時,迷你埠驅動程式會提供保留註冊資訊的 STOR_POFX_DEVICE 結構。 這個結構包含 STOR_ POFX_COMPONENT 結構的數位。 此陣列中的元素描述裝置中個別元件的電源屬性。 這些元件的電源設定是根據此數位資訊來管理。

Id 成員包含可唯一識別元件的元件標識碼。 元件標識碼與元件索引不同, StorPortPoFxActivateComponent 之類的例程會使用 來識別已註冊裝置中的元件。 元件索引是裝置驅動程式用來註冊裝置之STOR_POFX_DEVICE結構中 Components 陣列的索引。 如果 Components 陣列包含 N 個元素,則元件索引是範圍 0 到 N–1 中的整數值。 相反地,元件標識碼是 GUID 值。

單一配接器裝置元件的標識碼會在 storport.h 中定義為 STORPORT_POFX_ADAPTER_GUID。 單一單位裝置元件的標識碼STORPORT_POFX_LUN_GUID。 在描述 Id 成員中的配接器元件或單位元件時,請使用這些識別碼。

F 狀態需求如下所示:

  • 針對適配卡裝置元件,迷你埠必須指定單一元件,以及適配卡最多八個 F 狀態。 StorPortInitializePoFxPower 應該只由迷你埠在迷你埠被動初始化例程的內容中呼叫。
  • 對於單位裝置元件,迷你埠必須指定單位的單一元件,而且最多可以指定兩個 F 狀態。 單位裝置必須指定 F0 狀態,而且可以選擇性地有一個額外的 F 狀態。 StorPortInitializePoFxPower 應該只由迷你埠在迷你埠的 ScsiUnitPoFxPowerInfo 單元控件内容中呼叫。

若為單位裝置元件,如果 FStates 陣列中包含額外的 F 狀態,大小成員會維持為 STOR_POFX_COMPONENT_SIZE ,且不包含其他 STOR_POFX_COMPONENT_IDLE_STATE 結構的大小。

規格需求

需求
最低支援的用戶端 Windows 8
標頭 storport.h

另請參閱

HW_UNIT_CONTROL

STOR_POFX_COMPONENT_V2

STOR_POFX_COMPONENT_IDLE_STATE

STOR_POFX_DEVICE

StorPortInitializePoFxPower

StorPortPoFxActivateComponent