Fonction de rappel POFXCALLBACKBACKENUMERATEUNMASKEDINTERRUPTS (pep_x.h)

La routine EnumerateUnmaskedInterrupts énumère les sources d’interruption dont les interruptions sont masquées et activées.

Syntaxe

POFXCALLBACKENUMERATEUNMASKEDINTERRUPTS Pofxcallbackenumerateunmaskedinterrupts;

NTSTATUS Pofxcallbackenumerateunmaskedinterrupts(
  [in, optional] POHANDLE PluginHandle,
  [in, optional] ULONG EnumerateFlags,
  [in]           PPO_ENUMERATE_INTERRUPT_SOURCE_CALLBACK Callback,
  [in]           PVOID CallbackContext,
  [in, out]      PPEP_UNMASKED_INTERRUPT_INFORMATION InterruptInformation
)
{...}

Paramètres

[in, optional] PluginHandle

Valeur POHANDLE. Si ce paramètre n’est pas NULL, ce paramètre est un handle qui identifie le plug-in d’extension de plateforme (PEP), auquel cas EnumerateUnmaskedInterrupts énumère uniquement les interruptions gérées par ce PEP. Si ce paramètre a la valeur NULL, EnumerateUnmaskedInterrupts énumère toutes les interruptions de la plateforme matérielle qui sont masquées et activées.

[in, optional] EnumerateFlags

Aucun indicateur n’est actuellement défini. Définissez ce paramètre sur PEP_ENUMERATE_UNMASKED_INTERRUPT_FLAGS_NONE (0x0).

[in] Callback

Pointeur vers une routine de rappel EnumerateInterruptSource implémentée par l’appelant. Cette routine de rappel est appelée une fois pour chaque source d’interruption dont l’interruption est masquée. Ces rappels se produisent de manière synchrone avant que la routine EnumerateUnmaskedInterrupts ne retourne.

[in] CallbackContext

Pointeur vers un contexte de rappel. Ce pointeur est passé en tant que paramètre à la routine de rappel EnumerateInterruptSource pointée par le paramètre Callback . Le contenu du contexte de rappel est défini par PEP et est opaque pour l’infrastructure de gestion de l’alimentation (PoFx).

[in, out] InterruptInformation

Pointeur vers une mémoire tampon allouée par l’appelant dont la taille est d’au moins sizeof(PEP_UNMASKED_INTERRUPT_INFORMATION) octets. EnumerateUnmaskedInterrupts utilise cette mémoire tampon pour transférer les informations d’interruption vers le PEP pendant les appels à la routine de rappel EnumerateInterruptSource du PEP.

Valeur retournée

EnumerateUnmaskedInterrupts retourne STATUS_SUCCESS si l’appel énumère correctement les interruptions. Les valeurs de retour d’erreur possibles incluent le code status suivant.

Valeur retournée Description
STATUS_INVALID_PARAMETER
Le membre Size ou Version de la structure PEP_UNMASKED_INTERRUPT_INFORMATION contient une valeur non valide.

Remarques

Cette routine est implémentée par PoFx et est appelée par le PEP. Le membre EnumerateUnmaskedInterrupts de la structure PEP_KERNEL_INFORMATION_STRUCT_V3 est un pointeur vers une routine EnumerateUnmaskedInterrupts .

Avant que la plateforme n’entre dans un état d’alimentation système dans lequel les contrôleurs d’interruption sont sous tension, le PEP peut appeler EnumerateUnmaskedInterrupts pour obtenir les informations dont il a besoin pour configurer correctement les contrôleurs de mise en éveil pour les interruptions qui doivent rester masquées.

Le PEP peut appeler cette routine à l’adresse IRQL <= HIGH_LEVEL.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 10.
Plateforme cible Windows
En-tête pep_x.h (include Pep_x.h)
IRQL <= HIGH_LEVEL

Voir aussi

EnumerateInterruptSource

PEP_KERNEL_INFORMATION_STRUCT_V3

PEP_UNMASKED_INTERRUPT_INFORMATION