Condividi tramite


Funzionalità di indicazione dello stato del motivo di creazione di report

A partire da NDIS 6.30, il driver miniport deve segnalare se può emettere un'indicazione di stato del motivo di riattivazione NDIS (NDIS_STATUS_PM_WAKE_REASON) per segnalare gli eventi di riattivazione causati da uno dei seguenti:

  • La scheda di rete ha ricevuto un pacchetto che corrisponde a un modello WAKE-ON-LAN (WOL). Ciò include la ricezione di un pacchetto che corrisponde a un filtro di ricezione specificato tramite una richiesta di set OID (Object Identifier) di OID_GEN_CURRENT_PACKET_FILTER.

    Nota Per questo tipo di indicazione dello stato del motivo di riattivazione, la scheda di rete deve essere in grado di salvare il pacchetto ricevuto. Il driver deve restituire il pacchetto ricevuto all'interno dell'indicazione dello stato.

  • La scheda di rete ha rilevato un evento specifico del supporto, ad esempio una disassociazione da un punto di accesso 802.11 (AP) o la ricezione di un messaggio SMS (Mobile Broadband Service) (MB).

  • La scheda di rete ha rilevato un altro evento abilitato che non è specifico di un modello WOL o un tipo di supporto (evento indipendente dal supporto). Ad esempio, il driver miniport genera l'indicazione dello stato NDIS_STATUS_PM_WAKE_REASON se ha abilitato la scheda di rete per rilevare la connessione multimediale o la disconnessione.

Nota Il supporto per le indicazioni sullo stato del motivo di riattivazione di NDIS è facoltativo per i driver miniport (MB) Mobile Broadband.

Quando NDIS chiama la funzione MiniportInitializeEx del driver, il driver miniport segnala le funzionalità di indicazione dello stato del motivo di riattivazione seguendo questa procedura:

  1. Il driver miniport inizializza una struttura NDIS_PM_CAPABILITIES con le funzionalità di risparmio energia dell'hardware sottostante.

    Per abilitare il supporto per le indicazioni sullo stato del motivo di riattivazione, il driver miniport deve impostare i membri della struttura NDIS_PM_CAPABILITIES come indicato di seguito:

    • Il driver miniport deve specificare NDIS_PM_CAPABILITIES_REVISION_2 e NDIS_SIZEOF_NDIS_PM_CAPABILITIES_REVISION_2 per la revisione e la lunghezza della struttura NDIS_PM_CAPABILITIES all'interno del membro Intestazione della struttura.

    • Se la scheda di rete può archiviare il pacchetto ricevuto che ha causato un evento di riattivazione del sistema, il driver miniport imposta il flag NDIS_PM_WAKE_PACKET_INDICATION_SUPPORTED all'interno del membro Flag di questa struttura.

      Se questo flag è impostato, la scheda di rete deve essere in grado di salvare il pacchetto ricevuto che ha causato la generazione di un evento di riattivazione. Inoltre, il driver miniport deve essere in grado di eseguire le operazioni seguenti con questo pacchetto dopo la transizione della scheda di rete a uno stato di alimentazione completa:

      • Il driver miniport deve essere in grado di indicare il pacchetto chiamando NdisMIndicateReceiveNetBufferLists.

      • Il driver miniport deve essere in grado di emettere un'indicazione di stato NDIS_STATUS_PM_WAKE_REASON e deve passare il pacchetto con indicazione.

    • Il driver miniport imposta il membro MaxWoLPacketSaveBuffer alle dimensioni massime, in unità di byte, del buffer che contiene il pacchetto WOL che ha causato un evento di riattivazione del sistema.

      Il valore del membro MaxWoLPacketSaveBuffer deve essere minore o uguale alle dimensioni, in byte, dell'unità di trasmissione massima (MTU) e dell'intestazione MAC (Media Access Control) per i supporti di rete. Il driver segnala le dimensioni MTU tramite richieste di query OID di OID_GEN_MAXIMUM_FRAME_SIZE.

    • Il driver miniport imposta gli eventi di riattivazione supportati DaWakeUpEvents agli eventi di riattivazione indipendenti dai supporti supportati dalla scheda di rete, ad esempio la generazione di un evento di riattivazione quando la scheda diventa connessa all'interfaccia di rete.

    • Il driver miniport imposta mediaSpecificWakeUpEvents agli eventi di riattivazione specifici dei supporti supportati dalla scheda di rete. Questi eventi includono la generazione di un evento di riattivazione quando l'adapter 802.11 diventa disassociato con l'AP.

  2. Il driver miniport inizializza una struttura NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES e imposta il membroPowerManagementCapabilitiesEx all'indirizzo della struttura di NDIS_PM_CAPABILITIES inizializzata.

  3. Il driver miniport chiama la funzione NdisMSetMiniportAttributes per registrare le funzionalità di risparmio energia. Quando il driver miniport chiama questa funzione, imposta il parametro MiniportAttributes sull'indirizzo della struttura NDIS_MINIPORT_ADAPTER_GENERAL_ATTRIBUTES .

Il metodo usato dai driver miniport per segnalare le funzionalità di indicazione dello stato del motivo di riattivazione è basato sul metodo NDIS 6.20 per la creazione di report delle funzionalità di risparmio energia. Per altre informazioni su questo metodo, vedere Creazione di report sulle funzionalità di Power Management.

Per altre informazioni sul processo di inizializzazione dell'adattatore, vedere Inizializzazione di un adattatore Miniport.

Per altre informazioni su come segnalare le funzionalità di risparmio energia, vedere Reporting Power Management Capabilities.For more information about how to report power management capabilities, see Reporting Power Management Capabilities.For more information about how to report power management capabilities, see Reporting Power Management Capabilities.