Condividi tramite


Supporto della piattaforma SAR MB

Panoramica

Velocità di assorbimento specifica (SAR) è la capacità di modificare la potenza del trasmettitore radio MBB in reazione alla prossimità dell'antenna MBB all'utente. Tradizionalmente, gli OEM hanno implementato soluzioni proprietarie per SAR. Ciò richiede all'OEM di implementare un comando del servizio dispositivo identificato solo tra il driver in modalità utente (UMDF) e il modem o richiede che i componenti della modalità kernel interagiscano direttamente con il modem. Alcuni OEM possono anche avere una soluzione ibrida in cui dispongono sia di componenti modem UMDF che di modem in modalità kernel. Con l'aumento della consapevolezza delle radiazioni radio, la standardizzazione dell'interfaccia per i componenti software OEM per passare il comando SAR al modem introduce i vantaggi seguenti:

  1. Gli OEM possono spostarsi verso componenti in modalità utente e rendere il sistema più stabile, poiché gli errori in modalità utente non sono irreversibili per il sistema rispetto alla modalità kernel.
  2. Windows offre un'interfaccia standard della piattaforma e riduce l'implementazione proprietaria dagli OEM.
  3. I servizi nella piattaforma che vogliono sfruttare SAR possono recuperare le informazioni dal modem.

A partire da Windows 10, versione 1703, Windows supporta il passaggio dello stato di configurazione SAR e trasmissione modem. Windows continuerà a lasciare la logica di business SAR agli IHVs e agli OEM da usare come fattore di automodulazione, ma fornirà un'interfaccia per semplificare la piattaforma. Sono stati definiti due nuovi NDIS OID e due nuovi CID MBIM per supportare questa interfaccia. I dispositivi che vogliono sfruttare il supporto del sistema operativo devono implementare entrambi i comandi.

Questa funzionalità è supportata dall'aggiunta di due nuovi OID e CID. Per i partner IHV che implementano MBIM, è necessario supportare solo la versione CID.

Nota

Questo argomento definisce l'interfaccia per i partner IHV per implementare il supporto della piattaforma SAR nei driver di dispositivo modem. Per informazioni sulla personalizzazione della tabella di mappatura SAR per un dispositivo, vedere Personalizzare una tabella di mappatura SAR (Specific Absorption Rate).

Fluire

diagramma di flusso che illustra l'operazione SAR.

Aggiornamento dell'interfaccia MB per il supporto della piattaforma SAR

Un dispositivo conforme a MBIM implementa e segnala il servizio dispositivo seguente quando viene eseguita una query da CID_MBIM_DEVICE_SERVICES. I servizi noti esistenti sono definiti nella sezione 10.1 della specifica USB NCM MBIM 1.0. Microsoft estende questa opzione per definire il servizio seguente.

Nome del servizio = Microsoft SAR Control

UUID = UUID_MS_SARControl

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

CID Versione minima del sistema operativo
MBIM_CID_MS_SAR_CONFIG Windows 10, versione 1703
MBIM_CID_MS_TRANSMISSION_STATUS Windows 10, versione 1703

MBIM_CID_MS_SAR_CONFIG

Descrizione

Questo comando imposta o restituisce informazioni sulla modalità di retrocessione SAR e sul livello di un dispositivo MB. Il dispositivo MB deve agire immediatamente sul comando SAR back off sovrascrivendo i limiti correnti di potenza di trasmissione e applicandoli alle antenne di trasmissione. Se la configurazione SAR di un'antenna non è stata modificata dal sistema operativo, deve mantenere l'impostazione corrente. Ad esempio, se il sistema operativo imposta l'antenna 1 per avere l'indice di riduzione SAR 1, allora la configurazione dell'antenna 2 deve essere mantenuta invariata senza modifiche.

È previsto che i dispositivi che supportano questo comando implementino Query in modo che forniscano informazioni sul dispositivo al sistema operativo e ai relativi client. Per il comando Imposta, spetta a IHV e OEM definire quale valore per ciascun campo sia accettabile. L'aspettativa tipica è che l'indice SAR back off sia configurabile per tutte le antenne come baseline minima. Se viene inviata una richiesta Set con campi non supportati dal dispositivo, MBIM_STATUS_INVALID_PARAMETERS deve essere restituito come codice di stato.

Dopo ogni risposta Query o Set, il modem deve restituire una struttura MBIM_MS_SAR_CONFIG che contiene informazioni per tutte le antenne nel dispositivo associato a Mobile Broadband.

Quesito

InformationBuffer su MBIM_COMMAND_MSG non viene utilizzato. MBIM_MS_SAR_CONFIG viene restituito in InformationBuffer di MBIM_COMMAND_DONE.

Impostare

InformationBuffer in MBIM_COMMAND_MSG contiene un MBIM_MS_SAR_CONFIG. MBIM_MS_SAR_CONFIG viene restituito in InformationBuffer di MBIM_COMMAND_DONE.

Eventi non richiesti

Non applicabile.

Parametri

Operazione Impostare Quesito Notifica
Comando MBIM_MS_SET_SAR_CONFIG Non applicabile Non applicabile
Risposta MBIM_MS_SAR_CONFIG MBIM_MS_SAR_CONFIG Non applicabile

Strutture di dati

Quesito

InformationBuffer deve essere NULL e InformationBufferLength sarà zero.

Insieme

La struttura di MBIM_MS_SET_SAR_CONFIG seguente deve essere utilizzata in InformationBuffer.

Compensazione Grandezza Campo Digitare Descrizione
0 4 SARMode MBIM_MS_SAR_CONTROL_MODE Per altre informazioni, vedere la tabella MBIM_MS_SAR_CONTROL_MODE.
4 4 SARBackOffStatus MBIM_MS_SAR_BACKOFF_STATE Per altre informazioni, vedere la tabella MBIM_MS_SAR_BACKOFF_STATE. Se MBIM_MS_SAR_CONTROL_MODE è impostato come controllato dal dispositivo, il sistema operativo non sarà in grado di impostare questo campo.
8 4 ElementCount (EC) UINT32 Numero di strutture MBIM_MS_SAR_CONFIG che seguono nel buffer di dati.
12 8 * EC SARConfigStatusRefList OL_PAIR_LIST Il primo elemento della coppia è un offset da 4 byte, calcolato dall'inizio (offset 0) di questa struttura MBIM_MS_SET_SAR_CONFIG a una struttura MBIM_MS_SAR_CONFIG_STATE. Per altre informazioni, vedere la tabella MBIM_MS_SAR_CONFIG_STATE. Il secondo elemento della coppia è un puntatore di dimensione 4 byte alla struttura MBIM_MS_SAR_CONFIG_STATE corrispondente.
12 + (8 * EC) DataBuffer (Buffer di Dati) Buffer di Dati Matrice di strutture di MBIM_MS_SAR_CONFIG_STATE.

Nella tabella precedente vengono utilizzate le strutture seguenti.

MBIM_MS_SAR_CONTROL_MODE specifica come viene controllato il meccanismo di back off della SAR.

Digitare Valore Descrizione
MBIMMsSARControlModeDevice 0 Il meccanismo di back off SAR è controllato direttamente dal modem.
MBIMMsSARControlModeOS 1 Il meccanismo di back-off SAR è controllato e gestito dal sistema operativo.

MBIM_MS_SAR_BACKOFF_STATE descrive lo stato di back-off della SAR.

Digitare Valore Descrizione
MBIMMsSARBackOffStatusDisabled 0 Lo spegnimento SAR è disabilitato nel modem.
MBIMMsSARBackOffStatusEnabled 1 La riduzione di potenza SAR è abilitata nel modem.

MBIM_MS_SAR_CONFIG_STATE descrive i possibili stati di backoff SAR per le antenne.

Compensare Grandezza Campo Digitare Descrizione
0 4 SARAntennaIndex UINT32 Un indice antenna che corrisponde al campo SARBackOffIndex in questa tabella. Corrisponde al numero di antenna e viene lasciato all'implementazione OEM per indicizzare ogni antenna nel dispositivo. Qualsiasi indice è valido per questo valore. Se questo valore è impostato su 0xFFFFFFFF in un comando Imposta, il SARBackOffIndex deve essere applicato a tutte le antenne. Se questo valore è impostato su 0xFFFFFFFF in risposta, indica che SARBackOffIndex viene applicato a tutte le antenne.
4 4 SARBAckOffIndex UINT32 Un indice di riduzione che corrisponde alla tabella di riduzione definita dal fornitore OEM o del modem. La tabella include singole bande e parametri di rallentamento associati.

Risposta

La struttura di MBIM_MS_SAR_CONFIG seguente deve essere utilizzata in InformationBuffer. MBIM_MS_SAR_CONFIG specifica la configurazione per SAR.

Offset Grandezza Campo Digitare Descrizione
0 4 SARMode MBIM_MS_SAR_MODE Per altre informazioni, vedere la tabella MBIM_MS_SAR_CONTROL_MODE.
4 4 SARBackOffStatus MBIM_MS_SAR_BACKOFF_STATE Per altre informazioni, vedere la tabella MBIM_MS_SAR_BACKOFF_STATE.
8 4 SARWifiIntegration MBIM_MS_SAR_ WIFI_HARDWARE_INTEGRATION Per altre informazioni, vedere la tabella MBIM_MS_SAR_HARDWARE_WIFI_INTEGRATION. Ciò implica che il Wi-Fi del dispositivo e Cellular SAR è integrato a livello hardware e il dispositivo regola automaticamente il controllo SAR per entrambe le radio.
12 4 ElementCount (EC) UINT32 Numero di strutture di MBIM_MS_SAR_CONFIG_STATE che seguono nel DataBuffer.
16 8 * EC SARConfigStatusRefList OL_PAIR_LIST Il primo elemento della coppia è un offset di 4 byte calcolato a partire dall'inizio (offset 0) di questa struttura MBIM_MS_SAR_CONFIG fino a una struttura MBIM_MS_SAR_CONFIG_STATE. Per altre informazioni, vedere la tabella MBIM_MS_SAR_CONFIG_STATE. Il secondo elemento della coppia è un puntatore di dimensione 4 -byte alla struttura corrispondente MBIM_MS_SAR_CONFIG_STATE.
16 + (8 * EC) DataBuffer Buffer di dati Matrice di strutture di MBIM_MS_SAR_CONFIG_STATE.

Nella tabella precedente viene utilizzata la struttura di MBIM_MS_SAR_HARDWARE_WIFI_INTEGRATION seguente. Specifica se Wi-Fi e Cellulare sono integrati a livello di hardware.

Digitare Valore Descrizione
MBIMMsSARWifiHardwareIntegrated 0 Wi-Fi e Il modem cellulare SAR è integrato nel dispositivo.
Hardware WiFi MBIMMsSAR non integrato 1 Wi-Fi e Il modem cellulare SAR non è integrato nel dispositivo.

Notifica

Non applicabile.

Codici di stato

Codice errore Descrizione
MBIM_STATUS_SUCCESS La richiesta è stata elaborata correttamente.
MBIM_STATUS_BUSY Il dispositivo è attualmente occupato.
MBIM_STATUS_FAILURE Richiesta non riuscita.
MBIM_STATO_NESSUN_SUPPORTO_DISPOSITIVO Il dispositivo non supporta questo comando.
MBIM_STATUS_INVALID_PARAMETERS L'operazione non è riuscita a causa di parametri non validi.
MBIM_STATUS_OPERATION_NON_CONSENTITA L'operazione non è riuscita perché l'operazione non è consentita.

MBIM_CID_MS_TRANSMISSION_STATUS

Descrizione

Questo comando viene usato per abilitare o disabilitare la notifica dal modem sullo stato di trasmissione. Si tratta di un comando per ciascun esecutore perché ogni esecutore può avere uno stato di trasmissione del canale diverso. Ad esempio, un modem dual SIM potrebbe avere uno su LTE e l'altro su GSM. Allo stesso tempo, può essere utilizzato per fornire lo stato di trasmissione del modem. Questa notifica può essere utilizzata per i client interessati alla trasmissione o meno dei dati da parte del modem. Il modem deve fornire una notifica ogni volta che si verifica un inizio o una fine del traffico TX. Se il ciclo di attività è troppo piccolo e non può essere fornito in tempo reale all'host, lo stato TX può essere mantenuto attivo per un tempo impostato con un timer di istesi prima di inviare un aggiornamento dello stato. Ad esempio, potrebbe esserci un breve burst di TX e il modem non è riuscito a fornire la notifica di inizio e fine in tempo. Il modem deve inviare una notifica all'avvio del traffico TX e deve continuare a monitorare il traffico TX durante il timer di istesi. Se non è stato generato alcun traffico TX entro l'intervallo di tempo del timer, dovrebbe segnalare che il traffico TX è terminato.

Ciò è molto utile negli scenari in cui sono connessi sia Wi-Fi che LTE. Se sia LTE che Wi-Fi sono in uno stato di trasmissione e la prossimità è stata rilevata, potrebbe essere necessario che Wi-Fi si ritiri. Se l'LTE non è in stato di trasmissione ma Wi-Fi lo è, potrebbe non essere necessario eseguire il back off su Wi-Fi. Questo vale per gli scenari generali di connessione Wi-Fi/LTE e hot spot per dispositivi mobili.

Il meccanismo di "back off" e il comando Wi-Fi non rientrano nell'ambito di questa specifica.

Gli OEM che usano questo comando devono essere consapevoli del potenziale impatto sull'alimentazione perché il modem potrebbe inviare sempre notifiche correlate alla trasmissione, inclusi gli stati di alimentazione ridotti. Il sistema operativo, per impostazione predefinita, non consentirà a questa notifica di attivare l'API durante lo standby moderno per migliorare le prestazioni di alimentazione.

Quesito

InformationBuffer su MBIM_COMMAND_MSG non viene utilizzato. MBIM_MS_TRANSMISSION_STATUS_INFO viene restituito in InformationBuffer di MBIM_COMMAND_DONE.

Stabilire

L'InformationBuffer su MBIM_COMMAND_MSG contiene MBIM_MS_SET_TRANSMISSION_STATUS. MBIM_MS_TRANSMISSION_STATUS_INFO viene restituito nel InformationBuffer di MBIM_COMMAND_DONE.

Eventi non richiesti

Gli eventi non richiesti contengono MBIM_MS_TRANSMISSION_STATUS_INFO e vengono inviati quando viene apportata una modifica ai canali OTA (Over-the-Air) attivi. Ad esempio, se un modem ha iniziato a caricare i dati dei pacchetti, sarebbe necessario configurare i canali uplink quando usa il canale dati di rete in modo che possa caricare payload. In questo modo verrà attivata la notifica da fornire al sistema operativo.

Parametri

Operazione Impostare Quesito Notifica
Comando MBIM_MS_SET_TRANSMISSION_STATUS Non applicabile Non applicabile
Risposta MBIM_MS_TRANSMISSION_STATUS_INFO MBIM_MS_TRANSMISSION_STATUS_INFO MBIM_MS_TRANSMISSION_STATUS_INFO

Strutture di dati

Quesito

InformationBuffer su MBIM_COMMAND_MSG non viene utilizzato. MBIM_MS_TRANSMISSION_STATUS_INFO viene restituito nell'InformationBuffer di MBIM_COMMAND_DONE.

Imposta

La struttura di MBIM_MS_SET_TRANSMISSION_STATUS seguente deve essere utilizzata in InformationBuffer.

Compensazione Grandezza Campo Digitare Descrizione
0 4 Notifica di Canale MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION Per ulteriori informazioni, consultare la tabella MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION.
4 4 HysteresisTimer UINT32 Indicatore hysteresis utilizzato dal modem per determinare quando inviare MBIMMsTransmissionStateInactive all'host. Questo valore è il timer che il modem vede come un'attività di non trasmissione continua prima di inviare un indicatore OFF all'host. Questo timer deve essere impostato in secondi, compreso tra 1 secondo e 5 secondi.

Nella tabella precedente viene utilizzata la struttura di MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION seguente. Specifica se la trasmissione del canale modem è disabilitata o abilitata.

Digitare Valore Descrizione
MBIMMsTransmissionNotificationDisabled 0 Notifica dello stato della trasmissione del canale modem disabilitata.
MBIMMsTransmissionNotificationEnabled 1 Notifica sullo stato della trasmissione del canale modem abilitata.

Risposta

Per la risposta viene usata la struttura di MBIM_MS_TRANSMISSION_STATUS_INFO seguente.

Sbilanciare Grandezza Campo Digitare Descrizione
0 4 Notifica del Canale MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION Per altre informazioni, vedere la tabella MBIM_MS_TRANSMISSION_STATUS_NOTIFICATION.
4 4 Stato della Trasmissione MBIM_MS_TRANSMISSION_STATUS Per altre informazioni, vedere la tabella MBIM_MS_TRANSMISSION_STATUS. Indica se il modem ha traffico TX ogni 5 secondi.
8 4 HysteresisTimer UINT32 Indicatore hysteresis utilizzato dal modem per determinare quando inviare MBIMMsTransmissionStateInactive all'host. Questo valore è il timer che il modem vede come un'attività di non trasmissione continua prima di inviare un indicatore OFF all'host. Questo timer deve essere impostato in secondi, compreso tra 1 secondo e 5 secondi.

Nella tabella precedente viene utilizzata la struttura di MBIM_MS_TRANSMISSION_STATUS seguente. Indica se il modem ha traffico TX ogni 5 secondi.

Digitare Valore Descrizione
MBIMMsTransmissionStateInactive 0 Il modem non trasmetteva attivamente i dati senza alcun intervallo continuo di trasmissione per l'ultimo valore HysteresisTimer.
MBIMMsTransmissionStateActive 1 Il modem trasmetteva attivamente i dati.

Notifica

Per altre informazioni, vedere la tabella MBIM_MS_TRANSMISSION_STATUS_INFO.

Codici di stato

Codice errore Descrizione
MBIM_STATUS_SUCCESS La richiesta è stata elaborata correttamente.
MBIM_STATUS_BUSY Il dispositivo è attualmente occupato.
MBIM_STATUS_FALLIMENTO Richiesta non riuscita.
MBIM_STATUS_NO_DEVICE_SUPPORT - Nessun supporto del dispositivo Il dispositivo non supporta questo comando.
MBIM_STATUS_PARAMETRI_NON_VALIDI L'operazione non è riuscita a causa di parametri non validi.
MBIM_STATUS_OPERATION_NOT_ALLOWED L'operazione non è riuscita perché l'operazione non è consentita.

Test di Hardware Lab Kit (HLK)

Vedere Passaggi per l'installazione di HLK.

In HLK Studio connettersi al driver modem cellulare del dispositivo ed eseguire il test: Win6_4.MB.GSM.Data.TestSAR.

Questo test contiene i test seguenti:

Nome test Descrizione
QuerySarConfig Questo test verifica che sia possibile eseguire correttamente interrogazioni sulle configurazioni SAR.
SetSarConfig Questo test verifica che il test possa impostare correttamente le configurazioni SAR.
QuerySarTransmissionStatus Questo test verifica che il test possa eseguire correttamente una query sullo stato di trasmissione SAR.
SetSarTransmissionStatus Questo test verifica che il test possa impostare correttamente lo stato di trasmissione SAR.

WinRT API

MobileBroadbandSarManager

Analisi dei log

I log possono essere raccolti e decodificati usando queste istruzioni: MB Collecting Logs.

Fornitori importanti e parole chiave corrispondenti

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

Parole chiave per il filtro:

  1. SarConfig
  2. CWwanSar::OnNdisNotification
  3. LoadSemiStaticOEMSARTable
  4. TentativoDiConfigurazioneAutomaticaSAR
  5. PreCheckSemiStaticOEMSARTable
  6. WwanIntfOpcodeSarConfig
  7. WwanIntfOpcodeSarTransmissionStatus
  8. WwanMsmEventTypeSarConfig
  9. WwanMsmEventTypeSarTransmissionStatus (stato della trasmissione Sar di WwanMsmEventType)

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

Parole chiave per il filtro: MobileBroadbandSarManager

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

Parole chiave per il filtro:

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

Vedere anche

Personalizzare una tabella di mappatura del Tasso di Assorbimento Specifico (SAR)