Сброс оборудования драйвера miniport
Драйвер мини-порта должен зарегистрировать функцию MiniportResetEx в NdisMRegisterMiniportDriver.
MiniportResetEx может выполняться синхронно или асинхронно с помощью вызова NdisMResetComplete (см. следующий рисунок).
MiniportResetEx должен:
Отключите дальнейшие прерывания.
Очистите данные, связанные с любой отправкой. Например, в кольцевом буфере для устройства с прямым доступом к памяти (DMA) шины master должны быть очищены указатели для буферов отправки. Десериализованные и ориентированные на подключение драйверы мини-портов должны возвращать NDIS_STATUS_REQUEST_ABORTED для всех запросов на отправку в очереди.
Восстановите состояние оборудования и внутреннее состояние драйвера мини-порта до состояния, которое существовало до операции сброса.
Драйвер мини-порта отвечает за восстановление состояния оборудования устройства, за исключением адресов многоадресной рассылки, фильтров пакетов, параметров разгрузки задач и шаблонов пробуждения. Эти параметры восстанавливаются драйвером мини-порта или NDIS. Драйвер мини-порта определяет, кто отвечает за восстановление этих параметров, возвращая логическое значение в параметре AddressingReset .
Если драйвер мини-порта возвращает значение FALSE в параметре AddressingReset , драйвер мини-порта восстанавливает адреса многоадресной рассылки, фильтры пакетов, параметры разгрузки задач и шаблоны пробуждения в исходное состояние. Если драйвер мини-порта возвращает true в AddressingReset, NDIS вызывает функцию MiniportOidRequest драйвера минипорта без подключения или функцию MiniportCoOidRequest драйвера miniport, ориентированного на подключение, чтобы задать следующие параметры конфигурации:
Сетевой пакет фильтрует по запросу набора OID_GEN_CURRENT_PACKET_FILTER.
Список адресов многоадресной рассылки с помощью запроса набора OID_802_3_MULTICAST_LIST.
Разгрузка параметров инкапсуляции задачи с помощью запроса набора OID_OFFLOAD_ENCAPSULATION.
Шаблоны пробуждения управления питанием с помощью запроса набора OID_PNP_ADD_WAKE_UP_PATTERN. Примечание Начиная с версии NDIS 6.20, шаблоны пробуждения, заданные с помощью OID_PM_ADD_WOL_PATTERN , должны быть восстановлены драйвером мини-порта.
Связанные темы
Состояния адаптера драйвера miniport