Поделиться через


NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG

Драйверы минипорта используют сведения о состоянии NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG, чтобы сообщить о текущей конфигурации метки времени аппаратного адаптера и минипорта драйвера в NDIS и слишком много драйверов.

Это указание состояния представляет, какие возможности метки времени в настоящее время включены или отключены. Сведения о драйвере указания состояния, используемом для создания отчетов о возможностях метки времени, см. в NDIS_STATUS_TIMESTAMP_CAPABILITY.

Замечания

Во время инициализации драйвер минипорта должен указывать текущую конфигурацию метки времени из функции MiniportInitializeEx. Драйвер должен:

  1. Инициализировать структуру NDIS_TIMESTAMP_CAPABILITIES с текущей конфигурацией метки времени. Драйвер задает элементы структуры NDIS_TIMESTAMP_CAPABILITIES следующим образом:

    • Драйвер использует поле timestampFlags для указания текущей конфигурации метки времени. Каждый флаг в структуре NDIS_TIMESTAMP_CAPABILITY_FLAGS должен иметь значение TRUE, если соответствующая возможность метки времени включена или FALSE, если она отсутствует.

    Заметка

    Чтобы определить, какие возможности метки времени включены или отключены, минипорт считывает текущие значения ключевых слов, связанных с меткой времени, *PtpHardwareTimestamp и *SoftwareTimestamp. Дополнительные сведения об использовании этих ключевых слов и определении возможностей метки времени для включения см. в разделе Стандартные ключевые слова INF для метки времени пакета NDIS.

    Заметка

    Если реализация находит метки времени аппаратного и программного обеспечения, включенные с помощью ключевых слов, минипорт должен включать только метки времени оборудования и отключать метки времени программного обеспечения.

    • Драйвер должен задать поле CrossTimestamp значение true TRUE, если метки времени между оборудованием включены в текущей конфигурации или FALSE, если они отсутствуют.

    • Поле HardwareClockFrequencyHz должно содержать текущую рабочую частоту аппаратных часов сетевого адаптера.

    • Поле типа в поле заголовка должно иметь значение NDIS_OBJECT_TYPE_DEFAULT, а редакции — NDIS_TIMESTAMP_CAPABILITIES_REVISION_1.

  2. Создайте указание состояния NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG путем вызова NdisMIndicateStatusEx, чтобы сообщить о текущей конфигурации. Поле StatusBuffer структуры NDIS_STATUS_INDICATION должно указывать на инициализированную структуру NDIS_TIMESTAMP_CAPABILITIES.

Минипорт-драйвер должен создать NDIS_STATUS_TIMESTAMP_CAPABILITY указание по крайней мере один раз перед указанием NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG. В противном случае NDIS отклонит указание состояния NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG, и он не будет указан для переопределения драйверов.

Если драйвер минипорта указывает на изменение метки времени аппаратного адаптера с помощью указания состояния NDIS_STATUS_TIMESTAMP_CAPABILITY (например, изменение поля HardwareClockFrequencyHz в структуре NDIS_TIMESTAMP_CAPABILITIES из-за базового изменения сетевого адаптера), оно также должно сообщить о соответствующем изменении текущей конфигурации с помощью NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG указание состояния.

Минипорт-драйвер также должен создавать индикатор состояния NDIS_STATUS_TIMESTAMP_CURRENT_CONFIG при обнаружении изменения текущей конфигурации метки времени.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 11
Минимальный поддерживаемый сервер Windows Server 2022
Версия NDIS NDIS 6.82 и более поздних версий
Заголовок Ntddndis.h (include Ndis.h)

См. также

Отчеты о возможностях метки времени и текущей конфигурации

Стандартные ключевые слова INF для метки времени пакета NDIS

NDIS_STATUS_TIMESTAMP_CAPABILITY

NDIS_TIMESTAMP_CAPABILITIES

NDIS_TIMESTAMP_CAPABILITY_FLAGS

MiniportInitializeEx

NdisMIndicateStatusEx

NDIS_STATUS_INDICATION