Configuration de l'ACPI de l'EeePC

Publié le par slaxeee

Advanced Configuration and Power Interface (ACPI) désigne une norme qui a pour but d'implémenter le contrôle de la consommation d'énergie d'un ordinateur. Le principe consiste donner le moyen d'activer ou désactiver les élements qui sont consommateurs en fonction des besoins du système ou de l'utilisateur.

 

La transmission de l'ordre s'effectue au moyen de signaux qui sont interprétés par le système exploitation. Le dialogue avec le matériel s'effectue donc dynamiquement.

 

Dans cet article nous verrons comment effectuer le raccordement des touches programmables et de contrôle des périphériques de notre EeePC ( wifi, son, luminosité, ... )

 

La gestion des événements

 

C'est le démon acpid qui est à l'écoute des événements de l'EeePC.

 

Un moyen simple pour récupérer les codes événements de l'interface acpi et d'utiliser l'outil acpi_listen.

Une fois lancé, il suffit d'appuyer sur la touche de fonction pour obtenir son code sous la forme

 

     hotkey ATKD 0000001a 00000000

 

Voici la liste des codes événements pour un 901 :

 

Touches programmables


Touche user 1 :hotkey ATKD 0000001a

Touche user 2 : hotkey ATKD 0000001b

Touche user 3 : hotkey ATKD 0000001c

Touche user 4 : hotkey ATKD 0000001d

 

Touches de contrôle


Contrôle Wifi actif : hotkey ATKD 00000010

Contrôle Wifi inactif : hotkey ATKD 00000011

Gestionaire de tâches (Bouton AP): hotkey ATKD 00000012

Mode silence actif/inactif : hotkey ATKD 00000013

Contrôle du volume (diminution) : hotkey ATKD 00000014

Contrôle du volume (augmentation) : hotkey ATKD 00000015

Contrôle luminosité (diminution) : hotkey ATKD 00000027

Contrôle luminosité (augmentation) : hotkey ATKD 00000028

Contrôle sélection écran LCD/Externe : hotkey ATKD 00000030

 

Evénements spéciaux


Mise en veille : button/sleep SLPB 00000080

lid ( fermeture du laptop ) : button/lid LID

power ( extinction du laptop) : button/power

Alimentation secteur : hotkey ATKD 00000050 00000000

Alimentation batterie : hotkey ATKD 00000051 00000000

Les informations matérielles

 

 

C'est le module eeepc_laptop ( anciennement asus_eee ) qui est chargé d'entretenir un pseudo système de fichiers pour les équipements managés via l'acpi.

 

Initialement les fichiers étaient situés dans /proc/acpi/asus. Depuis la version 2.6.26-rc1 du kernel, les fichiers ont été déplacés dans /sys/devices/platfom/eeepc.

L'interface avec l'utilisateur

 

Le complément naturel du démon acpid est le module asus_osd qui permet l'affichage à l'écran de l'état d'une option matérielle suite à une action sur les touches de contrôle.

 

Il existe déjà un certain nombre de scripts qui assurent le couplage des événements et des actions correspondantes. Il est intéressant de comprendre comment s'effectue l'implémentation.

Chaque événement est intercepté dans le pseudo système de fichiers /proc/acpi/event.

La définition de chaque événement s'effectue dans un fichier situé dans le répertoire /etc/acpi/event.

 

Chaque fichier de définition contient deux lignes :

  • une ligne event qui contient le code de l'événement
  • une ligne action qui contient la commande a exécuter

 

 

Voici par exemple la définition du fichier button-ap qui intercepte l'appui sur la touche AP (Fn+F6)

 

     event=hotkey ATKD 00000012 .*

     action=/etc/acpi/eee-event-ap.sh

 

Par convention les scripts actions se situent dans le répertoire /etc/acpi mais il est possible d'exécuter une ou plusieurs actions sans passer par un script. Les commandes à exécuter sont séparées par le caractère ";" directement après le paramètre action.

 

 

Références :

 

Le projet démon acpi : http://acpid.sourceforge.net

Le projet scripts acpi-eeepc-generic : http://code.google.com/p/acpi-eeepc-generic/

Le projet scripts d'elmurato : http://forum.eeeuser.com/viewtopic.php?id=49081

Publicité

Publié dans Optimisation

Pour être informé des derniers articles, inscrivez vous :
Commenter cet article