Fonctionnalités de gestion de l’alimentation de création de rapports

Les pilotes miniports qui prennent en charge NDIS 6.20 et versions ultérieures de NDIS signalent leurs fonctionnalités de gestion de l’alimentation matérielle pendant l’initialisation. NDIS signale les fonctionnalités actuelles aux pilotes de protocole NDIS qui se superposent pendant l’opération de liaison. Toutefois, NDIS peut masquer certaines fonctionnalités du pilote de protocole. Par exemple, NDIS peut signaler des fonctionnalités différentes lorsqu’un utilisateur désactive tout ou partie des fonctionnalités de gestion de l’alimentation.

Notez que les fonctionnalités actuelles de gestion de l’alimentation que NDIS signale à un pilote de protocole ne sont pas nécessairement les mêmes que les fonctionnalités matérielles signalées par le pilote miniport à NDIS.

Si un pilote miniport NDIS 6.1 ou antérieur est lié à un pilote de protocole NDIS 6.20, NDIS traduit les fonctionnalités de gestion de l’alimentation dans un format pris en charge par le pilote de protocole NDIS 6.20. NDIS traduit également les fonctionnalités de gestion de l’alimentation qu’un pilote miniport NDIS 6.20 signale dans un format pris en charge par les pilotes NDIS 6.1 et antérieurs.

Les fonctionnalités matérielles que signale un pilote miniport peuvent être activées ou désactivées dans les paramètres de fichier INF. Pour plus d’informations sur les paramètres de fichier INF de gestion de l’alimentation, consultez Mots clés INF standardisés pour la gestion de l’alimentation.

Lors de l’initialisation du miniport, un pilote miniport initialise une structure NDIS_PM_CAPABILITIES avec les fonctionnalités de gestion de l’alimentation du matériel sous-jacent. Le pilote miniport définit le membre PowerManagementCapabilitiesEx de la structure NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES pour qu’il pointe vers la structure NDIS_PM_CAPABILITIES .

La structure NDIS_PM_CAPABILITIES comprend les informations suivantes :

Indicateurs
Pour NDIS 6.20, ce membre est réservé à NDIS.

À compter de NDIS 6.30, les indicateurs suivants sont définis :

NDIS_PM_WAKE_PACKET_INDICATION_SUPPORTED
Si cet indicateur est défini, la carte réseau peut enregistrer le paquet reçu qui a provoqué la génération d’un événement de mise en éveil.

Pour plus d’informations sur cette fonctionnalité de gestion de l’alimentation, consultez NDIS Wake Reason Status Indications.

NDIS_PM_SELECTIVE_SUSPEND_SUPPORTED
Si cet indicateur est défini, le pilote miniport prend en charge la suspension sélective NDIS pour les cartes réseau.

Pour plus d’informations sur cette fonctionnalité de gestion de l’alimentation, consultez Interruption sélective NDIS.

SupportedWoLPacketPatterns
Contient des indicateurs qui spécifient les modèles de paquets wake-on-LAN (WOL) pris en charge par une carte réseau. Par exemple, la carte réseau peut générer un événement de mise en éveil lorsqu’elle reçoit un bitmap, un paquet magique WOL ou un message d’identificateur de requête EAP sur LAN (EAPOL). Pour obtenir la liste complète des modèles pris en charge dans le système d’exploitation actuel, consultez la page de référence NDIS_PM_CAPABILITIES .

NumTotalWoLPatterns
Valeur ULONG qui contient le nombre total de modèles WOL pris en charge par une carte réseau. Il s’agit de la somme du « nombre de modèles de protocole WOL pris en charge » et du « nombre de modèles bitmap WOL pris en charge ».

Par exemple, si votre pilote prend en charge 8 modèles bitmap flexibles, IPv4 TCP SYN (via un filtre prédéfini) et un paquet magique, vous devez signaler 9 dans NumTotalWoLPatterns. (8 bitmaps + 1 IPv4 TCP SYN = 9)

Note Le nombre total de modèles WOL n’inclut pas le modèle de mise en éveil des paquets magiques.

Pour plus d’informations sur les modèles de protocole WOL, consultez NDIS_PM_WOL_PATTERN.

MaxWoLPatternSize
Contient le nombre maximal d’octets pouvant être comparés à un modèle.

MaxWoLPatternOffset
Contient le nombre d’octets d’un paquet qui peut être examiné, qui commence à partir du début de l’en-tête MAC.

MaxWoLPacketSaveBuffer
Contient le nombre d’octets d’un modèle de protocole WOL qu’un pilote miniport peut enregistrer dans une mémoire tampon et indiquer la pile de pilotes.

SupportedProtocolOffloads
Contient des indicateurs qui spécifient les fonctionnalités de déchargement du protocole de gestion de l’alimentation prises en charge par une carte réseau. Les pilotes miniport utilisent ces indicateurs pour signaler les fonctionnalités de déchargement du protocole de faible consommation d’une carte réseau. Par exemple, la carte réseau peut prendre en charge le déchargement ARP IPv4, la sollicitation de voisins IPv6 (NS) ou l’établissement d’un réseau sécurisé robuste IEEE 802.11 (RSN) 4 voies et 2 voies. Pour obtenir la liste complète des déchargements de protocole pris en charge dans le système d’exploitation actuel, consultez la page de référence NDIS_PM_CAPABILITIES .

NumArpOffloadIPv4Addresses
Contient le nombre d’adresses IPv4 de déchargement ARP.

NumNSOffloadIPv6Addresses
Contient le nombre de requêtes IPv6 de déchargement réseau (NS) que la carte réseau prend en charge.

MinMagicPacketWakeUp
Spécifie l’état d’alimentation de l’appareil le plus bas à partir duquel une carte réseau peut signaler un événement de mise en éveil à la réception d’un paquet magique. (Un paquet magique est un paquet qui contient 16 copies contiguës de l’adresse Ethernet de la carte réseau de réception.)

MinPatternWakeUp
Spécifie l’état d’alimentation du périphérique le plus bas à partir duquel une carte réseau peut signaler un événement de mise en éveil à la réception d’une trame réseau qui contient un modèle spécifié par le pilote de protocole.

MinLinkChangeWakeUp
Spécifie l’état d’alimentation le plus bas de l’appareil à partir duquel une carte réseau peut signaler un événement de mise en éveil en cas de changement de lien (connexion multimédia ou déconnexion).

SupportedWakeUpEvents
Spécifie les événements de mise en éveil indépendants du média qu’une carte réseau prend en charge. Ces événements ne sont pas spécifiques au type de média. Par exemple, ces événements de mise en éveil incluent des événements de modification de lien.

MediaSpecificWakeUpEvents
Spécifie les événements de mise en éveil spécifiques au média pris en charge par une carte réseau. Par exemple, ces événements sont les suivants :

  • La carte réseau 802.11 se dissocie du point d’accès (AP).

  • La carte réseau haut débit mobile (Mo) détecte une modification de son état d’inscription dans le service MO.

Si un pilote miniport prend en charge le déchargement des protocoles sur une carte réseau à faible consommation d’alimentation, il doit prendre en charge le même état d’alimentation faible pour le déchargement du protocole qu’il prend en charge pour un événement WOL de correspondance de modèle ; c’est-à-dire la valeur spécifiée dans le membre MinPatternWakeUp ou MinMagicPacketWakeUp .

NDIS initialise une structure de NDIS_PM_CAPABILITIES avec les fonctionnalités de gestion de l’alimentation actuellement disponibles de la carte réseau sous-jacente et lui transmet les pilotes de protocole sur-mentant le protocole pendant l’opération de liaison. NDIS définit le membre PowerManagementCapabilitiesEx de la structure NDIS_BIND_PARAMETERS pour qu’il pointe vers la structure NDIS_PM_CAPABILITIES.

Les pilotes sur-ment peuvent utiliser la requête OID OID_PM_HARDWARE_CAPABILITIES pour obtenir les fonctionnalités de gestion de l’alimentation matérielle de la carte réseau. NDIS gère cette demande OID pour le compte du pilote miniport. Les pilotes miniportS NDIS ne sont pas nécessaires pour prendre en charge la demande OID OID_PM_HARDWARE_CAPABILITIES.

Les pilotes trop haut peuvent utiliser l’OID OID_PM_CURRENT_CAPABILITIES pour interroger les fonctionnalités de gestion de l’alimentation actuellement disponibles d’une carte réseau. NDIS gère cette demande OID pour le compte du pilote miniport. Les pilotes miniportS NDIS ne sont pas nécessaires pour prendre en charge la demande OID OID_PM_CURRENT_CAPABILITIES.