Partager via


Prise en charge de la plateforme MB SAR

Aperçu

Le taux d’absorption spécifique (SAR) est la possibilité de modifier la puissance de l’émetteur radio MBB en réaction à la proximité de l’antenne MBB à l’utilisateur. Traditionnellement, les oem ont implémenté des solutions propriétaires pour le sar. Cela nécessite que l’OEM implémente une commande de service d’appareil qui soit identifiée uniquement entre son pilote en mode utilisateur (UMDF) et le modem ou nécessite que les composants en mode noyau interagissent directement avec le modem. Certains OEM peuvent même avoir une solution hybride combinant des composants UMDF-modem et modem en mode noyau. À mesure que la prise de conscience des dangers des rayonnements radio a progressé, la standardisation de l’interface pour permettre aux composants logiciels OEM de transmettre la commande SAR au modem présente les avantages suivants :

  1. Les OEMs peuvent passer aux composants en mode utilisateur rendant le système plus stable, car les erreurs en mode utilisateur ne sont pas fatales pour le système par rapport au mode noyau.
  2. Windows fournit une interface standard de plateforme et réduit l’implémentation propriétaire des OEM.
  3. Les services de la plateforme qui souhaitent tirer parti du sar peuvent récupérer les informations à partir du modem.

À compter de Windows 10, version 1703, Windows prend en charge le transfert via la configuration SAR et l'état de transmission du modem. Windows continuera à laisser la logique métier SAR aux IHV et aux OEM à utiliser comme facteur auto-différentiant, mais fournira une interface pour simplifier la plateforme. Deux nouveaux OID NDIS et deux nouveaux CID MBIM ont été définis pour prendre en charge cette interface. Les appareils qui souhaitent tirer parti de la prise en charge du système d’exploitation doivent implémenter les deux commandes.

Cette fonctionnalité est prise en charge en ajoutant deux nouveaux OID et CID. Pour les partenaires IHV qui implémentent MBIM, seule la version CID doit être prise en charge.

Remarque

Cette rubrique définit l’interface des partenaires IHV pour implémenter la prise en charge de la plateforme SAR dans leurs pilotes de périphérique modem. Si vous recherchez des informations sur la personnalisation de la table de mappage SAR pour un appareil, consultez Personnaliser une table de mappage de taux d’absorption spécifique (SAR).

Flux

Organigramme illustrant l’opération SAR.

Mise à jour de l’interface MB pour la prise en charge de la plateforme SAR

Un appareil compatible MBIM implémente et signale le service d’appareil suivant lorsqu’il est interrogé par CID_MBIM_DEVICE_SERVICES. Les services connus existants sont définis dans la section 10.1 de la spécification USB NCM MBIM 1.0. Microsoft l’étend pour définir le service suivant.

Nom du service = Contrôle SAR Microsoft

UUID = UUID_MS_SARControl

Valeur UUID = 68223D04-9F6C-4E0F-822D-28441FB72340

CID Version minimale du système d’exploitation
MBIM_CID_MS_SAR_CONFIG Windows 10 version 1703
MBIM_CID_MS_TRANSMISSION_STATUS Windows 10 version 1703

MBIM_CID_MS_SAR_CONFIG

Descriptif

Cette commande définit ou retourne des informations sur le mode et le niveau de réduction SAR d’un appareil MB. L’appareil MB doit agir immédiatement sur la commande de réduction SAR en remplaçant les limites actuelles de puissance d'émission et en les appliquant aux antennes d'émission. Si la configuration sar d’une antenne n’a pas été modifiée par le système d’exploitation, elle doit conserver son paramètre actuel. Par exemple, si le système d’exploitation définit l’antenne 1 pour qu’elle réduise l’index SAR à 1, la configuration de l’antenne 2 doit rester inchangée.

Il est prévu que les appareils qui prennent en charge cette commande implémentent La requête afin qu’ils fournissent des informations sur l’appareil au système d’exploitation et à ses clients. Pour la commande Set, c'est à l'IHV et l'OEM de définir quelles valeurs de chaque champ sont acceptables. L’attente classique est que l’index de back-off SAR soit configurable pour toutes les antennes comme norme minimale. Si une demande Set est envoyée avec des champs qui ne sont pas pris en charge par l’appareil, MBIM_STATUS_INVALID_PARAMETERS doit être retourné en tant que code d’état.

Une fois chaque requête ou réponse définie, le modem doit retourner une structure MBIM_MS_SAR_CONFIG qui contient des informations pour toutes les antennes sur l’appareil associé au haut débit mobile.

Requête

Le fichier InformationBuffer sur MBIM_COMMAND_MSG n’est pas utilisé. MBIM_MS_SAR_CONFIG est retourné dans le fichier InformationBuffer de MBIM_COMMAND_DONE.

Définissez

L'InformationBuffer sur MBIM_COMMAND_MSG contient un MBIM_MS_SAR_CONFIG. MBIM_MS_SAR_CONFIG est retourné dans le fichier InformationBuffer de MBIM_COMMAND_DONE.

Événements non sollicités

Non applicable.

Paramètres

Opération Définissez Requête Notification
Commande MBIM_MS_SET_SAR_CONFIG Sans objet Sans objet
Réponse MBIM_MS_SAR_CONFIG MBIM_MS_SAR_CONFIG Sans objet

Structures de données

Requête

InformationBuffer doit être NULL et InformationBufferLength doit être égal à zéro.

Définissez

La structure de MBIM_MS_SET_SAR_CONFIG suivante doit être utilisée dans InformationBuffer.

Offset Taille Terrain Catégorie Descriptif
0 4 SARMode MBIM_MS_SAR_CONTROL_MODE Pour plus d’informations, consultez la table MBIM_MS_SAR_CONTROL_MODE.
4 4 SARBackOffStatus MBIM_MS_SAR_BACKOFF_STATE Pour plus d’informations, consultez la table MBIM_MS_SAR_BACKOFF_STATE. Si MBIM_MS_SAR_CONTROL_MODE est définie comme contrôlée par l’appareil, le système d’exploitation ne pourra pas définir ce champ.
8 4 ElementCount (EC) UINT32 Nombre de structures MBIM_MS_SAR_CONFIG qui suivent dans le DataBuffer.
12 8 * EC SARConfigStatusRefList OL_PAIR_LIST Le premier élément de la paire est un décalage de 4 octets, calculé à partir du début (décalage 0) de cette structure MBIM_MS_SET_SAR_CONFIG, vers une structure MBIM_MS_SAR_CONFIG_STATE. Pour plus d’informations, consultez la table MBIM_MS_SAR_CONFIG_STATE. Le deuxième élément de la paire est une taille de 4 octets d’un pointeur vers la structure MBIM_MS_SAR_CONFIG_STATE correspondante.
12 + (8 * EC) DataBuffer DATABUFFER Tableau de structures MBIM_MS_SAR_CONFIG_STATE.

Les structures suivantes sont utilisées dans le tableau précédent.

MBIM_MS_SAR_CONTROL_MODE spécifie la façon dont le mécanisme de sauvegarde sar est contrôlé.

Catégorie Valeur Descriptif
MBIMMsSARControlModeDevice 0 Le mécanisme d'évitement SAR est contrôlé directement par le modem.
MBIMMsSARControlModeOS 1 Le mécanisme de repli SAR est contrôlé et géré par le système d'exploitation.

MBIM_MS_SAR_BACKOFF_STATE décrit l’état du SAR désactivé.

Catégorie Valeur Descriptif
MBIMMsSARBackOffStatusDisabled 0 La désactivation de la fonctionnalité SAR est désactivée dans le modem.
MBIMMsSARBackOffStatusEnabled 1 La désactivation sar est activée dans le modem.

MBIM_MS_SAR_CONFIG_STATE décrit les états possibles de la réduction SAR pour les antennes.

Offset Taille Terrain Catégorie Descriptif
0 4 SARAntennaIndex UINT32 Index d’antenne qui correspond au champ SARBackOffIndex de ce tableau. Il correspond au numéro d’antenne et est laissé à l’implémentation OEM pour indexer chaque antenne sur l’appareil. Tout index est valide pour cette valeur. Si cette valeur est définie sur 0xFFFFFFFF dans une commande Set , sarBackOffIndex doit être appliqué à toutes les antennes. Si cette valeur est définie sur 0xFFFFFFFF en réponse, elle indique que SARBackOffIndex est appliqué à toutes les antennes.
4 4 SARBAckOffIndex UINT32 Index de repli qui correspond à la table de repli définie par l'OEM ou le fournisseur du modem. La table comporte des bandes individuelles et des paramètres de repli associés.

Réponse

La structure de MBIM_MS_SAR_CONFIG suivante doit être utilisée dans InformationBuffer. MBIM_MS_SAR_CONFIG spécifie la configuration de SAR.

Offset Taille Terrain Catégorie Descriptif
0 4 SARMode MBIM_MS_SAR_MODE Pour plus d’informations, consultez la table MBIM_MS_SAR_CONTROL_MODE.
4 4 SARBackOffStatus MBIM_MS_SAR_BACKOFF_STATE Pour plus d’informations, consultez le tableau MBIM_MS_SAR_BACKOFF_STATE.
8 4 SARWifiIntegration MBIM_MS_SAR_ WIFI_HARDWARE_INTEGRATION Pour plus d'informations, référez-vous au tableau MBIM_MS_SAR_HARDWARE_WIFI_INTEGRATION. Cela implique que le Wi-Fi de l’appareil et le SAR cellulaire sont intégrés à la couche matérielle et que l’appareil ajuste automatiquement le contrôle SAR pour les deux radios.
12 4 ElementCount (EC) UINT32 Nombre des structures MBIM_MS_SAR_CONFIG_STATE qui suivent dans le DataBuffer.
16 8 * EC SARConfigStatusRefList OL_PAIR_LIST Le premier élément de la paire est un décalage de 4 octets, calculé du début (décalage 0) de cette structure MBIM_MS_SAR_CONFIG, à une structure MBIM_MS_SAR_CONFIG_STATE. Pour plus d’informations, consultez la table MBIM_MS_SAR_CONFIG_STATE. Le deuxième élément de la paire est un pointeur de taille 4 -byte vers la structure correspondante MBIM_MS_SAR_CONFIG_STATE.
16 + (8 * EC) DataBuffer DATABUFFER Tableau de structures MBIM_MS_SAR_CONFIG_STATE.

La structure MBIM_MS_SAR_HARDWARE_WIFI_INTEGRATION suivante est utilisée dans le tableau précédent. Il spécifie si Wi-Fi et Cellular sont intégrés au niveau matériel.

Catégorie Valeur Descriptif
MBIMMsSARWifiMatérielIntégré 0 Wi-Fi et le SAR du modem cellulaire est intégré à l’appareil.
MBIMMsSARMatérielWifiNonIntégré 1 Wi-Fi et le SAR du modem cellulaire ne sont pas intégrés à l’appareil.

Notification

Non applicable.

Codes de statut

Code d’erreur Descriptif
MBIM_STATUS_SUCCESS La demande a été traitée avec succès.
MBIM_STATUS_BUSY L’appareil est actuellement occupé.
MBIM_STATUS_FAILURE La demande a échoué.
MBIM_STATUS_NO_DEVICE_SUPPORT (Pas de support de l'appareil) L’appareil ne prend pas en charge cette commande.
MBIM_STATUS_INVALID_PARAMETERS L’opération a échoué en raison de paramètres non valides.
MBIM_STATUS_OPERATION_NOT_ALLOWED L’opération a échoué, car l’opération n’est pas autorisée.

MBIM_CID_MS_TRANSMISSION_STATUS

Descriptif

Cette commande est utilisée pour activer ou désactiver la notification du modem à l’état de transmission. Il s’agit d’une commande par exécuteur, car chaque exécuteur peut avoir un état de transmission de canal différent. Par exemple, un modem DOUBLE SIM peut avoir un modem LTE et l’autre sur GSM. En même temps, il peut être utilisé pour fournir l’état de transmission du modem. Cette notification peut être utilisée pour les clients qui s’intéressent à savoir si le modem transmet des données ou non. Le modem doit fournir une notification chaque fois qu’il existe un début ou une fin du trafic TX. Si le cycle de service est trop petit et ne peut pas être fourni en temps réel à l’hôte, l’état TX peut être conservé comme actif pour une heure définie avec un minuteur d’astérisie avant d’envoyer une mise à jour de l’état. Par exemple, il se peut qu’il y ait eu une courte rafale de TX et que le modem ne pouvait pas fournir la notification de début et de fin dans le temps. Le modem doit envoyer une notification lorsque le trafic TX démarre et continuer à surveiller son trafic TX pendant le minuteur d’astérisie. Si aucun trafic TX n’a été généré au cours de la période du minuteur, il doit signaler que le trafic TX s’est terminé.

Cela est très utile dans les scénarios où les deux Wi-Fi et LTE sont connectés. Si LTE et Wi-Fi sont dans un état de transmission et qu'une proximité est détectée, un désengagement de Wi-Fi peut être nécessaire. Si LTE n’est pas dans l’état de transmission, mais que Wi-Fi l’est, le recul de Wi-Fi peut ne pas être nécessaire. Cela s’applique aux scénarios généraux de connexion Wi-Fi/LTE et de points chauds mobiles.

Le mécanisme de recul et la commande Wi-Fi sont hors de portée de cette spécification.

Les oem qui utilisent cette commande doivent être conscients de l’impact potentiel de l’alimentation, car le modem peut envoyer des notifications liées à la transmission à tout moment, y compris des états d’alimentation réduits. Le système d’exploitation, par défaut, n’autorise pas cette notification à réveiller l’AP pendant la veille moderne afin d’améliorer les performances de l’alimentation.

Requête

Le fichier InformationBuffer sur MBIM_COMMAND_MSG n’est pas utilisé. MBIM_MS_TRANSMISSION_STATUS_INFO est retourné dans le fichier InformationBuffer de MBIM_COMMAND_DONE.

Définissez

InformationBuffer dans MBIM_COMMAND_MSG contient MBIM_MS_SET_TRANSMISSION_STATUS. MBIM_MS_TRANSMISSION_STATUS_INFO est retourné dans le fichier InformationBuffer de MBIM_COMMAND_DONE.

Événements non sollicités

Les événements non sollicités contiennent MBIM_MS_TRANSMISSION_STATUS_INFO et sont envoyés lorsqu’il y a une modification des canaux OTA (active over-the-air). Par exemple, si un modem a commencé à charger des données de paquets, il est nécessaire de configurer des canaux de liaison montante lorsqu’il utilise le canal de données réseau afin qu’il puisse charger des charges utiles. Cela déclencherait la notification à fournir au système d’exploitation.

Paramètres

Opération Définissez Requête Notification
Commande MBIM_MS_SET_TRANSMISSION_STATUS Sans objet Sans objet
Réponse MBIM_MS_TRANSMISSION_STATUS_INFO MBIM_MS_TRANSMISSION_STATUS_INFO MBIM_MS_TRANSMISSION_STATUS_INFO

Structures de données

Requête

Le fichier InformationBuffer sur MBIM_COMMAND_MSG n’est pas utilisé. MBIM_MS_TRANSMISSION_STATUS_INFO est retourné dans le fichier InformationBuffer de MBIM_COMMAND_DONE.

Définissez

La structure de MBIM_MS_SET_TRANSMISSION_STATUS suivante doit être utilisée dans InformationBuffer.

Offset Taille Terrain Catégorie Descriptif
0 4 Notification de canal MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION Pour plus d’informations, consultez la table MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION.
4 4 HysteresisTimer UINT32 Indicateur d’astérisie utilisé par le modem pour déterminer quand envoyer mbIMMsTransmissionStateInactive à l’hôte. Cette valeur est le minuteur que le modem voit comme une activité continue sans transmission avant d’envoyer un indicateur OFF à l’hôte. Ce minuteur doit être défini en secondes, allant de 1 seconde à 5 secondes.

La structure MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION suivante est utilisée dans le tableau précédent. Elle spécifie si la transmission du canal de modem est désactivée ou activée.

Catégorie Valeur Descriptif
MBIMMsTransmissionNotificationDisabled 0 Notification d’état de transmission du canal modem désactivée.
MBIMMsTransmissionNotificationEnabled 1 Notification d’état de transmission du canal modem activée.

Réponse

La structure MBIM_MS_TRANSMISSION_STATUS_INFO suivante est utilisée pour la réponse.

Offset Taille Terrain Catégorie Descriptif
0 4 Notification de canal MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION Pour plus d’informations, consultez le tableau MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION.
4 4 TransmissionStatus MBIM_MS_TRANSMISSION_STATUS Pour plus d’informations, consultez la table MBIM_MS_TRANSMISSION_STATUS. Cela indique si le modem a le trafic TX toutes les 5 secondes.
8 4 HysteresisTimer UINT32 Indicateur d’astérisie utilisé par le modem pour déterminer quand envoyer mbIMMsTransmissionStateInactive à l’hôte. Cette valeur est le minuteur que le modem voit comme une activité continue sans transmission avant d’envoyer un indicateur OFF à l’hôte. Ce minuteur doit être défini en secondes, allant de 1 seconde à 5 secondes.

La structure MBIM_MS_TRANSMISSION_STATUS suivante est utilisée dans le tableau précédent. Il indique si le modem a le trafic TX toutes les 5 secondes.

Catégorie Valeur Descriptif
MBIMMsTransmissionStateInactive 0 Le modem n’a pas transmis activement de données sans aucune interruption continue de la transmission pour la dernière valeur HysteresisTimer.
MBIMMsTransmissionStateActive 1 Le modem transmettait activement des données.

Notification

Pour plus d’informations, consultez la table MBIM_MS_TRANSMISSION_STATUS_INFO.

Codes de statut

Code d’erreur Descriptif
MBIM_STATUS_SUCCESS La demande a été traitée avec succès.
MBIM_STATUS_BUSY L’appareil est actuellement occupé.
MBIM_STATUS_FAILURE La demande a échoué.
MBIM_STATUS_NO_DEVICE_SUPPORT (Pas de support de l'appareil) L’appareil ne prend pas en charge cette commande.
MBIM_STATUS_INVALID_PARAMETERS L’opération a échoué en raison de paramètres non valides.
MBIM_STATUS_OPERATION_NOT_ALLOWED L’opération a échoué, car l’opération n’est pas autorisée.

Tests du kit de matériel de laboratoire (HLK)

Consultez les étapes d’installation de HLK.

Dans HLK Studio, connectez-vous au pilote de modem mobile de l’appareil et exécutez le test : Win6_4.Mb. GSM. Data.TestSAR.

Ce test contient les tests suivants :

Nom du test Descriptif
QuerySarConfig Ce test vérifie que le test peut interroger correctement les configurations SAR.
SetSarConfig Ce test vérifie que le test peut définir correctement les configurations SAR.
QuerySarTransmissionStatus Ce test s'assure que le test peut interroger avec succès l’état de transmission SAR.
SetSarTransmissionStatus Ce test vérifie la capacité à définir avec succès l’état de transmission SAR.

WinRT API

MobileBroadbandSarManager

Analyse des journaux

Les journaux peuvent être collectés et décodés à l'aide de ces instructions : MB Collecting Logs.

Fournisseurs importants et mots clés correspondants

Microsoft-Windows-WWAN-SVC-EVENTS (3cb40aaa-1145-4fb8-b27b-7e30f0454316)

Mots clés pour le filtrage :

  1. SarConfig
  2. CWwanSar ::OnNdisNotification
  3. LoadSemiStaticOEMSARTable
  4. AttemptAutoConfigureSAR
  5. PreCheckSemiStaticOEMSARTable
  6. WwanIntfOpcodeSarConfig
  7. WwanIntfOpcodeÉtatDeTransmissionSar
  8. WwanMsmEventTypeSarConfig
  9. WwanMsmEventTypeSarTransmissionStatus

MobileBroadband WinRT WPP (56dd9c57-06cc-48ba-b123-876a6495ba13)

Mots clés pour le filtrage : MobileBroadbandSarManager

WwanProtDIM (3a07e1ba-3a6b-49bf-8056-c105b54dd7fb)

Mots clés pour le filtrage :

  1. NDIS_WWAN_SAR_CONFIG_INFO
  2. SarMode
  3. NDIS_WWAN_SAR_TRANSMISSION_STATUS_INFO
  4. HysteresisTimer

Voir aussi

Personnaliser une table de mappage de taux d’absorption spécifique (SAR)