[xorg] 2 cartes graphiques, 2 écrans (contourné)

Questions et astuces concernant l'installation et la configuration d'archlinux
syno
newbie
Messages : 6
Inscription : mar. 30 déc. 2014, 19:13

[xorg] 2 cartes graphiques, 2 écrans (contourné)

Message par syno »

Bonjour,

J'ai trouvé plusieurs messages similaires, mais aucun ne m'a permi d'avancer sur mon propre problème donc je me permets de faire un nouveau topic sur le sujet.

J'utilise Arch Linux depuis plusieurs années, mais jusque là, avec un seul écran. Depuis peu, je me suis senti un peu à l'étroit dans mon espace de travail et j'ai voulu brancher un ancien moniteur en plus. Et j'en chie ^^

Donc ma config est assez simple, j'ai une carte graphique AMD RX480, avec mon écran principal branché dessus, sur le port hdmi, et j'ai un chipset intel intégré à la carte mère (asus z77), avec un autre écran branché sur son port VGA. J'aimerais avoir un bureau étendu, moniteur principal sur la carte amd, moniteur secondaire sur la carte intel. Dans mon BIOS, j'ai 2/3 options pour activer ou désactiver le chipset intégré, pour choisir le chipset principal pour l'affichage etc, tout ça c'est configuré correctement. J'utilise les pilotes libres pour les 2 cartes. Mon install d'Arch est flambant neuve de ce matin, ça faisait des années que je me trimbalais une partition /home que j'ai migré entre plusieurs installations, et j'en ai eut marre, j'ai récupéré les trucs importants, j'ai tout basardé et paf! un arch linux tout neuf. Donc voilà, j'ai commencé par lire le wiki, qui me disait que dans la plupart des cas Xorg fait sa tambouille tout seul, sans fichier de configuration. Mais pas moyen de faire marcher le second écran. Donc j'ai opté pour

Code : Tout sélectionner

Xorg :1 -configure
pour voir ce que Xorg me trouvait comme configuration. Voici le résultat :

Code : Tout sélectionner

Section "ServerLayout"
	Identifier     "X.org Configured"
	Screen      0  "Screen0" 0 0
	Screen      1  "Screen1" RightOf "Screen0"
	InputDevice    "Mouse0" "CorePointer"
	InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
	ModulePath   "/usr/lib/xorg/modules"
	FontPath     "/usr/share/fonts/misc/"
	FontPath     "/usr/share/fonts/TTF/"
	FontPath     "/usr/share/fonts/OTF/"
	FontPath     "/usr/share/fonts/Type1/"
	FontPath     "/usr/share/fonts/100dpi/"
	FontPath     "/usr/share/fonts/75dpi/"
EndSection

Section "Module"
	Load  "glx"
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
	Identifier  "Mouse0"
	Driver      "mouse"
	Option	    "Protocol" "auto"
	Option	    "Device" "/dev/input/mice"
	Option	    "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Monitor"
	Identifier   "Monitor1"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "Accel"              	# [<bool>]
        #Option     "SWcursor"           	# [<bool>]
        #Option     "EnablePageFlip"     	# [<bool>]
        #Option     "SubPixelOrder"      	# [<str>]
        #Option     "ZaphodHeads"        	# <str>
        #Option     "AccelMethod"        	# <str>
        #Option     "DRI3"               	# [<bool>]
        #Option     "DRI"                	# <i>
        #Option     "ShadowPrimary"      	# [<bool>]
        #Option     "TearFree"           	# [<bool>]
        #Option     "DeleteUnusedDP12Displays" 	# [<bool>]
	Identifier  "Card0"
	Driver      "amdgpu"
	BusID       "PCI:1:0:0"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "SWcursor"           	# [<bool>]
        #Option     "kmsdev"             	# <str>
        #Option     "ShadowFB"           	# [<bool>]
        #Option     "AccelMethod"        	# <str>
        #Option     "PageFlip"           	# [<bool>]
        #Option     "ZaphodHeads"        	# <str>
	Identifier  "Card1"
	Driver      "modesetting"
	BusID       "PCI:0:2:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

Section "Screen"
	Identifier "Screen1"
	Device     "Card1"
	Monitor    "Monitor1"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection
Donc Xorg trouve bien 2 cartes graphiques, et 2 écrans. D'ailleurs avec ce fichier de configuration, mon bureau n'est pas étendu au second moniteur, mais je peux déplacer le curseur de ma souris dessus, il prend une forme de X et je ne peux rien faire de plus sur cet écran, mais déjà c'est mieux. Mon environnement de bureau c'est gnomeshell, et lui par contre ne détecte qu'un seul écran, j'utilise la session Xorg classique, pas wayland (à cause d'un bug de souris dans certains jeux, je verrai à basculer de nouveau sur la session wayland quand xorg 1.19 arrivera dans les dépots stables).

J'ai fait des essais avec xrandr, mais je n'arrive pas à en tirer grand chose, il ne me détecte que mon écran principal :

Code : Tout sélectionner

$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 16384 x 16384
DisplayPort-2 disconnected (normal left inverted right x axis y axis)
DisplayPort-3 disconnected (normal left inverted right x axis y axis)
DisplayPort-4 disconnected (normal left inverted right x axis y axis)
HDMI-A-2 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 531mm x 299mm
   1920x1080     60.00*+  50.00    59.94    59.99  
   1920x1080i    60.00    50.00    59.94  
   1600x1200     60.00  
   1680x1050     59.88  
   1280x1024     75.02    60.02  
   1440x900      59.90  
   1280x960      60.00  
   1366x768      59.79  
   1152x864      75.00  
   1280x720      60.00    50.00    59.94  
   1024x768      75.03    70.07    60.00  
   832x624       74.55  
   800x600       72.19    75.00    60.32    56.25  
   720x576       50.00  
   720x480       60.00    59.94  
   640x480       75.00    72.81    66.67    60.00    59.94  
   720x400       70.08
Fichtres! Pourquoi diable ne branches-tu pas ton second moniteur sur l'un des display port de ta carte graphique principale?
Certes, mais l'idée c'est de ne pas avoir à débourser un centime pour avoir un second écran. J'avais déjà l'écran dans un placard, et il ne prend que du vga en entrée, et je n'ai pas d'adaptateur displayport/vga (et si je voulais des adaptateurs à presque 40€ je deviendrais plutôt client apple :roll: )

Bref, voilà ou j'en suis, merci d'avoir pris le temps de lire tout ça, et merci pour votre aide à venir!
Dernière modification par syno le ven. 06 janv. 2017, 13:06, modifié 1 fois.
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17235
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [xorg] 2 cartes graphiques, 2 écrans

Message par benjarobin »

Il ne faut jamais ou presque générer de configuration xorg, cela pose plus de problème que tout autre chose. Et je ne pense pas que cela soit possible ce que tu tentes (sans utiliser XINERAMA...)
As tu essayer avec juste

Code : Tout sélectionner

Section "Device"
   Identifier  "Card0"
   Driver      "amdgpu"
   BusID       "PCI:1:0:0"
EndSection

Section "Device"
   Identifier  "Card1"
   Driver      "modesetting"
   BusID       "PCI:0:2:0"
EndSection
Que donne xrandr ?
Sinon sur amazon un adaptateur display port vga c'est moins de 10€...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
syno
newbie
Messages : 6
Inscription : mar. 30 déc. 2014, 19:13

Re: [xorg] 2 cartes graphiques, 2 écrans

Message par syno »

Merci de ta réponse,

D'une manière générale je laisse Xorg sans fichier de configuration, là c'était parce que je n'arrivais pas à faire ce que je voulais. Avec le xorg.conf que tu m'as mis, le résultat est presque le même, si ce n'est que je ne peux plus déplacer le curseur de ma souris sur mon second écran (pour autant c'est étrange puisque le second moniteur reçoit tout de même un signal, il ne se met pas en veille, il reste juste noir...). xrandr donne la même chose que dans mon message précédent.

Je vais chercher du côté de xinerama et sinon je casserai ma tirelire pour un adaptateur.

(note pour plus tard : triturer son ordinateur avant les fêtes, pour pouvoir demander des adaptateurs au père noël)
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17235
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [xorg] 2 cartes graphiques, 2 écrans

Message par benjarobin »

xinerama ne t'apportera que des problèmes. Tu ne peux pas avoir d'accélération 3D avec xinerama ou je ne sais plus trop quoi, mais en gros tu ne peux plus faire grand chose...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
syno
newbie
Messages : 6
Inscription : mar. 30 déc. 2014, 19:13

Re: [xorg] 2 cartes graphiques, 2 écrans

Message par syno »

Ok, merci pour toutes ces infos.

Je marque le sujet comme contourné, puisqu'au final je vais utiliser une seule carte graphique.
Répondre