NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG

微型端口驱动程序使用 NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG 状态指示将 NIC 硬件和微型端口驱动程序的当前时间戳配置报告给 NDIS 和过度布局驱动程序。

此状态指示表示当前启用或禁用了哪些时间戳功能。 有关状态指示驱动程序用于报告时间戳功能的信息,请参阅 NDIS_STATUS_TIMESTAMP_CAPABILITY

言论

在初始化期间,微型端口驱动程序应从其 MiniportInitializeEx 函数中指示当前时间戳配置。 驱动程序应:

  1. 使用当前时间戳配置初始化 NDIS_TIMESTAMP_CAPABILITIES 结构。 驱动程序设置 NDIS_TIMESTAMP_CAPABILITIES 结构的成员,如下所示:

    • 驱动程序使用 TimestampFlags 字段来指示其当前时间戳配置。 如果当前启用相应的时间戳功能,则应将 NDIS_TIMESTAMP_CAPABILITY_FLAGS 结构中的每个标志设置为 TRUE;否则应 FALSE

    注意

    若要确定当前启用或禁用的时间戳功能,微型端口将读取时间戳相关关键字的当前值,*PtpHardwareTimestamp*SoftwareTimestamp。 有关使用这些关键字并确定启用哪些时间戳功能的详细信息,请参阅 NDIS 数据包时间戳的标准化 INF 关键字。

    注意

    如果实现同时找到通过关键字启用的硬件和软件时间戳,则微型端口应仅启用硬件时间戳,并且应禁用软件时间戳。

    • 如果当前配置中启用了硬件跨时间戳,驱动程序应将 CrossTimestamp 字段设置为 TRUE;否则为 FALSE FALSE

    • HardwareClockFrequencyHz 字段必须包含 NIC 硬件时钟的当前作频率。

    • 标头 字段中的 类型 字段应设置为 NDIS_OBJECT_TYPE_DEFAULT修订 设置为 NDIS_TIMESTAMP_CAPABILITIES_REVISION_1

  2. 通过调用 NdisMIndicateStatusEx 来报告当前配置,生成 NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG 状态指示。 NDIS_STATUS_INDICATION 结构的 StatusBuffer 字段应指向初始化 NDIS_TIMESTAMP_CAPABILITIES 结构。

微型端口驱动程序必须在指示 NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG之前至少生成一次 NDIS_STATUS_TIMESTAMP_CAPABILITY 指示。 否则,NDIS 将拒绝 NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG 状态指示,并且不会向过度提供驱动程序指示。

如果微型端口驱动程序使用 NDIS_STATUS_TIMESTAMP_CAPABILITY 状态指示(例如,HardwareClockFrequencyHz 字段中因 NIC 硬件中的基础更改而 NDIS_TIMESTAMP_CAPABILITIES 结构中的更改),则它还必须使用 NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG 报告当前配置中的相应更改状态指示。

微型端口驱动程序还必须在检测到当前时间戳配置更改时生成 NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG 状态指示。

要求

要求 价值
支持的最低客户端 Windows 11
支持的最低服务器 Windows Server 2022
NDIS 版本 NDIS 6.82 及更高版本
页眉 Ntddndis.h (包括 Ndis.h)

另请参阅

报告时间戳功能和当前配置

NDIS 数据包时间戳 标准化 INF 关键字

NDIS_STATUS_TIMESTAMP_CAPABILITY

NDIS_TIMESTAMP_CAPABILITIES

NDIS_TIMESTAMP_CAPABILITY_FLAGS

MiniportInitializeEx

NdisMIndicateStatusEx

NDIS_STATUS_INDICATION