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


OID_PNP_ADD_WAKE_UP_PATTERN

OID_PNP_ADD_WAKE_UP_PATTERN OID отправляется драйвером протокола в мини-драйвер, чтобы указать шаблон пробуждения. Шаблон пробуждения вместе с маской описывается структурой NDIS_PM_PACKET_PATTERN.

Протокол, который включает пробуждение по шаблону для мини-порта драйвера (см. OID_PNP_ENABLE_WAKE_UP) использует OID_PNP_ADD_WAKE_UP_PATTERN для указания шаблона пробуждения. Шаблон пробуждения может храниться в памяти узла или сетевом адаптере в зависимости от возможностей сетевого адаптера.

Элемент InformationBuffer структуры NDIS_OID_REQUEST содержит следующее:

  • Структура NDIS_PM_PACKET_PATTERN, предоставляющая сведения о шаблоне и его маске.

  • Маска, указывающая, какие байты входящего пакета должны сравниваться с соответствующими байтами в шаблоне. Маска начинается с первого байта пакета. Маска сразу же следует NDIS_PM_PACKET_PATTERN структуре в InformationBuffer. Дополнительные сведения о том, как работает эта маска, см. в спецификации справочника по управлению питанием класса сетевых устройств.

  • Шаблон пробуждения, который начинается PatternOffset байт с начала InformationBuffer. Дополнительные сведения о шаблонах пробуждения см. в спецификациисправочника по управлению питанием класса сетевых устройств.

Количество шаблонов пробуждения, которые драйвер минипорта может принимать из протокола, может зависеть от доступности ресурсов, таких как память узла, выделенная драйвером минипорта для таких шаблонов, или доступное хранилище в сетевом адаптере. Если мини-драйвер не может добавить шаблон пробуждения из-за нехватки ресурсов, драйвер минипорта возвращает NDIS_STATUS_RESOURCES в ответ на OID_PNP_ADD_WAKE_UP_PATTERN.

Если драйвер протокола пытается добавить повторяющийся шаблон, минипорт-драйвер должен вернуть NDIS_STATUS_INVALID_DATA в ответ на OID_PNP_ADD_WAKE_UP_PATTERN.

Промежуточный драйвер, в котором верхний край получает этот запрос OID, должен всегда распространять запрос на базовый драйвер минипорта путем вызова NdisRequest или NdisCoRequest.

Требования

Версия

Поддерживается в NDIS 6.0 и NDIS 6.1. Для NDIS 6.20 и более поздних версий используйте вместо этого OID_PM_ADD_WOL_PATTERN.

Заголовок

Ntddndis.h (include Ndis.h)

См. также

NDIS_PM_PACKET_PATTERN

OID_PM_ADD_WOL_PATTERN