Résumé des modifications requises pour porter un pilote Miniport vers NDIS 6.20
Cette rubrique récapitule les modifications requises pour porter un pilote miniport NDIS 6.x vers NDIS 6.20.
NDIS 6.20 conserve la compatibilité descendante avec les versions antérieures de NDIS. Pour plus d’informations sur la compatibilité descendante, consultez Compatibilité descendante NDIS 6.20.
Pour mettre à jour un pilote miniport afin de prendre en charge l’environnement NDIS 6.20, vous devez modifier le pilote miniport NDIS 6.x comme suit :
Environnement de build
Remplacez la définition de préprocesseur NDIS60_MINIPORT_DRIVER ou NDIS61_MINIPORT_DRIVER par NDIS620_MINIPORT_DRIVER.
Conditions générales de portage
Remplacez les interfaces obsolètes par les versions NDIS 6.20. Pour plus d’informations sur les interfaces obsolètes, consultez Interfaces obsolètes dans NDIS 6.20.
Mettez à jour les interfaces suivantes pour prendre en charge plus de 64 processeurs :
- Mise à l’échelle côté réception (RSS)
- Interfaces du pilote de périphérique d’informations sur le processeur
- Allocation des ressources
- Verrous de lecture et d’écriture
Pour plus d’informations sur la prise en charge de plus de 64 processeurs, consultez Prise en charge de plus de 64 processeurs dans NDIS 6.20.
Définissez la version NDIS sur 6.20 dans les membres MajorNdisVersion et MinorNdisVersion de la structure NDIS_MINIPORT_DRIVER_CHARACTERISTICS , qui est passée à la fonction NdisMRegisterMiniportDriver .
Définissez la version du pilote miniport dans les membres MajorDriverVersion et MinorDriverVersion de la structure NDIS_MINIPORT_DRIVER_CHARACTERISTICS sur une valeur appropriée spécifique au pilote.
Définissez des points d’entrée de requête OID directs dans la structure NDIS_MINIPORT_DRIVER_CHARACTERISTICS. La prise en charge de l’interface de requête OID directe était facultative pour les pilotes NDIS 6.1, mais elle est obligatoire pour les pilotes NDIS 6.20. Pour plus d’informations sur l’interface de requête OID directe du pilote miniport, consultez Requêtes OID de l’adaptateur Miniport.
Initialisation de l’adaptateur miniport
Utilisez la dernière version des interfaces publicitaires des fonctionnalités d’adaptateur miniport. Les interfaces suivantes ont des fonctionnalités mises à jour :
- Gestion de l'alimentation
- Mise à l’échelle côté réception (RSS)
- Assistant matériel (VMQ)
Utilisez les versions mises à jour de ces structures :
- NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES
- NDIS_RESTART_GENERAL_ATTRIBUTES
- NDIS_RECEIVE_SCALE_PARAMETERS
- NDIS_MINIPORT_ADAPTER_HARDWARE_ASSIST_ATTRIBUTES
Pour plus d’informations sur la version de la structure NDIS, consultez Spécification des informations de version NDIS.
Chemins d’accès au code d’envoi et de réception
Les pilotes NDIS 6.20 doivent prendre en charge la limitation côté réception (RST) dans le traitement des interruptions de réception. Les paramètres ReceiveThrottleParameters des fonctions de gestionnaire DPC MiniportInterruptDPC et MiniportMessageInterruptDPC pointent vers une structure NDIS_RECEIVE_THROTTLE_PARAMETERS . Lors de l’entrée dans le gestionnaire d’appels de procédure différée (DPC), le membre MaxNblsToIndicate de la structure NDIS_RECEIVE_THROTTLE_PARAMETERS spécifie le nombre maximal de structures NET_BUFFER_LIST que le pilote miniport doit indiquer dans le DPC. Pour plus d’informations sur RST, consultez Receive Side Throttle in NDIS 6.20.
Utilisez la version mise à jour de la structure NET_BUFFER .
Vous pouvez éventuellement prendre en charge l’interface de file d’attente de machines virtuelles (VMQ). Pour plus d’informations sur VMQ, consultez File d’attente de machines virtuelles (VMQ) dans NDIS 6.20.