在 UMDF 驱动程序中支持系统唤醒

警告

UMDF 2 是 UMDF 的最新版本,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 不会向 UMDF 1 添加任何新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。

存档的 UMDF 1 示例可在 Windows 11 版本 22H2 - 2022 年 5 月驱动程序示例更新中找到。

有关详细信息,请参阅使用 UMDF 入门

当系统处于低功耗状态时,某些设备可以检测外部事件(如传入网络数据包),然后唤醒系统。 例如,如果 PCI 设备具有系统唤醒功能(如设备的电源管理功能 (PMC) 寄存器中所述),它会通过在 PCI 总线上引发电源管理事件 (PME) 信号来唤醒系统。

如果设备可以从系统范围的低功耗状态唤醒系统,则电源策略所有者中的 IDriverEntry::OnDeviceAdd 回调函数必须执行以下两个步骤:

  1. 调用 IWDFDevice2::AssignSxWakeSettings 以指定:

    • 设备将进入的低功耗状态
    • 用户是否可以控制设备的空闲设置
    • 是启用还是禁用设备的唤醒功能
  2. 如果需要设备,请实现 IPowerPolicyCallbackWakeFromSx 接口和以下事件回调函数:

公共汽车司机也参与唤醒系统。 设备总线的内核模式驱动程序在总线适配器上执行所需的一切操作,以启用和禁用设备从低功耗状态唤醒的功能。

有关控制设备唤醒功能的注册表项的信息,请参阅 UMDF 中的设备空闲和唤醒行为的用户控制