Salut à tous.
Je viens d'installer la dernière Debian GNU/Linux "Stable" sur mon ordinateur portable Dell INSPIRON 8500.
Maintenant je me dirige vers la personnalisation du noyau 2.6.12.
Je souhaiterais connaître la manière la plus efficace et élégante pour mettre un DSDT corrigé afin d'avoir l'ACPI pleinement fonctionnel.
J'ai bien lu l'astuce suivante: mais celle-ci date du 19 mars 2004.
Dans cette astuce, il est précisé ceci:
5°) Modifiez le fichier /usr/src/linux/drivers/acpi/osl.c :
Au début du fichier, rajoutez ceci :
#include "/usr/src/linux/drivers/acpi/tables/dsdt.hex"
Et modifiez la fonction "acpi_os_table_override" pour qu'elle ressemble à ça :
acpi_status
acpi_os_table_override (struct acpi_table_header *existing_table,
struct acpi_table_header **new_table)
{
if (!existing_table || !new_table)
return AE_BAD_PARAMETER;
if (strncmp(existing_table->signature,"DSDT",4))
*new_table = NULL;
else *new_table = (struct acpi_table_header *)AmlCode;
return AE_OK;
}
Bref, j'ai en ma possession le DSDT correct qui se nomme "dsdt.dsl" mais je ne sait pas si cette modification est toujours d'actualité sur le noyau 2.6.12 et si il n'y a pas quelque chose de moins "bricolage".
Merci.
# Comme sous Ubuntu?
Posté par Djax . Évalué à 3.
Compiler la DSDT
Ca produit un fichier DSDT.aml que tu déplaces vers /etc/mkinitrd/DSDT
[^] # Re: Comme sous Ubuntu?
Posté par plagiats . Évalué à 2.
Grace à toi, j'ai pu faire marcher l'acpi sur ma kubuntu sans recompiler le noyau : joie!
Merci !
how-to kubuntu ubuntu acpi dsdt problème gestion batterie
Je rajoute des liens pour le chaland qui aurait besoin de corriger la gestion de sa batterie :
http://forums.gentoo.org/viewtopic.php?t=122145(...) (le tutorial de référence, en anglais)
http://tinyurl.com/84mce(...) (traduction partielle, en francais, contient toute)
[^] # Re: Comme sous Ubuntu?
Posté par plagiats . Évalué à 2.
root@totol:~# dpkg-reconfigure linux-image-2.6.10-5-386
je le sais parce que
denis@totol:~$ uname -a
renvoie
Linux totol 2.6.10-5-386 #1 Fri Jun 24 16:53:01 UTC 2005 i686 GNU/Linux
# 2 solutions
Posté par tgl . Évalué à 5.
http://gaugusch.at/kernel.shtml(...)
Est-ce que Debian utilise ce patch dans ses noyaux ? Aucune idée perso.
* La 2ème, c'est de l'inclure dans le noyau, mais c'est maintenant plus simple que ce que tu décris : option "ACPI_CUSTOM_DSDT_FILE", accessible via "Power management options (ACPI, APM)" --> "ACPI (Advanced Configuration and Power Interface) Support " --> "Include Custom DSDT". Et là tu donnes le chemin vers ta "dsdt.hex".
Attention donc, dans un cas c'est le .aml, et dans l'autre le .hex. Les deux sont générés depuis le .dsl via la commande donnée au dessus ("iasl -tc dsdt.dsl").
[^] # Re: 2 solutions
Posté par debianowgus . Évalué à 1.
Aussi, je n'ai pas constaté la présence d'un menu d'inclusion de DSDT Custom.
Je suppose que le kernel sur une UBUNTU est pré patché.
De même, le kernel de la "sarge" est à aujourd'hui le 2.6.8 et n'intègre pas de patch similaire. (je pense que le kernel de debian est la version officielle sans patch)
Dommage que freebios ne soit pas abouti car j'aurai évité le bricolage...
[^] # Re: 2 solutions
Posté par tgl . Évalué à 2.
> DSDT Custom.
Tu veux dire, même pas l'option de ma solution #2 ?
Si oui, alors c'est peut-être que tu as d'activé l'option "STANDALONE" (aka "Select only drivers that don't need compile-time external firmware", dans "Device Drivers" --> "Generic Driver Options").
Enfin toujours est-il qu'il me semble vraiment que c'est une option standard. Essayes voir, dans "make menuconfig", de taper "/ dsdt". Ça devrait te montrer l'option si elle existe bien, et ses dépendances (ici, sur un 2.6.12-pre6 : !X86_VOYAGER && !X86_VISWS && !IA64_HP_SIM && (IA64 || X86) && ACPI && ACPI_INTERPRETER && !STANDALONE).
# Suspend ?
Posté par Yoy . Évalué à 1.
[^] # Re: Suspend ?
Posté par debianowgus . Évalué à 1.
[^] # Re: Suspend ?
Posté par S3phiroth . Évalué à 1.
Le "à moitié" vient du fait que avec les drivers nvidia ca marche le remier coup mais pas si je veux refaire un suspend (au réveil black screen et plantage du portable ...) Le tout en suivant le topic suivant : http://forum.hardware.fr/hardwarefr/OSAlternatifs/Suspend-Hibernate(...)
Si certains trouvent la solution .... Sinon je réessayerais tt ca avec le 2.6.12 le DSDT qui va bien et les derniers drivers de la firme au caméléon, quand j'aurais un peu de temps
# J'ai tenté de modifier le fichier osl.c
Posté par debianowgus . Évalué à 1.
Une partie relative au Custom DSDT est déja présente dans le CODE ! Il semble donc qu'il ne soit pas nécessaire de modifier le source. Par contre, je n'ai aucun moyen de préciser que je souhaite utiliser une DSDT Custom. En effet, dans le menu (make xconfig) l'option n'apparait pas.
Bref, c'est dans le code mais pas dans le menu.
Je rappelle qu'il s'agit du kernel officiel 2.6.12.
J'ai tenté de modifier à la mano le fichier .config pour y préciser:
(de mémoire)
CONFING_ACPI_xxxxx_xxxxx=Y
CONFING_ACPI_xxxxx_xxxxx_FILE="/urs/src/linux_2.6.12/driver/acpi/tables/dsdt.hex"
Ceci n'a pas fonctionné don je l'ai retiré !
Si quelqun a une idée ?
# OK !
Posté par debianowgus . Évalué à 1.
site d'information: http://gaugusch.at/kernel.shtml(...)
1) télécharger le kernel 2.6.12 et l'extraire dans /usr/src
2) téléchrger le fichier ci_dessous: http://gaugusch.at/acpi-dsdt-initrd-patches/acpi-dsdt-initrd-patch-(...)
et le copier dans /usr/src/linux-2.6.12
3) appliquer le patch avec les commandes:
cd /usr/src/linux-2.6.12
cat acpi-dsdt-initrd-patch-v0.7d-2.6.9.patch | patch -p1
3) make xconfig (MENU ACPI, sélectionner "Read Custom DSDT from initrd)
4) recompiler le noyau:
make-kpkg clean
make-kpkg --revision Custom.1 binary
5) installer les packages créés par la compile du noyau
6) créer un initrd
mkinitrd -o /boot/initrd.img-2.6.12 2.6.12
7) ajout entête magique
echo -n "INITRDDSDT123DSDT123" >> /boot/initrd.img-2.6.12
8) ajout de son DSDT.aml perso
cat DSDT.aml >> /boot/initrd.img-2.6.12
9) modifier le fichier /boot/grub/menu.lst pour ajouter l'appel à l'initrd
Il ne me reste plus qu'a tester suspend/resume ...
merci à tous.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.