Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
toshiba_satellite_u500-119 [Le 01/02/2011, 11:44] tOnI0 rajout de liens vers mini-tutoriaux |
toshiba_satellite_u500-119 [Le 31/08/2022, 23:33] (Version actuelle) moths-art Passage de http à https sur les liens externes (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>portable toshiba u500 BROUILLON}} | + | {{tag>portable toshiba}} |
---- | ---- | ||
Ligne 5: | Ligne 5: | ||
====== Modèle : Toshiba Satellite U500-119 ====== | ====== Modèle : Toshiba Satellite U500-119 ====== | ||
- | ===== En un coup d’œil ===== | + | ===== En un coup d'œil ===== |
Le tableau suivant récapitule la prise en charge du matériel de portable par les différentes versions d'Ubuntu. | Le tableau suivant récapitule la prise en charge du matériel de portable par les différentes versions d'Ubuntu. | ||
Ligne 24: | Ligne 24: | ||
===== Problèmes ===== | ===== Problèmes ===== | ||
- | ==== Luminosité ==== | + | ==== Rétroéclairage ==== |
Lorsque l'on souhaite changer la luminosité de l'écran avec les touches //Fn+F6// ou //Fn+F7// une barre de niveau semblable à la barre de changement de volume s'affiche à l'écran, mais la luminosité ne change pas. | Lorsque l'on souhaite changer la luminosité de l'écran avec les touches //Fn+F6// ou //Fn+F7// une barre de niveau semblable à la barre de changement de volume s'affiche à l'écran, mais la luminosité ne change pas. | ||
- | Le plus simple pour remédier à cela est de créer un démon qui va surveiller dynamiquement les changements apportés au fichier ''/sys/class/backlight/acpi_video0/brightness'' et appeler la commande ''setpci'' pour appliquer les changements. | + | Il est possible de changer la luminosité en ligne de commande, grâce à la commande ''setpci'' |
+ | |||
+ | Observer d'abord le résultat de la commande <code>lspci | grep VGA</code> qui devrait vous retourner une série de chiffres de la forme **00:02.0**, suivis du nom de votre contrôleur graphique. | ||
+ | |||
+ | Ce sont ces chiffres que nous allons utiliser dans la commande ci-après : | ||
+ | setpci -s 00:02.0 F4.B=xx | ||
+ | modifier ''xx'' par une valeur [[https://fr.wikipedia.org/wiki/Syst%C3%A8me_hexad%C3%A9cimal|hexadécimale]] comprise entre 00 et FF afin de faire varier la luminosité de votre écran. | ||
+ | |||
+ | Ceci n'est pas très confortable à long terme. Le plus simple pour remédier à cela est de créer un démon qui va surveiller dynamiquement les changements apportés au fichier ''/sys/class/backlight/acpi_video0/brightness'' et appeler la commande ''setpci'' pour appliquer les changements. | ||
== Création du script == | == Création du script == | ||
Ligne 95: | Ligne 103: | ||
Ce problème vient d'une table DSDT mal conçue dans le BIOS. Celle-ci a été clairement compilée pour les OS Microsoft, en laissant à Linux une table buggée, comme c'est malheureusement trop souvent le cas sur les portables Toshiba. En effet, les méthodes d'activation des ventilateurs renvoient toujours la valeur "1", ce qui fait que Linux va constamment essayer d'arrêter les ventilateurs. | Ce problème vient d'une table DSDT mal conçue dans le BIOS. Celle-ci a été clairement compilée pour les OS Microsoft, en laissant à Linux une table buggée, comme c'est malheureusement trop souvent le cas sur les portables Toshiba. En effet, les méthodes d'activation des ventilateurs renvoient toujours la valeur "1", ce qui fait que Linux va constamment essayer d'arrêter les ventilateurs. | ||
- | Nous allons corriger cette table DSDT, la recompiler, et l'intégrer à notre noyau (soit par une recompilation de celui-ci, soit en la chargeant dans le initrd). | + | Nous allons corriger cette table DSDT, la recompiler, et l'intégrer à notre noyau (soit par une recompilation de celui-ci, soit en la chargeant dans le initrd). **Il est important d'avoir effectué la dernière mise jour de son BIOS depuis le site de Toshiba au préalable.** |
+ | <note tip>Si vous ne souhaitez pas compiler votre propre noyau, différentes versions compilées du noyau Ubuntu pour le Toshiba U500-119 peuvent être téléchargées sur [[http://cocorikorn.free.fr/toshiba_u500-119/kernel/|cette page]] au format ''.deb''. | ||
+ | </note> | ||
=== Table DSDT === | === Table DSDT === | ||
== Corriger la table == | == Corriger la table == | ||
- | [[:tutoriel:comment_installer_un_paquet|Installez le paquet Intel DSDT Compiler]] **[[apt://foo,bar|iasl]]**. | + | [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] Intel DSDT Compiler **[[apt://foo,bar|iasl]]**. |
Copier le DSDT actuel dans un fichier du dossier actuel | Copier le DSDT actuel dans un fichier du dossier actuel | ||
Ligne 106: | Ligne 116: | ||
Désassembler la table | Désassembler la table | ||
iasl -d dsdt.dat | iasl -d dsdt.dat | ||
- | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier créé]] **dsdt.dat**. | + | [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] nouvellement créé **dsdt.dsl**. |
| | ||
Trouvez à présent les occurrences suivantes dans votre fichier (utilisez la recherche) : | Trouvez à présent les occurrences suivantes dans votre fichier (utilisez la recherche) : | ||
Ligne 114: | Ligne 124: | ||
...etc... | ...etc... | ||
</code> | </code> | ||
- | Vous devriez trouver 5 occurrences en principe. | + | Vous devriez en principe trouver 5 occurrences sur la plupart des modèles Toshiba. |
Remplacer **Lor** par **And** dans chaque champ ''Method'' situé après ''PowerResource''. Puis sauvegardez. | Remplacer **Lor** par **And** dans chaque champ ''Method'' situé après ''PowerResource''. Puis sauvegardez. | ||
+ | |||
+ | Exemple: | ||
+ | <code>PowerResource (PF0, 0x00, 0x0000) | ||
+ | { | ||
+ | Method (_STA, 0, NotSerialized) | ||
+ | { | ||
+ | If (And (FSTA, 0x01)) <------------------- CETTE LIGNE A ÉTÉ REMPLACÉE | ||
+ | { | ||
+ | Return (One) | ||
+ | } | ||
+ | Else | ||
+ | { | ||
+ | Return (Zero) | ||
+ | } | ||
+ | } | ||
+ | </code> | ||
== Recompiler la table == | == Recompiler la table == | ||
Ligne 123: | Ligne 149: | ||
Vous ne devriez à priori pas voir d'Erreurs, si quelques Warning subsistent ce n'est pas important. | Vous ne devriez à priori pas voir d'Erreurs, si quelques Warning subsistent ce n'est pas important. | ||
- | La compilation a créé un fichier ''dsdt.hex'' dans votre dossier courant. Nous allons en avoir grand besoin pour la suite. | + | <note>La compilation a créé un fichier ''dsdt.hex'' dans votre dossier courant. Nous allons en avoir grand besoin pour la suite.</note> |
- | === Recompiler son noyau === | + | === Recompiler son noyau en y incluant la table DSDT === |
- | Les versions antérieures à Jaunty (9.04) permettaient de charger une table DSDT modifiée directement dans le initrd. Ce n'est plus possible depuis Karmic (9.10) :-( pour les raisons évoquées [[http://www.mail-archive.com/ubuntu-bugs@lists.ubuntu.com/msg1976868.html|ici]]. | + | Les versions antérieures à Jaunty (9.04) permettaient de charger une table DSDT modifiée directement dans le initrd. Ce n'est plus possible depuis Karmic (9.10) :-( pour les raisons évoquées [[https://www.mail-archive.com/ubuntu-bugs@lists.ubuntu.com/msg1976868.html|ici]] **(en)**. |
Il va donc falloir se retrousser les manches et l'intégrer directement dans un noyau. | Il va donc falloir se retrousser les manches et l'intégrer directement dans un noyau. | ||
- | (suite du tuto à venir) | + | Pour cela, vous pourrez suivre la procédure que vous souhaitez, il en existe [[:?do=search&id=compiler|plusieurs sur ce Wiki]]. |
+ | A titre d'exemple, la [[:tutoriel:compiler_kernel_ubuntu_lucid|méthode de compilation d'un noyau sous Lucid et Maverick]] a été testée avec succès sur un Toshiba U500-119 sous [[lucid|Ubuntu 10.04 (Lucid Lynx)]] et [[maverick|Ubuntu 10.10 (Maverick Meerkat)]]. | ||
+ | |||
+ | Récupérez les sources et, au moment de la configuration du noyau, activer l'option suivante : | ||
+ | <code>Power management options (ACPI, APM) ---> | ||
+ | ACPI (Advanced Configuration and Power Interface) Support ---> | ||
+ | [*] Include Custom DSDT</code> | ||
+ | Renseigner le nom ''dsdt.hex'' et enregistrer. | ||
+ | |||
+ | Note: Vous pouvez aussi le faire manuellement en éditant le fichier ''.config'' et en y insérant ces lignes : | ||
+ | CONFIG_STANDALONE=n | ||
+ | CONFIG_ACPI_CUSTOM_DSDT=y | ||
+ | CONFIG_ACPI_CUSTOM_DSDT_FILE="dsdt.hex" | ||
+ | |||
+ | Copier maintenant votre fichier ''dsdt.hex'' dans le sous-dossier ''/include'' de vos sources du noyau. Par exemple via la commande : | ||
+ | cp dsdt.hex src/linux-2.6.xx/include | ||
+ | |||
+ | Vous pouvez maintenant passer à la compilation, puis à l'installation de votre noyau, qui chargera désormais la nouvelle table DSDT au démarrage. Si tout s'est bien déroulé, vous devriez entendre votre ventilateur ronfler doucement et s'activer normalement :-) | ||
+ | |||
+ | <note>La commande ''dmesg | grep DSDT'' vous permettra de vous assurer que la table a bien été chargée au démarrage.</note> | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
* [[http://art.ubuntuforums.org/showthread.php?t=1473317&page=3|Toshiba laptop U500 running hot]] **(en)** ; | * [[http://art.ubuntuforums.org/showthread.php?t=1473317&page=3|Toshiba laptop U500 running hot]] **(en)** ; | ||
- | * [[http://ubuntuforums.org/showthread.php?t=1036051|How to fix a buggy DSDT file]] **(en)** ; | + | * [[https://ubuntuforums.org/showthread.php?t=1036051|How to fix a buggy DSDT file]] **(en)** ; |
* [[http://www.uluga.ubuntuforums.org/showthread.php?t=1446943|Laptop backlight + KMS workaround]] **(en)** ; | * [[http://www.uluga.ubuntuforums.org/showthread.php?t=1446943|Laptop backlight + KMS workaround]] **(en)** ; | ||
- | * Recompilation du noyau sous Maverik **(en)** : | ||
- | * [[http://blog.avirtualhome.com/2010/11/06/how-to-compile-a-ubuntu-10-10-maverick-kernel/|Méthode 1]], | ||
- | * [[http://www.question-defense.com/2010/09/26/how-to-recompile-your-ubuntu-10-10-kernel-for-patching-or-to-add-support-for-a-specific-device|Méthode 2]]. | ||