共用方式為


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時,原則管理員所提供的連接器句柄。 句柄會在 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