Canalblog
Editer l'article Suivre ce blog Administration + Créer mon blog
Publicité
Journal des modifications PC
1 août 2013

Ubuntu : après une grosse mise à jour du système l'affichage repasse en 1280 !

Le problème est décrit dans le titre (màj vers 3.8.0-28-generic). Le problème est aussi connu qu'il est mal documenté: il y a une pléthore de forums, de blogs, mais ça n'est jamais la bonne version de l'OS, jamais exactemetn le même problème, on ne sait pas le niveau de ceux qui répondent...

Même le site officiel en anglais est confus : attention seuls les pilotes propriétaires utilisent encore /etc/X11/xorg.conf, le pilote par défaut ne l'utilise plus depuis 12.04 Precise pangolin. Il utilise quoi... mystère. Impossible de trouver l'info.

Le problème semble être qu'avec le pilote OpenSource l'écran n'est pas correctement détecté, du coup xrandr (voir ci-dessous) refuse d'appliquer une résolution supérieure.

La solution que j'ai trouvée est d'installer provisoirement le pilote propriétaire qui lui détecte bien l'écran et affiche automatiquement une résolution maximale. L'ennui c'est que ce pilote (qui fournit bien le son en HDMI lui ! voir autre billet) est pénible car il au démarrage il repasse sans arret en 30Hz avec pour conséquence un scintillement notamment dans le définlement du texte sous Firefox.

 

Edit du 13/08/2013 :

Problème du 30Hz résolu en ajoutant un entrée dans les programmes au démarrage : ajout de la commande xrandr -r 60 (via l'interface système).

En fait depuis l'installation des derniers pilotes (sur le site AMD installation automatique) tout est super fluide ;)

 

 

 

Quelques commandes utiles :

xrandr, c'est l'outil qui gère les paramètres d'affichage. Avec le pilote propriétaire et lancé sans aucun paramètre ça renvoie :

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 1920 x 1920
DFP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 708mm x 398mm
   1920x1080      60.0*+   50.0     59.9     30.0     25.0     30.0     24.0     30.0     30.0     24.0  
   1776x1000      50.0     59.9     25.0     24.0     30.0     30.0  
   1680x1050      60.0     50.0     59.9     30.0     24.0     30.0     24.0  
   1400x1050      60.0     50.0     59.9     30.0     24.0     30.0     24.0  
   1600x900       50.0     59.9     24.0     30.0  
   1280x1024      50.0     60.0     30.0     24.0  
   1440x900       50.0     59.9     24.0     30.0  
   1280x960       50.0     60.0     30.0     24.0  
   1280x768       50.0     60.0     30.0     24.0  
   1280x720       60.0     50.0     30.0     59.9     30.0     24.0  
   1024x768       50.0     30.0     24.0     60.0  
   1152x648       50.0     59.9  
   800x600        50.0     30.0     24.0     60.3  
   720x480        50.0     30.0     24.0     30.0     60.0     30.0     59.9  
   640x480        50.0     30.0     24.0     60.0     59.9  
DFP2 disconnected (normal left inverted right x axis y axis)
CRT1 disconnected (normal left inverted right x axis y axis)

Avec le pilote par défaut qui marchait très bien avant la mise à jour ça donne désormais :

xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1280 x 1024, maximum 1280 x 1024
default connected 1280x1024+0+0 0mm x 0mm
   1280x1024       0.0*
   1024x768        0.0  
   800x600         0.0  
   640x480         0.0

En clair il n'a pas l'air content, et impose une résolution max de 1280x1024 !

Ensuite xrandr permet de gérer tous ces modes (supprimer ajouter...). J'ai cherché à ajouter le mode que ne n'avais pas et en bref :

  1. on crée un mode en utilisant les infos fournies par l'une des commandes (cvt, gtf voir ci-dessous) :
     xrandr --newmode $(gtf 1920 1080 60 | sed -ne 's/"//g;s/ Modeline //p')
     à quoi il répond
     xrandr: Failed to get size of gamma for output default

     puis un xrandr donne :
     xrandr: Failed to get size of gamma for output default
     
    Screen 0: minimum 640 x 480, current 1280 x 1024, maximum 1280 x 1024
    default connected 1280x1024+0+0 0mm x 0mm
       1280x1024       0.0*
       1024x768        0.0  
       800x600         0.0  
       640x480         0.0  
      1920x1080_60.00 (0x1a9)  172.8MHz
            h: width  1920 start 2040 end 2248 total 2576 skew    0 clock   67.1KHz
            v: height 1080 start 1081 end 1084 total 1118           clock   60.0Hz
  2. puis on autorise ce mode pour une sortie (ici default puisqu'il n'en détecte pas d'autre) :  
     xrandr --addmode default 1920x1080_60.00
     à quoi il répond invariablement:
     xrandr: Failed to get size of gamma for output default
    puis un xrandr donne:
    xrandr: Failed to get size of gamma for output default
    Screen 0: minimum 640 x 480, current 1280 x 1024, maximum 1280 x 1024
    default connected 1280x1024+0+0 0mm x 0mm
       1280x1024       0.0*
       1024x768        0.0  
       800x600         0.0  
       640x480         0.0  
       1920x1080_60.00   60.0  

  3. enfin on applique ce mode à la sortie : xrandr -s 1920x1080_60.00 et là misère on écope d'un Failed to change the screen configuration!

A priori inutile d'etre root pour faire tout ça (en root ça ne marche pas mieux).

 

cvt:

$ cvt 1920 1080 60
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

gtf:

$ gtf 1920 1080 60

  # 1920x1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz
  Modeline "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync

On remarque au passage que ça ne donne pas exactement les mêmes valeurs... Dans l'aide de xrandr (xrandr -h) les drapeaux valides portent des majuscules : HSync etc. Il faudrait préférer gtf ?

 

 

Publicité
Publicité
Commentaires
Journal des modifications PC
Publicité
Publicité