共用方式為


UsbPm_AssignConnectorPowerLevel函式 (usbpmapi.h)

嘗試使用指定的電壓/目前/電源值重新交涉 PD 合約。

語法

NTSTATUS UsbPm_AssignConnectorPowerLevel(
  [In] USBPM_CLIENT                               ClientHandle,
  [In] USBPM_CONNECTOR                            ConnectorHandle,
  [In] PUSBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS Params
);

參數

[In] ClientHandle

用戶端驅動程式在先前呼叫UsbPm_Register中收到的句柄。

[In] ConnectorHandle

當原則管理員呼叫 驅動程式的 EVT_USBPM_EVENT_CALLBACK 實作時,由原則管理員提供的連接器句柄。 句柄是在 Params 值的 EventData.ConnectorStateChange.ConnectorHandle 成員中設定。

[In] Params

驅動程式提供的 USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS 結構的指標,其中包含要交涉的電壓/目前/電源值。 呼叫 USBPM_ASSIGN_CONNECTOR_POWER_LEVEL_PARAMS_INIT,以初始化 結構。

將 0 指定為電源接收角色中連接器的電壓/目前/電源值,會導致連接器停止充電。

傳回值

如果作業成功,則傳回STATUS_SUCCESS。 否則,會傳回適當的 NTSTATUS 值。

備註

只要附加埠夥伴,交涉的設定才會持續存在,而且會在卸離埠夥伴時捨棄。 用戶端驅動程式必須根據目前的連接器狀態呼叫此函式,而不需假設先前的設定。

如果此呼叫成功,表示已接受要求,但 PD 合約重新交涉可能不完整。 PD 合約重新交涉的結果可以是成功或失敗。

由於 PD 合約重新交涉成功, EVT_USBPM_EVENT_CALLBACK 會使用連接器狀態變更事件來叫用。 如果 PD 合約重新交涉要求失敗,則不會叫用回呼函式。 例如,合作夥伴拒絕要求,或因為連接器狀態已變更而不再有效。
在 Windows 10 版本 1809 中,驅動程式只能使用 UsbCPowerRoleSink 的電源角色和合作夥伴連接到連接器時呼叫此函式。

規格需求

需求
最低支援的用戶端 Windows 10 版本 1809
最低 KMDF 版本 1.27
最低UMDF版本 2.27
標頭 usbpmapi.h
程式庫 UsbPmApi.lib
IRQL PASSIVE_LEVEL

另請參閱

UsbPm_Register

EVT_USBPM_EVENT_CALLBACK