View previous topic :: View next topic |
Author |
Message |
drakkan Apprentice
Joined: 21 Jun 2004 Posts: 232
|
Posted: Sat May 21, 2005 1:39 pm Post subject: [HOWTO] Dual Head |
|
|
Scopo del documento
Questo howto ha lo scopo di illustrare come ho configurato il dual head sul mio laptop, un ibm thinkpad R40 con scheda grafica Ati Radeon Mobility M6 LY.
La configurazione ha funzionato con tutti i monitor esterni che ho provato sia LCD che CRT
Ci sono gi� diversi documenti sull'argomento ma per avere un sistema funzionante ho dovuto mettere insieme pezzi da pi� parti.
Configurazione Xorg
E' necessario fare diverse modifiche alla configurazione di xorg,
aggiungiamo l'opzione Xinerama alla sezione ServerFlags:
Code: |
Section "ServerFlags"
Option "Xinerama"
EndSection
|
bisogna aggiungere delle sezioni per il secondo monitor e modificare quelle per la scheda grafica,
per il secondo monitor aggiungere la seguente sezione:
Code: |
Section "Monitor"
Identifier "Monitor2"
HorizSync 31.5 - 57.0
VertRefresh 40-150
Option "dpms"
EndSection
|
per la scheda grafica modificare la sezione esistente ed aggiungerne una seconda:
Code: |
Section "Device"
Identifier "Radeon Mobility M6LY_0"
Driver "radeon"
#VideoRam 16384
# Insert Clocks lines here if appropriate
BusID "PCI:1:0:0"
Option "DCCMode" "on"
Option "DPMS"
Screen 0
EndSection
Section "Device"
Identifier "Radeon Mobility M6LY_1"
Driver "radeon"
#VideoRam 16384
# Insert Clocks lines here if appropriate
BusID "PCI:1:0:0"
Option "DCCMode" "on"
Option "DPMS"
Screen 1
EndSection
|
creaiamo poi le seguenti sezioni:
Code: |
Section "Screen"
Identifier "Screen0"
Device "Radeon Mobility M6LY_0"
Monitor "Monitor1"
DefaultDepth 24
Option "MonitorLayout" "LVDS,CRT"
#Option "MonitorLayout" "CRT,LVDS"
#Option "MonitorLayout" "CRT,LFP"
Subsection "Display"
Depth 8
Virtual 1024 768
Modes "1024x768" "800x600" "640x480"
#ViewPort 0 0
EndSubsection
Subsection "Display"
Depth 16
Virtual 1024 768
Modes "1024x768" "800x600" "640x480"
#ViewPort 0 0
EndSubsection
Subsection "Display"
Depth 24
Virtual 1024 768
#Virtual 1280 1024
Modes "1024x768" "800x600" "640x480"
#ViewPort 0 0
EndSubsection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Radeon Mobility M6LY_1"
Monitor "Monitor2"
DefaultDepth 24
Option "MonitorLayout" "LVDS,CRT"
#Option "MonitorLayout" "CRT,LVDS"
#Option "MonitorLayout" "CRT,LFP"
Subsection "Display"
Depth 8
Virtual 1024 768
#Virtual 1280 1024
#Modes "1280x1024" "1024x768" "800x600" "640x480"
Modes "1024x768" "800x600" "640x480"
#ViewPort 0 0
EndSubsection
Subsection "Display"
Depth 16
Virtual 1024 768
#Virtual 1280 1024
Modes "1024x768" "800x600" "640x480"
#ViewPort 0 0
EndSubsection
Subsection "Display"
Depth 24
Virtual 1024 768
#Virtual 1280 1024
#Modes "1600x1200" "1400x1050" "1280x1024" "1024x768" "800x600" "640x480"
Modes "1024x768" "800x600" "640x480"
#ViewPort 0 0
EndSubsection
EndSection
|
se modifichiamo il valore Virtual possiamo avere risoluzioni diverse sui due monitor, nel mio caso non posso avere comunque valori superiori a 1024x768 per le limitazioni della mia scheda grafica.
Quindi posso avere ad esempio 1024x768 su entrambi i monitor oppure 800x600 sul secondo monitor e 1024x768 sul primo.
Sarebbe stato comodo avere ad esempio 1280x1024 sul secondo monitor ma con la mia scheda purtroppo non � possibile. Quindi uso la stessa risoluzione su entrambi i monitor
Infine modificare ServerLayout come segue:
Code: |
Section "ServerLayout"
#Screen "Screen 1"
#InputDevice "Mouse1" "CorePointer"
InputDevice "SynapticsTouchpad" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
InputDevice "USBmouse" "SendCoreEvents"
Screen "Screen0" 0 0
Screen "Screen1" RightOf "Screen0"
EndSection
|
MOUSE
Trovo comodo usare anche un mouse usb esterno, per farlo funzionare basta aggiungere la seguente sezione:
Code: |
Section "InputDevice"
Identifier "USBmouse"
Driver "mouse"
Option "Protocol" "IMPS/2"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5"
EndSection
|
la direttiva:
Code: |
Option "ZAxisMapping" "4 5"
|
serve ad abilitare lo scrolling.
Inoltre per il touchpad uso i driver synaptics che tra le altre cose permettono una funzione per me utilissima che � l'emulazione dello scrolling, basta muovere il dito sulla parte destra del touchpad.
Per usare i driver synaptics bisogna abilitare nel kernel l'ozione input device events:
Code: |
CONFIG_INPUT_EVDEV=y
|
se non l'avete gi� abilitata ricompilate il kernel e poi installate i driver synaptics:
aggiungete il seguente contenuto a xorg.conf:
Code: |
Section "Module"
...
...
...
Load "synaptics"
EndSection
|
e nella relativa sezione:
Code: |
Section "InputDevice"
Identifier "SynapticsTouchpad"
Driver "synaptics"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "6 7"
Option "Edges" "1900 5400 1800 3900"
Option "Finger" "25 30"
Option "MaxTapTime" "180"
Option "MaxTapMove" "220"
Option "VertScrollDelta" "100"
#Option "MinSpeed" "0.02"
Option "MinSpeed" "0.08"
Option "MaxSpeed" "0.18"
#Option "AccelFactor" "0.0007"
Option "AccelFactor" "0.0010"
Option "SHMConfig" "on"
Option "UpDownScrolling" "on"
Option "Protocol" "ImPS/2"
Option "CorePointer" ""
EndSection
|
TODO
Un modo per poter scegliere al momento dell'avvio del server grafico se usare il layout in dual head o in single head
Last edited by drakkan on Sat May 21, 2005 5:16 pm; edited 1 time in total |
|
Back to top |
|
|
matttions Guru
Joined: 19 Jul 2004 Posts: 338
|
Posted: Sat May 21, 2005 4:52 pm Post subject: |
|
|
Ottimo lavoro..
ho aggiornato il mio xorg.conf ed appena posso lo testo
P.s: La risposta alla tua ultima domanda...
basta utilizzare i Server Layout..
mi spiego con un pò di codice
Code: |
# **********************************************************************
# ServerLayout sections.
# **********************************************************************
Section "ServerLayout"
Identifier "single"
Screen "LCDScreen"
InputDevice "USBMouse" "CorePointer"
InputDevice "Synaptics-Touchpad" "SendCoreEvents"
InputDevice "Keyboard" "CoreKeyboard"
EndSection
Section "ServerLayout"
Identifier "dual"
Screen "LCDScreen" 0 0
Screen "Screen2" RightOf "LCDScreen"
InputDevice "USBMouse" "CorePointer"
InputDevice "Synaptics-Touchpad" "SendCoreEvents"
InputDevice "Keyboard" "CoreKeyboard"
EndSection
### EOF ###
|
Quindi per partire in modalità singola dare un
Code: | startx -layout single |
in modalità dual un
Code: | startx -layout dual |
P.s: Per default il server X prende il primo layout Server se nn specificato..
Perciò con un
partirete in modalità single
ciauz! _________________ gentoo ... l'unico pinguino da corsa |
|
Back to top |
|
|
drakkan Apprentice
Joined: 21 Jun 2004 Posts: 232
|
Posted: Sat May 21, 2005 5:13 pm Post subject: |
|
|
matttions wrote: | Ottimo lavoro..
|
grazie
Quote: |
ho aggiornato il mio xorg.conf ed appena posso lo testo
|
in bocca al lupo!
se il tuo laptop è uguale al mio funzionerà di certo!
Quote: |
P.s: La risposta alla tua ultima domanda...
basta utilizzare i Server Layout..
|
mi sono spiegato male intendevo qualcosa di automatico, tipo una flag da spuntare all'avvio del desktop manager
senza ricorrere alla console per intenderci |
|
Back to top |
|
|
matttions Guru
Joined: 19 Jul 2004 Posts: 338
|
Posted: Sat May 21, 2005 5:32 pm Post subject: |
|
|
Ah ecco ...
Come login manager utilizzo qingy ed ancora non supporta differenti serverlayout ...
è per questo che passo dalla console _________________ gentoo ... l'unico pinguino da corsa |
|
Back to top |
|
|
power83 l33t
Joined: 28 Nov 2004 Posts: 638
|
Posted: Sat May 21, 2005 9:25 pm Post subject: |
|
|
e riesci anche ad utilizzare una tv come secondo monitor?
come? usando l'uscita tv o attancandola ad un adattatore da vga a svideo/composito? |
|
Back to top |
|
|
matttions Guru
Joined: 19 Jul 2004 Posts: 338
|
Posted: Thu Jun 02, 2005 5:49 pm Post subject: |
|
|
Ok..
testato con un video proiettore ..
funziona perfettamente ottimo lavoro..
@mod lo metterei tra i post utilissimi
Si potrebbe portare aventi il lavoro e riuscire a fare andare anche l'uscita S-video.
se qualcuno trova il modo ..lo scriva
ciauz ! _________________ gentoo ... l'unico pinguino da corsa |
|
Back to top |
|
|
knefas l33t
Joined: 21 Dec 2003 Posts: 828
|
Posted: Thu Jun 02, 2005 7:48 pm Post subject: |
|
|
drakkan wrote: | mi sono spiegato male intendevo qualcosa di automatico, tipo una flag da spuntare all'avvio del desktop manager
senza ricorrere alla console per intenderci |
Il fatto e' che il DM e' eseguito *dopo* il server X, per cui bisognerebbe comunque farlo ripartire, tipo con un bottone che lanci uno script che faccia il restart di X con il parametro -layout eccetera...
mi e' venuto in mente il progetto qingy che non si appoggia su X, ho guardato e al momento non mi pare che supporti 'sti layout, ma teoricamente dovrebbe essere facile scrivere una patch che permetta di specificare 2 chiamate diverse a X...
si potrebbe contattare lo sviluppatore... |
|
Back to top |
|
|
matttions Guru
Joined: 19 Jul 2004 Posts: 338
|
Posted: Thu Jun 02, 2005 8:18 pm Post subject: |
|
|
knefas wrote: | drakkan wrote: | mi sono spiegato male intendevo qualcosa di automatico, tipo una flag da spuntare all'avvio del desktop manager
senza ricorrere alla console per intenderci |
Il fatto e' che il DM e' eseguito *dopo* il server X, per cui bisognerebbe comunque farlo ripartire, tipo con un bottone che lanci uno script che faccia il restart di X con il parametro -layout eccetera...
mi e' venuto in mente il progetto qingy che non si appoggia su X, ho guardato e al momento non mi pare che supporti 'sti layout, ma teoricamente dovrebbe essere facile scrivere una patch che permetta di specificare 2 chiamate diverse a X...
si potrebbe contattare lo sviluppatore... |
Infatti it's the way to go!!!!
Se nn sbaglio lo sviluppatore è _
-italiano
-utente gentoo
-frequenta il forum
inoltre è sulla TODO del progetto....
Sarebbe davvero utile..
io utilizzo qingy,
entro in console
e lancio lo script a manina.
Maledetta uscita tv... per ora niente. ..ma lotto _________________ gentoo ... l'unico pinguino da corsa |
|
Back to top |
|
|
|