Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le pilote système PortCls utilise les fonctionnalités de détection d’inactivité du système pour implémenter un minuteur d’inactivité pour ses clients audio. PortCls programme deux valeurs de délai d’attente et un état d’alimentation inactif souhaité dans le minuteur lorsqu’il l’initialise. PortCls surveille tous les accès (tels que les accès d'E/S et aux propriétés) de l’appareil et réinitialise efficacement le compteur de temporisation à chaque accès. Si le minuteur expire, le système demande un IRP d’alimentation pour placer l’appareil dans l’état d’inactivité souhaité. Une fois que l’appareil a été placé dans l’état d’inactivité, PortCls réactive l’appareil en cas de nouvelle activité d'accès détectée.
PortCls contient des valeurs par défaut codées en dur pour les délais d’inactivité et l’état d’inactivité de l’alimentation. Les fournisseurs de matériel peuvent éventuellement remplacer les valeurs par défaut en écrivant leurs propres valeurs sur des clés spécifiques au pilote dans le Registre système. De cette façon, les fournisseurs peuvent sélectionner les valeurs des paramètres d’inactivité de l’alimentation qui conviennent le mieux à leurs appareils.
Les fournisseurs peuvent remplacer les valeurs par défaut des paramètres d’inactivité de l’alimentation suivants :
ConservationIdleTime
Ce paramètre spécifie l’intervalle de délai d’inactivité lorsque le système s’exécute en mode de conservation de l’alimentation. Il s’agit du mode généralement utilisé lorsque le système s’exécute sur batterie. La valeur par défaut de ce paramètre est 0, ce qui désactive le minuteur d’inactivité de l’alimentation en mode conservation. Le fournisseur de matériel peut définir la valeur à l’aide d’un fichier inf comme celui-ci.
[MyAudioDevice.AddReg] HKR,PowerSettings,ConservationIdleTime,%REG_BINARY%,1e,00,00,00
Le fragment de fichier INF précédent affiche une valeur hexadécimale (hexadécimale) de « 1e » pour conservationIdleTime, ce qui équivaut à un délai d’inactivité de 30 secondes.
FLG_ADDREG_BINVALUETYPE
Les autres paramètres sont utilisés pour contrôler la façon dont la clé de Registre est ajoutée. Par exemple, %REG_BINARY% indique que les données sont stockées sous forme de données « brutes ». Pour plus d’informations, consultez la directive AddReg INF.
PerformanceIdleTime
Ce paramètre spécifie l’intervalle de délai d’inactivité lorsque le système s’exécute en mode performance. Il s’agit du mode généralement utilisé lorsque le système s’exécute sur l’alimentation ac. La valeur par défaut de ce paramètre est 0, ce qui désactive le minuteur d’inactivité de l’alimentation en mode performances.
Le fournisseur de matériel peut définir la valeur à l’aide d’un fichier inf comme celui-ci.
[MyAudioDevice.AddReg] HKR,PowerSettings,PerformanceIdleTime,%REG_BINARY%,2c,01,00,00La valeur de la clé spécifie l’intervalle de délai d’attente en secondes. Dans cet exemple, la valeur de 2c,01 sera de 300 secondes ou cinq minutes.
IdlePowerState
Ce paramètre spécifie l’état d’alimentation dans lequel l’appareil sera placé si la période d’inactivité expire. La valeur par défaut de ce paramètre est 3, correspondant à l’état d’alimentation de l’appareil D3, qui est l’état de faible alimentation de l’appareil le plus bas. Le fournisseur de matériel peut définir la valeur à l’aide d’un fichier inf comme celui-ci.
[MyAudioDevice.AddReg] HKR,PowerSettings,IdlePowerState,%REG_BINARY%,03,00,00,00La valeur placée dans la clé doit être 0, 1, 2 ou 3, correspondant respectivement à l’état d’alimentation de l’appareil D0, D1, D2 ou D3.
Les trois clés de Registre inactives liées à l’alimentation existent uniquement si le fichier INF d’installation de l’appareil les crée. Avant de configurer le minuteur d’inactivité de l’alimentation, PortCls tente de récupérer les paramètres d’inactivité de l’alimentation propres au pilote à partir du Registre. PortCls utilise les valeurs par défaut à la place des paramètres d’inactivité de l’alimentation qu’il ne trouve pas dans le Registre. Comme expliqué précédemment, les valeurs de paramètre d’inactivité par défaut désactivent le minuteur d’inactivité.
Pour plus d’informations sur la spécification des paramètres ConservationIdleTime, PerformanceIdleTime et IdlePowerState , consultez les définitions des trois derniers paramètres d’appel dans PoRegisterDeviceForIdleDetection.
Exemple
Par exemple, un fournisseur de matériel peut souhaiter spécifier les paramètres d’inactivité de l’alimentation suivants pour un appareil audio : ConservationIdleTime = 0x0000001e (30 secondes), PerformanceIdleTime = 0x0000012c (300 secondes) et IdlePowerState = 0x00000003 (état d’alimentation de l’appareil D3). Pour activer ces paramètres, le fichier d’installation de l’appareil peut inclure une section AddReg INF contenant les directives suivantes :
[MyAudioDevice.AddReg]
HKR,PowerSettings,ConservationIdleTime,%REG_BINARY%,1e,00,00,00
HKR,PowerSettings,PerformanceIdleTime,%REG_BINARY%,2c,01,00,00
HKR,PowerSettings,IdlePowerState,%REG_BINARY%,03,00,00,00