DXGKDDI_PROTECTED_CALLBACK fonction de rappel (dispmprt.h)
La routine de rappel DxgkProtectedCallback est implémentée par le pilote de miniport d’affichage et est appelée par DxgkCbExcludeAdapterAccess pendant un état protégé lorsque tout accès à la carte graphique est empêché.
Syntaxe
DXGKDDI_PROTECTED_CALLBACK DxgkddiProtectedCallback;
void DxgkddiProtectedCallback(
[in] IN_CONST_PVOID MiniportDeviceContext,
[in] PVOID ProtectedCallbackContext,
[in] NTSTATUS ProtectionStatus
)
{...}
Paramètres
[in] MiniportDeviceContext
Handle d’un bloc de contexte associé à un adaptateur d’affichage. La fonction DxgkDdiAddDevice du pilote miniport d’affichage a précédemment fourni ce handle au sous-système du noyau graphique DirectX.
[in] ProtectedCallbackContext
Pointeur vers les informations définies par le pilote qui ont été spécifiées dans un appel précédent à DxgkCbExcludeAdapterAccess.
[in] ProtectionStatus
État de l’état protégé de l’adaptateur d’affichage. Si STATUS_SUCCESS, l’adaptateur a été correctement protégé contre l’accès. Un échec status code indique que l’adaptateur n’est pas protégé.
Valeur de retour
None
Remarques
DxgkProtectedCallback doit être appelé uniquement lorsque tous les accès à l’adaptateur d’affichage ont été interrompus, comme indiqué par le paramètre de status ProtectionStatus.
Le pilote doit s’assurer que les conditions suivantes sont remplies pendant la routine de rappel :
- Toutes les interruptions sur l’appareil sont désactivées, et toutes les interruptions restantes en attente sont gérées, y compris les DPC qui ont pu être mis en file d’attente sur n’importe quel processeur, mais qui n’ont pas encore été pris en charge.
- Toutes les mémoires combinées en écriture et tous les autres états liés au cache ont été vidés.
- Les événements ACPI ou BIOS/SMI qui se produisent n’accèdent pas au matériel.
- La cohérence est obtenue entre tous les adaptateurs dans une configuration d’état d’adaptateur lié.
- L’adaptateur, y compris ses registres et son mode d’affichage, est maintenu dans l’état approprié pour gérer la mémoire tampon DMA qui se produit lors du retour de la routine DxgkProtectedCallback . Le pilote ne doit pas modifier l’état visible ou les fonctionnalités d’une application.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | dispmprt.h (include Dispmprt.h) |
IRQL | PASSIVE_LEVEL |