Ho due schede video AMD / ATI Radeon X1300 / X1550 e quattro monitor Iiyama da 22 pollici con una risoluzione di 1680x1050 che lavorano insieme su Linux Mint Debian Edition con un semplice script che viene eseguito all'avvio:
xrandr --setprovideroutputsource 1 0
xrandr --output DVI-1-0 --mode 1680x1050 --pos 0x0
xrandr --output VGA-1 --mode 1680x1050 --rotate normal --right-of DVI-1-0 --primary
xrandr --output DVI-1 --mode 1680x1050 --rotate right --above VGA-1
xrandr --output VGA-1-0 --mode 1680x1050 --rotate left --left-of DVI-1
La prima riga attiva la seconda scheda video e la riga successiva posiziona gli schermi come monitor in posizione verticale uno accanto all'altro e due monitor in posizione orizzontale sottostanti in questo modo:
| |
__ __
Preferirei avere i quattro monitor posizionati uno accanto all'altro, con i due monitor posizionati in verticale al centro dei due monitor posizionati in orizzontale. Questo tuttavia sembra essere un problema, sia quando uso i file di configurazione xrandr che xorg.
Quando uso xrandr o lo strumento di visualizzazione, il monitor più a destra non viene sincronizzato quando posizionato a destra degli altri tre.
Quando uso i file di configurazione di xorg, viene attivata l'una o l'altra scheda, ma non entrambe contemporaneamente. Con o senza l'utilizzo di Xinerama, non funziona. Ho usato questo per trovare gli ID bus delle carte:
# lspci|grep Radeon
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] RV516 [Radeon X1300/X1550 Series]
01:00.1 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] RV516 [Radeon X1300/X1550 Series] (Secondary)
08:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] RV516 [Radeon X1300/X1550 Series]
08:00.1 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] RV516 [Radeon X1300/X1550 Series] (Secondary)
E metti questi file in /usr/share/X11/xorg.conf.d per posizionarli da destra a sinistra:
20-ati.conf
30-0-landscaperight.conf
30-1-portraitright.conf
30-2-portraitleft.conf
30-3-landscapeleft.conf
90-serverlayout.conf
20-ati.conf La cosa divertente nella configurazione qui sotto è che se cambio BusID dalle prime due voci con le ultime due, i due monitor di sinistra funzionano invece dei due di destra. Quindi questo conferma che il BusID funziona, ma non tutti e quattro insieme:
Section "Device"
Identifier "ati0vga"
Driver "radeon"
BusID "PCI:08:00:0"
Screen 0
EndSection
Section "Device"
Identifier "ati0dvi"
Driver "radeon"
BusID "PCI:08:00:1"
Screen 1
EndSection
Section "Device"
Identifier "ati1vga"
Driver "radeon"
BusID "PCI:01:00:0"
Screen 2
EndSection
Section "Device"
Identifier "ati1dvi"
Driver "radeon"
BusID "PCI:01:00:1"
Screen 3
EndSection
30-0-landscaperight.conf Come puoi vedere in questo e nei prossimi tre config, ho provato a impostare il viewport e un desktop virtuale. Ma con il nostro senza: solo quelli che sono collegati alle prime due voci nella configurazione 20-ati.conf sono attivati.
Section "Monitor"
Identifier "VGA-1"
VertRefresh 60
Modeline "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
Option "dpms" "on"
EndSection
Section "Screen"
Identifier "LandscapeRight"
Device "ati0vga"
Monitor "VGA-1"
DefaultDepth 24
Subsection "Display"
Depth 24
# Modes "1680 1050"
# ViewPort 3880 0
# Virtual 5460 1680
EndSubSection
EndSection
30-1-portraitright.conf
Section "Monitor"
Identifier "DVI-1"
VertRefresh 60
Modeline "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
Option "dpms" "on"
EndSection
Section "Screen"
Identifier "PortraitRight"
Device "ati0dvi"
Monitor "DVI-1"
DefaultDepth 24
Subsection "Display"
Depth 24
# Modes "1680 1050"
# ViewPort 2730 0
# Virtual 5460 1680
EndSubSection
Option "Rotate" "right"
EndSection
30-2-portraitleft.conf
Section "Monitor"
Identifier "VGA-1-0"
VertRefresh 60
Modeline "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
Option "dpms" "on"
EndSection
Section "Screen"
Identifier "PortraitLeft"
Device "ati1vga"
Monitor "VGA-1-0"
DefaultDepth 24
Subsection "Display"
Depth 24
# Modes "1680 1050"
# ViewPort 1680 0
# Virtual 5460 1680
EndSubSection
Option "Rotate" "left"
EndSection
30-3-landscapeleft.conf
Section "Monitor"
Identifier "DVI-1-0"
VertRefresh 60
Modeline "1680x1050_60.00" 146.25 1680 1784 1960 2240 1050 1053 1059 1089 -hsync +vsync
Option "dpms" "on"
EndSection
Section "Screen"
Identifier "LandscapeLeft"
Device "ati1dvi"
Monitor "DVI-1-0"
DefaultDepth 24
Subsection "Display"
Depth 24
# Modes "1680 1050"
# ViewPort 0 0
# Virtual 5460 1680
EndSubSection
EndSection
90-serverlayout.conf Come puoi vedere, ho provato anche con l'opzione Xinerama.
Section "ServerLayout"
Identifier "Main"
Screen 0 "LandscapeRight"
Screen 1 "PortraitRight" LeftOf "LandscapeRight"
Screen 2 "PortraitLeft" LeftOf "PortraitRight"
Screen 3 "LandscapeLeft" LeftOf "PortraitLeft"
EndSection
Section "ServerFlags"
# Option "Xinerama" "1"
EndSection
Quindi cosa non va qui? Perché tutto funziona bene in una configurazione a quattro quadranti, ma non posizionati l'uno accanto all'altro?