web-dev-qa-db-fra.com

Comment déboguer xrandr sans configurer la résolution souhaitée?

J'ai besoin d'aide pour comprendre pourquoi xrandr ne parvient pas à définir la résolution souhaitée.

J'ai une configuration double moniteur:

  • 13 "ordinateur portable préférant résolution 2560x1440
  • Moniteur 24 "préférant une résolution de 1920x1200

En raison de la haute résolution, je souhaite pousser la résolution de l'ordinateur portable à 1920x1080, qui n'est pas reconnue par le gestionnaire d'affichage.

Je ne reçois que ceci:

2560x1440     59.95*+
1920x1440     60.00  
1856x1392     60.01  
1792x1344     60.01  
1600x1200     60.00  
1400x1050     59.98  
1280x1024     60.02  
1280x960      60.00  
1024x768      60.00  
800x600       60.32    56.25  
640x480       59.94 

Pour obtenir le modeline, j'utilise:

cvt 1920 1080 

Ensuite, pour que les modifications soient persistantes d'une session à l'autre, j'ajoute les lignes suivantes dans un script du dossier suivant, exécuté au cours de l'initialisation x11:

/etc/X11/xinit/xinitrc.d

Contenu (add-fullhd-to-edp1.sh):

xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
xrandr --addmode eDP1 1920x1080_60.00

Après quoi, je comprends que la résolution est maintenant supportée par xrandr

2560x1440     59.95*+
1920x1440     60.00  
1856x1392     60.01  
1792x1344     60.01  
1600x1200     60.00  
1400x1050     59.98  
1280x1024     60.02  
1280x960      60.00  
1024x768      60.00  
800x600       60.32    56.25  
640x480       59.94  
1920x1080_60.00  59.96

Donc, après avoir choisi la résolution avec xrandr ou l'interface graphique, l'écran clignote une fois pendant qu'il essaie de régler la résolution, puis une seconde fois pour revenir en arrière. Les entrées dans Xorg.log pendant que cela se produit ne sont que des redimensionnements du framebuffer:

(II) intel(0): resizing framebuffer to 1920x2280
(II) intel(0): switch to mode [email protected] on HDMI1 using pipe 0, position (0, 0), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on eDP1 using pipe 1, position (0, 1200), rotation normal, reflection none
(II) intel(0): resizing framebuffer to 2560x2640
(II) intel(0): switch to mode [email protected] on HDMI1 using pipe 1, position (0, 0), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on eDP1 using pipe 0, position (0, 1200), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on HDMI1 using pipe 0, position (0, 0), rotation normal, reflection none
(II) intel(0): switch to mode [email protected] on eDP1 using pipe 1, position (0, 1200), rotation normal, reflection none

Comme vous pouvez le constater, j'ai un pilote Intel, Iris Graphics.

00:02.0 VGA compatible controller: Intel Corporation Device 0a2e (rev 09)

Chose amusante, cela fonctionnait bien jusqu'à ce qu'une mise à jour soit lancée. Je ne savais pas lequel des deux le cassait.

Des indices? L'aide est grandement appréciée.

3
bassman

J'ai posté le bogue aux développeurs de gdm et j'ai eu le conseil d'utiliser la conf statique.

/etc/X11/xorg.conf.d/21-intel.conf

Contenu:

Section "Device"
    Identifier  "Intel Graphics"
        Driver      "intel"
        Option      "monitor-eDP1" "eDP1"
EndSection

Section "Monitor"
    Identifier      "eDP1"
    Modeline "1920x1080"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync
EndSection

Et ça a fonctionné. C'est drôle, je pense que c'est vraiment un bug pour les développeurs xrandr.

4
bassman