Difference between revisions of "AMD Catalyst (Italiano)"

From ArchWiki
Jump to: navigation, search
m (introduzione allineata)
m (Impossibile usare la modalità fullscreen con risoluzione 1920x1080: update)
(15 intermediate revisions by the same user not shown)
Line 15: Line 15:
 
{{Article summary link|Unofficial ATI Linux Driver Bugzilla|http://ati.cchtml.com/query.cgi}}
 
{{Article summary link|Unofficial ATI Linux Driver Bugzilla|http://ati.cchtml.com/query.cgi}}
 
{{Article summary end}}
 
{{Article summary end}}
{{out_of_date|Questa pagina è in fase di revisione e potrebbe non essere aggiornata. Seguite per ora le istruzioni della versione inglese.|Talk:ArchWiki Translation Team (Italiano)#Pagine Marcate come "out of date" e "Traslateme"}}
 
 
I possessori di schede video '''ATI/AMD''' possono scegliere tra i driver proprietari ATI ({{AUR|Catalyst}}) e i [[ATI_(Italiano)|driver opensource]] ({{Pkg|xf86-video-ati}}). Questo articolo tratta i driver proprietari.
 
I possessori di schede video '''ATI/AMD''' possono scegliere tra i driver proprietari ATI ({{AUR|Catalyst}}) e i [[ATI_(Italiano)|driver opensource]] ({{Pkg|xf86-video-ati}}). Questo articolo tratta i driver proprietari.
  
Line 26: Line 25:
  
 
==Installazione==
 
==Installazione==
{{Attenzione|Dalla release 12.4 di Catalyst, AMD provvede solo ad aggiornamenti importanti dei driver catalyst per schede grafiche Radeon HD < 5xxx.
+
Ci sono 4 modi per installare Catalyst sul proprio sistema. Il primo metodo è usare il [[Official Repositories (Italiano)|repository ufficiale]] [community], che però non contiene tutti i pacchetti esistenti. Il secondo metodo è usare il repository non ufficiale di Vi0L0 (il maintainer di Catalyst su AUR) che contiene tutti i pacchetti possibili per Arch Linux. Il terzo metodo prevede la compilazione dei pacchetti da [[AUR (Italiano)|AUR]]. Infine, il quarto metodo (fortemenete SCONSIGLIATO) è quello di installare Catalyst direttamente AMD.
  
'''TUTTI i proprietari di schede grafiche Radeon HD 2xxx 3xxx 4xxx''' passino a questo nuovo repository:
+
Prima di scegliere la modalità di installazione è necessario capire di quale driver si ha bisogno. Dalla release 12.4 di Catalyst, AMD ha deciso di prosdeguire in modo distinto lo sviluppo per le schede Radeon HD superiori alla serie 5xxx e per le schede Radeon HD 4xxx, 3xxx e 2xxx. Per queste ultime esiste il driver '''legacy''', mentre per le Radeon HD 5xxx (e successive) usare il "normale" pacchetti ''Catalyst''.
  
[catalyst-hd234k]
+
{{Nota|In seguito alle istruzioni per ogni tipo di installazione possibile, si troverà una sezione che tratta la configurazione che dovrà essere seguita a prescindere dal metodo scelto per l'installazione.}}
<nowiki> Server = </nowiki> http://catalyst.apocalypsus.net/repo/catalyst-hd234k/$arch
+
  
Su AUR, tale driver ha il nome di {{aur|catalyst-total-hd234k}}.
+
===Installare i driver===
}}
+
====Installazione da [community]====
 +
Questa è la via più semplice in quanto non richiede compilazioni, repository di terze parti e il [[DKMS]] si occuperà in modo automatico di ricostruire il module del kernel ogni qual volta questo riceve un aggiornamento. Se tale repository contiene tutto quello di cui si ha bisogno, questa è sicuramente la via maestra da seguire. Sarà infatti sufficiente installare tramite [[pacman (Italiano)|pacman]] i pacchetti: {{pkg|catalyst-dkms}} e {{pkg|catalyst-utils}}.
  
{{Nota|
+
Assicurarsi di aver installato anche il pacchetto {{pkg|linux-headers}}.
'''News: Catalyst 12.6 legacy beta'''
+
  
- '''supporto SOLO a Radeon HD 2xxx 3xxx 4xxx'''
+
{{Nota|Pacman potrebbe chiedere se si vuole rimuovere '''libgl'''. In tal caso rispondere affermativamente.}}
 +
{{Nota|Se si usa systemd, abilitare il service di DKMS. Per informazioni dettagliate sull'utilizzo dei service: [[Systemd (Italiano)|Systemd]].}}
  
- supporto kernel 3.4.
+
Se si usa Arch 64 bit e si necessita del supporto Open GL a 32 bit sarà necessario installare il pacchetto: {{pkg|lib32-catalyst-utils}} presente in [multilib].
  
- supporto xorg-server 1.12.
+
====Installazione dal repository non ufficiale====
 +
Se i pacchetti che servono non sono presenti nel repository [community], la via più semplice è l'utilizzo del repository non ufficiale mantenuto dall'utente ViOlO. I pacchetti qui presenti sono firmati quindi il loro utilizzo è considerabile sicuro. Vi0L0 è responsabile di molti pacchetti che possono aiutare parecchio durante la configurazione di Catalyst su Arch Linux.  
  
- inclusi binari OpenCL per SDK.}}
+
I repositories sono due:
 
+
*[catalyst]; per schede Radeon HD >= 5xxx;
{{Nota|
+
*[catalyst-hd234k]; per schede Radeon HD <= 4xxx.
'''News: Catalyst 12.6 stabile''':
+
{{Attenzione|Il driver Legacy non supporta Xorg 1.13 per ora. Il supporto dovrebbe arrivare da AMD in un secolo o due. Se si deve usare questo driver sarà necessario installare una versione vecchia di Xorg. Vedere la sezione [[#Repository xorg-server]] per maggiori informazioni}}
 
+
Per abilitare uno di questi repositories è necessario editare il file {{ic|/etc/pacman.conf}} e aggiungere SOPRA ogni altro repository:
- '''<nowiki>supporto solo a Radeon HD >= 5xxx</nowiki>'''
+
Per [Catalyst]:
 
+
  [catalyst]
- supporto al 3.4 kernel (attraverso delle patches);
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/catalyst/$arch</nowiki>
 
+
Per [Catalyst hd234k]:
- supporto a xorg-server 1.12;
+
[catalyst-hd234k]
 
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/catalyst-hd234k/$arch</nowiki>
- i binari di OpenCL per SDK sono inclusi;
+
Ora è necessario aggiungere [[User:Vi0L0|la GPG key di Vi0L0]]:
 
+
# pacman-key --keyserver pgp.mit.edu --recv-keys 0xabed422d653c3094
- supporto a GNOME3, che ora dovrebbe non avere i più problemi delle vecchie versioni di Catalyst;
+
# pacman-key --lsign-key 0xabed422d653c3094
 
+
Ora sincronizzare i database, aggiorare e installare {{pkg|catalyst-dkms}} e {{pkg|catalyst-utils}}:
- direct rendering di KDE funziona senza tearing.
+
}}
+
 
+
I pacchetti necessari per usare i driver Catalyst sono quasi tutti presenti su [[AUR (Italiano)|AUR]] (per maggiori dettagli [[Arch_User_Repository_(Italiano)#Installare_i_pacchetti_da_AUR|Installare da AUR]]) e quasi tutti ''[*]'' sul repository non ufficiale [[#.5Bcatalyst.5D_repository|[catalyst]]].
+
 
+
Per installare il driver ATI fglrx sul pacchetto del kernel {{ic|linux}}, è necessario installare: {{AUR|catalyst}} (driver per il kernel stock) più {{AUR|catalyst-utils}} (librerie fondamentali) oppure {{AUR|catalyst-total}}.
+
 
+
''[*]'' catalyst-total è presente SOLO su AUR ed è il modo più veloce per installare i driver in questione sul proprio sistema.
+
 
+
Se il sistema che si sta utilizzando è '''x86_64''' e si vuole il supporto 32-bit per OpenGL, installare il pacchetto {{AUR|lib32-catalyst-utils}}, dopo essersi assicurati di aver abilitato il repository [multilib] in /etc/pacman.conf.
+
NOTA: se avete installato il pacchetto {{AUR|catalyst-total}} non sara necessario installare anche il pacchetto {{AUR|lib32-catalyst-utils}}.
+
 
+
Notare che esistono '''ulteriori pacchetti''' che potrebbero tornare molto utili, ognuno di loro può '''rimpiazzare il pacchetto catalyst''' e fornire il modulo fglrx in caso si abbiano '''diversi kernel'''  sul proprio sistema. Questi pacchetti sono:
+
 
+
- '''catalyst-generator''' - in grado di generare automaticamente il modulo fglrx;
+
 
+
- '''catalist-hook'''  - hook per mkinitcpio in grado di rigenerare il modulo fglrx a ogni aggiornamento del kernel;
+
 
+
- '''catalyst-daemon''' - in grado di aggiornare il modulo fglrx a ogni aggiornamento del kernel (funziona tramite init script).
+
Maggiori dettagli nella sezione [[#strumenti|strumenti]].
+
 
+
{{Nota| Pacman potrebbe chiedere se si desidera rimuovere '''libgl''', rispondere affermativamente.}}
+
 
+
A installazione ultimata sarà necessario [[#Configurazione|creare o configurare]] il file {{ic|xorg.conf}}
+
 
+
{{Nota| Con '''ogni aggiornamento''' dei driver catalyst è necessario rimuovere il file '''amdpcsdb''' in questo modo:
+
killare/stoppare X ed il vostro DE, rimuovere {{ic|/etc/ati/amdpcsdb}}, avviare X od il vostro de, e configurare {{Ic|amdcccle}}.}}
+
{{Warning|
+
*Assicurarsi che la propria scheda grafica sia '''R6xx''' ('''HD2xxx''') o più recente altrimenti il driver non funzionerà. Se si provasse ad abilitarlo ugualmente si otterrebbe un errore.
+
 
+
*Sembra che i Catalyst 9.10-10.11 non supportino il chipset delle schede madri nForce4.
+
}}
+
{{Warning|Ad ogni aggiornamento del kernel i pacchetti installati da AUR riguardanti Catalyst vanno aggiornati o reinstallati. Se questo non verrà fatto X restituirà un errore e non si avvierà. I pacchetti catalyst-hook e catalyst-daemon aiuteranno l'utente automatizzando questo processo. Per maggiori dettagli leggere [[#Ricompilazione_Automatica_del_modulo_fglrx_ad_ogni_aggiornamento_del_kernel|questa sezione]].}}
+
 
+
=== Installare da AUR ===
+
 
+
I pacchetti [[AUR (Italiano)|AUR]] citati nella sezione [[#Installazione|installazione]] sono:
+
 
+
*{{aur|catalyst}} - driver per il kernel stock
+
 
+
*{{aur|catalyst-utils}} - librerie fondamentali
+
 
+
*{{aur|lib32-catalyst-utils}} - supporto 32-bit OpenGL per sistemi x86_64
+
 
+
*{{aur|catalyst-total}} - catalyst-hook + catalyst-utils + lib32-catalyst-utils
+
 
+
*{{aur|catalyst-generator}} - Generatore del pacchetto catalyst-{kernver} con il modulo fglrx integrato
+
 
+
*{{aur|catalyst-hook}} - Autoricompila il modulo fglrx a ogni aggiornamento del kernel (mkinitcpio's hook)
+
 
+
*{{aur|catalyst-daemon}} - Autoricompila il modulo fglrx ad ogni aggiornamento del kernel (init script)
+
 
+
==== Kernel personalizzati ====
+
{{Note| catalyst-generator è in grado di creare il pacchetto catalyst-{kenver} senza l'intervento manuale dell'utente. Questa sezione però rimarrà qui perchè potrebbe comunque essere utile.}}
+
 
+
Per installare catalyst su un kernel modificato, occorrerà compilare un proprio pacchetto {{ic|catalyst-$kernel}} contenente il modulo del kernel compilato specificamente per il proprio kernel.
+
 
+
Se non si ha esperienza o confidenza compilando pacchetti, consulatare la sezione [[Arch Build System (Italiano)|ABS]] del wiki per una guida esaustiva sul metodo da impiegare.
+
 
+
''' Scaricare il PKGBUILD '''
+
 
+
Scaricare per prima cosa {{ic|PKGBUILD}} e {{ic|catalyst.install}} da [https://aur.archlinux.org/packages.php?ID=29111 AUR].
+
 
+
''' Modifica di PKGBUILD e compilazione '''
+
 
+
Qui bisognerà apportare queste tre modifiche:
+
 
+
1. Cambiare {{ic|1=pkgname=catalyst}} in {{ic|1=pkgname=catalyst-KERNEL_NAME}} dove KERNEL_NAME è il nome che si preferisce (es. IlMioBelKernel)
+
 
+
2. Eliminare {{ic|linux}} dalla lista delle dipendenze.
+
 
+
3. Infine compilare ed installare il pacchetto.  ({{Ic|makepkg -i}} o {{Ic|makepkg}} seguito da {{Ic|pacman -U pkgname.pkg.tar.gz}}
+
 
+
{{Note| Avendo installati diversi kernel, bisognerà installare i drivers catalyst su tutti. Non andranno in conflitto tra loro.}}
+
 
+
=== Repository non ufficiale ===
+
Esistono alcuni repository non ufficiali con i quali si può facilmente reperire gli ultimi (o anche i più vecchi) driver Catalyst, con tutte le librerie e le dipendenze necessarie per l'uso. Se si vuole conoscere che pacchetti sono presenti sul repository bisogna innanzitutto aggiungere il repositiry a {{ic|/etc/pacman.conf}}, sincronizzare il database con ''#pacman -Syy'' e lanciare un:
+
 
+
  # pacman -Sl catalyst
+
 
+
==== Il repository [catalyst] ====
+
Questo repository contiene ''le ultime release stabili del driver'' più altri pacchetti addizionali. I pacchetti qui presenti ''sono compilati per il kernel stock'' installabile da [core] e sono aggiornati abbastanza di frequente.  
+
 
+
Per usare il repo è necessario:
+
 
+
1.) Editare {{ic|/etc/pacman.conf}} per aggiungere queste due righe sopra [core] e [extra]:
+
{{bc|1=
+
[catalyst]
+
Server = <nowiki> http://catalyst.apocalypsus.net/repo/catalyst/$arch</nowiki>
+
}}
+
 
+
2.) Forzare la sincronizzazione e aggiornare:
+
 
  # pacman -Syy
 
  # pacman -Syy
 
  # pacman -Su
 
  # pacman -Su
 +
# pacman -S catalyst-dkms e catalyst-utils
  
3.) Installare Catalyst:
+
{{Nota|Pacman potrebbe chiedere se si vuole rimuovere '''libgl'''. In tal caso rispondere affermativamente.}}
# pacman -S catalyst catalyst-utils
+
Se si usa Arch 64 bit e si necessita del supporto Open GL a 32 bit sarà necessario installare il pacchetto: {{pkg|lib32-catalyst-utils}} presente in [multilib].
  
'''Nota''': se si sta aggiornando da catalyst =< 10.8, i punti 2.) e 3.) vanno eseguiti in questo modo:
+
Questi repositories contengono anche altri pacchetti utili. Questi possono ''rimpiazzare'' Catalyst e provvedono a rigenerare il modulo fglrx in modo automatico
{{bc| # pacman -Sy
+
*Catalyst-generator; questo pacchetto rigenera automaticamente il modulo fglrx - soluzione efficacie compatibile con la filosofia KISS. La rigenerazione può anche essere effettuata manualmente.
# pacman -Rdd catalyst
+
*Catalyst-hook; HOOK per [[mkinitcpio (Italiano)|mkinitcpio]] per rigenera il modulo fglrx ad ogni aggiornamento del kernel. '''Stesso comportamento di catalyst-dkms presente in [community]'''.
# pacman -S catalyst catalyst-utils}}
+
*Catalyst-daemon; rigenera il modulo tramite un demone per Initscript. '''DEPRECATO SE SI USA SYSTEMD'''.
 +
Per ulteriori informazioni leggere la sezione [[#Strumenti]] di questo articolo. Inoltre questi repositories contengono i pacchetti '''xvba-video''' per abilitare l'accelerazione video come descritto in [[#Accelerazione video]] e '''AMDOverdriveCtrl''' che è una GUI per controllare over- e downclock. Vedere [[#Strumenti per la frequenza GPU/Mem, Temperatura, Velocità ventole, Overclock utilities]].
  
 +
====Installazione da AUR====
 +
Il terzo metodo per ottenere Catalyst, come detto è la compilazione tramite [[AUR (Italiano)|AUR]]. Nel caso si voglia compilare i pacchetti in modo specifico per il proprio sistema questa è la via da seguire. Va ricordato che ad ogni aggiornamento i driver vanno ricompilati, quindi è il metodo che richiede più sforzi da parte dell'utente finale.
 +
{{Attenzione|Se si sceglie di installare Catalyst tramite AUR sarà necessario ricompilare il pacchetto ad ogni aggiornamento del kernel. In caso contrario X potrebbe fallire l'avvio.}}
 +
{{Attenzione|Il driver Legacy non supporta Xorg 1.13 per ora. Il supporto dovrebbe arrivare da AMD in un secolo o due. Se si deve usare questo driver sarà necessario installare una versione vecchia di Xorg. Vedere la sezione [[#Repository xorg-server]] per maggiori informazioni.}}
 +
Tutte le informazioni scritte nel paragrafo precedente riguardante il repository non ufficiale di Vi0L0 sono valide anche per i pacchetti AUR:
 +
* {{AUR|Catalyst}};
 +
* {{AUR|Catalyst-utils}};
 +
* {{AUR|lib32-catalyst-utils}};
 +
* {{AUR|Catalyst-generator}};
 +
* {{AUR|Catalyst-hook}};
 +
* {{AUR|Catalyst-daemon}}.
  
4.) Non dimenticare di preparare il file {{ic|/etc/X11/xorg.conf}} per Catalyst! Usare {{Ic|aticonfig --initial}} se il file non esiste ancora.
+
AUR inoltre contiene pacchetti che '''non''' si trovano su alcun repositories. Questi pacchetti sono:
 +
* {{AUR|Catalyst-total-hd234k}};
 +
* {{AUR|Catalyst-total}};
 +
* {{AUR|Catalyst-test}};
 +
* {{AUR|Lib32-catalyst-test}};
 +
* {{AUR|Catalyst-total-pxp}};
  
5.) Riavviare.
+
Il pacchetto ''Catalyst-total'' serve a semplificare il più possibile la vita all'utente in quanto un solo pacchetto fornisce: driver, kernel utilities, utilities 32 bit e l'hook per mkinitcpio (come il pacchetto {{AUR|catalyst-hooks}}).
  
Per gli utenti x86_64 il pacchetto ''lib32-catalyst-utils'' è necessario a lanciare applicazioni che sfruttano OpenGL a 32-bit e i giochi su Wine.
+
''Catalyst-total-pxp'' serve per compilare Catalyst con il supporto sperimentale a powerXpress.
  
Il repository in più contiene anche i pacchetti:
+
Per maggiori informazioni circa l'utilizzo di AUR, consultare la relativa pagina wiki: [[AUR (Italiano)|AUR]].
* '''xvba-video''' necessario per l'accelerazione video. Per info visitare [[#Accelerazione video|questa sezione]].
+
* '''catalyst-daemon'''
+
* '''catalyst-hook'''
+
* '''catalyst-generator'''
+
* '''[https://aur.archlinux.org/packages.php?ID=26687 xorg-server-catalyst-maximize-fix]. Questo pacchetto elimina il problema con '''massimizzazzioni e ridimensionamento''' delle finestre. Usarlo principalmente se si è scelto di [https://wiki.archlinux.org/index.php/ATI_Catalyst_(Italiano)#Catalyst_10.6.2F10.7.2F10.8.2F10.9_:_artefatti_quadrati_neri.2C_grigi_e_bianchi_in_firefox.2Fthunderbird disabilitare l'architettura di accelerazione 3d di ATI]. Per rimuovere '''xorg-server''' in favore di xorg-server-catalyst-maximize-fix:
+
  
# pacman -Rdd xorg-server xorg-common
+
====Installazione direttamente da AMD====
 
+
{{Attenzione| Utilizzare l'installer da ati.com/amd.com NON è consigliato per utenti inesperti! Farlo potrebbe causare conflitti di file e malfunzionamenti di X. ''È di fondamentale importanza'' avere familiarità con l'avvio da riga di comando per usare questo installer.}}
# pacman -S xorg-server-catalyst-maximize-fix
+
 
+
==== Repositori d'archivio ====
+
 
+
Ci sono alcuni repository d'archivio agli indirizzi [http://catalyst.apocalypsus.net/repo/catalyst http://catalyst.apocalypsus.net/repo/catalyst] o [http://catalyst.apocalypsus.net/repo/catalyst-hd234k http://catalyst.apocalypsus.net/repo/catalyst-hd234k],
+
si prega di esplorare questi siti alla ricerca di file con estensione *.db, se si dovessero trovare repository catalyst interessanti istruire pacman al loro utilizzo
+
Ad esempio, per il file catalyst-hd234k-12.4.db, la voce all'interno di {{ic|pacman.conf}} dovrebbe essere simile a:
+
{{bc|1=
+
[catalyst-hd234k-12.4]<nowiki>
+
Server = http://catalyst.apocalypsus.net/repo/catalyst-hd234k/$arch</nowiki>}}
+
 
+
È anche possibile prendere visione dei PKGBUILD catalyst d'archivio, ed utilizzarli per compilare pacchetti catalyst che si adattino alle proprie esigenze, possono essere prelevati dall'archivio tar.gz a [http://catalyst.apocalypsus.net/tarball questo indirizzo].
+
 
+
==== Repository xorg-server ====
+
 
+
'''[xorg112]'''
+
 
+
Catalyst al momento non supporta xorg-server 1.13
+
 
+
Per usare questo repo, editare il file {{ic|/etc/pacman.conf}} e aggiungere queste righe al di sopra degli altri repository:
+
 
+
[xorg112]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg112/$arch</nowiki>
+
 
+
'''[xorg111]'''
+
 
+
I driver Catalyst < 12.6 non supportano xorg-server 1.12 presente ora in [[Official Repositories (Italiano)|[extra]]].
+
 
+
Per usare questo repository si dovrà editare il file {{ic|/etc/pacman.conf}} e aggiungere queste righe '''in cima a tutti gli altri repositories''':
+
+
{{bc|1=
+
[xorg111]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg111/$arch</nowiki>
+
}}
+
 
+
'''[xorg110]'''
+
 
+
Questo repository contiene i pacchetti di xorg-serve 1.10, con i catalyst in versione < 11.11, che non supportano xorg-server 1.11.
+
 
+
Per usare questo repo aggiungere in {{ic|/etc/pacman.conf}} :
+
 
+
{{bc|1=
+
[xorg110]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg110/$arch</nowiki>
+
}}
+
 
+
'''[xorg19]'''
+
 
+
Catalyst <= 11.3 non supporta '''xorg-server >= 1.10''' (verifica effettuata anche con la flag IgnoreAbi) - per questo motivo è stato creato il repo [xorg19] con xserver 1.9 ed altri pacchetti aggiuntivi.
+
Per usarlo è necessario modificare {{ic|/etc/pacman.conf}} ed aggiungere queste righe in cima a tutti gli altri repository:
+
 
+
{{bc|1=
+
[xorg19]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg19/$arch</nowiki>
+
}}
+
 
+
'''[xorg18]'''
+
 
+
I driver Catalyst inferiori alla versione 10.10 '''non supportano versioni >= xorg-server 1.9''' (verificato anche con il flag IgnoreAbi) - per questa ragione esiste il repositorio [xorg18] con il pacchetto xserver 1.8 e alcuni pacchetti addizionali.
+
Per usufruire del repositorio  bisogna editare il file {{ic|/etc/pacman.conf}} ed aggiungere le seguenti righe in cima alla lista dei repository:
+
 
+
{{bc|1=
+
[xorg18]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg18/$arch</nowiki>
+
}}
+
 
+
'''[xorg17]'''
+
 
+
Supportato dai Catalyst 10.4
+
 
+
Il repository [xorg17] contiene i pacchetti per xserver 1,7, '''usare solo''' se si verificano problemi con xserver più recenti. Il repository contiene i pacchetti [http://catalyst.apocalypsus.net/tarball/xorg-server-1.7-backclear.tar.gz xorg-server-backclear] (con patch backclear) e [https://aur.archlinux.org/packages.php?ID=35686 xorg-server-1.7-catalyst-maximize-fix] (con la patch di Fedora). Entrambe le patch correggono problemi con '''massimizzazione/ridimensionamento''' ma lo fanno in modo diverso (scegliere quello più adatto). Per rimuovere xorg-server e installare xorg-server-backclear digitare:
+
 
+
# pacman -Rdd xorg-server
+
# pacman -S xorg-server-backclear
+
Comportarsi in maniera analoga con xorg-server-1.7-catalyst-maximize-fix
+
 
+
Per usare il repository [xorg17] aggiungere le seguenti righe in alto, prima di tutti gli altri repository in {{ic|/etc/pacman.conf}}:
+
 
+
{{bc|1=
+
[xorg17]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg17/$arch</nowiki>
+
}}
+
 
+
'''[xorg16]'''
+
 
+
Il repository [xorg16] contiene i pacchetti del xserver 1.6, utilizzare solo se si hanno problemi con versioni di xserver più recenti.
+
 
+
{{bc|1=
+
[xorg16]
+
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg16/$arch</nowiki>
+
}}
+
 
+
===Strumenti===
+
 
+
==== catalyst-generator ====
+
 
+
[https://aur.archlinux.org/packages.php?ID=34773 catalyst-generator] è un pacchetto in grado di costruire e installare i moduli ''fglrx'' generando un pacchetto fruibile da pacman.
+
Il suo scopo è generare il pacchetto '''catalyst-{kernver}''' utilizzando [[makepkg_(Italiano)|makepkg]] e installarlo con l'ausilio di [[pacman_(Italiano)|pacman]]; {kernver} è la versione del kernel con il quale è stato compilato il pacchetto, ad esempio : il pacchetto catalyst-2.6.35-ARCH è stato compilato sul kernel 2.6.35-ARCH .
+
 
+
Per compilare ed installare il pacchetto catalyst-{kernver} per il kernel avviato come '''utente senza privilegi''' (metodo sicuro) procedere in questo modo:
+
{{Ic|catalyst_build_module}}
+
Vi verrà chiesta la password di root per procedere all'installazione.
+
É '''importante eseguire questo comando dopo l'installazione di catalyst-generator'''.
+
 
+
Questo pacchetto '''non supporta la funzione di auto-compilazione''', ciò comporta che dopo un aggiornamento del kernel ''' dovete aggiornare manualmente''' il pacchetto catalyst-{kernver}, senza riavviare il sistema procedere in questo modo:
+
 
+
1.) Con i privilegi di root:
+
# catalyst_build_module remove
+
 
+
Questo comando eliminerà i pacchetti {{ic|<nowiki>catalyst-{kernver}</nowiki>}} non utilizzati 
+
 
+
2.) poi come utente senza privilegi:
+
$ catalyst_build_module ''nuova-versione-kernel''
+
dove ''nuova-versione-kernel''''è la versione del kernel che avete appena aggiornato/installato, Es:
+
catalyst_build_module 2.6.36-ARCH
+
oppure:
+
catalyst_build_module all
+
Il quale compilerà il pacchetto catalyst-{kernver} per tutti i kernel presenti.
+
 
+
Se volete rimuovere {{Ic|catalyst-generator}} -  si '''consiglia''' di eseguire da root questo comando:
+
catalyst_build_module remove_all
+
'''prima di rimuovere catalyst-generator''' (con questo comando si
+
elimineranno tutti i pacchetti catalyst-{kernver} presenti nel sistema)
+
 
+
catalyst-generator non è in grado di rimuovere tutti i pacchetti catalyst-{kernver} automaticamente mentre lo si rimuove perché non ci può essere ad esempio più di una istanza di pacman in esecuzione. Se si dimentica di dare il comando {{Ic|catalyst_build_module remove_all}} prima di digitare {{Ic|pacman -R catalyst-generator}} - catalyst-generator vi chiederà quale pacchetto catalyst-{kernver} si dovrà rimuovere dopo la rimozione di catalyst-generator.
+
 
+
{{Nota| Se si visualizza un errore del tipo:
+
 
+
'''WARNING:''' Package contains reference to $srcdir
+
 
+
'''WARNING:''' '.pkg' is not a valid archive extension.
+
 
+
mentre si compila il pacchetto catalyst-{kernver} - non c'è da preoccuparsi, è un normale avvertimento.
+
}}
+
 
+
====Ri-compilazione automatica del modulo fglrx con ogni aggiornamento del kernel====
+
 
+
{{Nota| Lo script catalyst_build_module, qui riportato,sta lavorando sui file dei moduli fglrx, non sui pacchetti di pacman. La maggior parte delle opzioni dello script catalyst_build_module menzionate nella sezione catalyst-generator sono supportate, digitare '''catalyst_build_module help''' per conoscerle esattamente}}
+
Dalla versione catalyst 10.9 questa funzionalità è stata rimossa dal pacchetto a causa di alcuni problemi, vedere [https://bbs.archlinux.org/viewtopic.php?pid=825546#p825546 qui] e [https://bbs.archlinux.org/viewtopic.php?pid=825785#p825785 qui].
+
 
+
Questo metodo può essere molto utile se si utilizza più di un kernel, o non si vuole ricostruire un pacchetto catalyst con ogni aggiornamento del kernel.
+
Se si vuole utilizzare tale funzionalità tramite un ''hook'' con l'ausilio di mkinitcpio, il pacchetto di riferimento è  [https://aur.archlinux.org/packages.php?ID=40834 catalyst-hook].
+
 
+
Inoltre vi è un nuovo pacchetto in grado di fornire una funzionalità simile chiamato [https://aur.archlinux.org/packages.php?ID=40832 catalyst-daemon].
+
 
+
Si prega di notare che tali pacchetti forniscono solo gli script di ri-compilazione e file di origine necessari per costruire il modulo fglrx, e dipendono dal pacchetto catalyst-utils.
+
 
+
La compilazione automatica è abilitata di default dopo l'installazione del pacchetto selezionato, se volete disattivarlo basta eseguire questo comando come root:
+
# catalyst_build_module autooff
+
È anche possibile attivarla con:
+
# catalyst_build_module auto
+
 
+
catalyst_build_module memorizza tutte le informazioni relative alla compilazione/installazione del modulo ''fglrx'' in un file log reperibile in {{ic|/var/log/catalys-install.log}}.
+
 
+
 
+
===== catalyst-hook =====
+
 
+
Con '''catalyst-hook''' la funziona di ricompilazione automatica è affidata a '''fglrx hook''' tramite [[mkinitcpio (Italiano)|mkinitcpio]] con il quale si forza l'aggiornamento del pacchetto '''linux-headers'''.
+
 
+
Questo hook richiamerà il comando '''catalyst_build_module''' per aggiornare il modulo fglrx alla versione del proprio nuovo kernel, ed in aggiunta lancerà il comando ''catalyst_build_module remove'' per rimuovere i moduli fglrx non più necessari.
+
 
+
{{Nota| Se si utilizza questa funzionalità è '''importante''' controllare il processo di installazione di '''linux''' (o qualsiasi altro kernel). fglrx-hook vi informerà dell'esito positivo.}}
+
{{Nota| Se state utilizzando un '''kernel custom''' (personalizzato) e si utilizza un file di configurazione di mkinitcpio '''non standard''' (Es. il linux-zen utilizza {{ic|/etc/mkinitcpio-zen.conf}}), bisogna aggiungere manualmente '''fglrx''' alla stringa ''HOOKS'' nel file di configurazione per abilitare l'auto-ricompilazione all'aggiornamento del kernel.}}
+
{{Nota|Se si sta usando un kernel non stock, è necessario rimuovere ''linux-header'' da SyncFirst in {{ic|/etc/pacman.conf}} dopo aver eseguito 'catalyst_build_module auto'.}}
+
 
+
===== catalyst-daemon =====
+
 
+
Con '''catalyst-daemon''' la funzionalità di 'ricompilazione automatica' è abilitata da un ''init script'' chiamato '''autofglrx''', il quale viene lanciato ad ogni avvio del sistema e controlla se il kernel è stato aggiornato. Nel caso si verificasse che il kernel è stato aggiornato, esso ricostruirà il modulo fglrx. Se il kernel non è stato aggiornato, allora si incarica di caricare l'ultimo modulo fglrx ricostruito (tutta questa operazione dura soltanto  20ms su processori a 2.4 GHz).
+
 
+
La funzione '''check''' di ''Autofglrx'' effettua un confronto del tempo di boot del kernel standard (fornito da `uname -v') con il tempo di avvio di un kernel in cui è stato costruito il modulo fglrx. E 'in grado di fare tale comparazione perché aggiunge l'informazione `uname -v` per la descrizione del modulo fglrx mentre ricompila il modulo.
+
 
+
La funzione '''build''' di ''autofglrx'' chiamerà {{Ic|catalyst_build_module}} per costruire il modulo e {{Ic|catalyst_build_module remove}} per eliminare i moduli fglrx inutili e più vecchi.
+
 
+
{{Nota|Quando si installa autofglrx, esso aggiungerà il demone all'inizio della lista DAEMONS nel file {{ic|/etc/rc.conf}}. È possibile tranquillamente spostarlo a seconda delle esigenze, ma deve essere posto sempre prima di un desktop manager o di demoni di X, e '''non deve essere avviato in background''' (@) poiché non implementa tale funzionalità.}}
+
{{Nota|Se si tanno utilizzando '''flags di compilazione''' personali e si hanno problemi con il demone, si aggiungano tali flags nel file {{ic|/usr/bin/catalyst_build_module}}.}}
+
 
+
=== Installer ufficiale ATI/AMD ===
+
 
+
 
+
{{Attenzione| Utilizzare l'installer da ati.com/amd.com NON è consigliato per utenti inesperti! Farlo potrebbe causare conflitti di file e malfunzionamenti di X. ''È di fondamentale importanza'' avere familiarità con l'avvio da riga di comando per usare questo installer.}}.
+
 
{{Nota|Se si è tentata una installazione manuale con l'installer ufficiale, e si scopre che non funziona più nulla correttamente, dovrebbe essere presente uno script di disinstallazione in /usr/share/ati/fglrx-uninstall.sh}}
 
{{Nota|Se si è tentata una installazione manuale con l'installer ufficiale, e si scopre che non funziona più nulla correttamente, dovrebbe essere presente uno script di disinstallazione in /usr/share/ati/fglrx-uninstall.sh}}
 
   
 
   
Line 382: Line 123:
 
7.)  Controllare il file {{ic|/usr/share/ati/fglrx-install.log}} per vedere il log dei problemi.  Potrebbe anche esistere il file {{ic|/lib/modules/fglrx/make.{ker_version}.log}}
 
7.)  Controllare il file {{ic|/usr/share/ati/fglrx-install.log}} per vedere il log dei problemi.  Potrebbe anche esistere il file {{ic|/lib/modules/fglrx/make.{ker_version}.log}}
  
{{Nota|Se si modifica a mano il "make script" salvarlo con un nome differente altrimenti un'ipotetica disinstallazione dei driver potrebbe non andare a buon fine}}
+
{{Nota|Se si modifica a mano il "make script" salvarlo con un nome differente altrimenti un'ipotetica disinstallazione dei driver potrebbe non andare a buon fine.}}
  
8.) In fine provare {{ic|# aticonfig}}. A partire da Catalyst 11.7 si assume che {{ic|/etc/X11/xorg.conf}} esista.
+
===Configurazione dei driver===
 +
Dopo aver correttamente installato i pacchetti necessari con il proprio metodo preferito, sarà necessario configurare X in modo che lavori con i Catalyst, si dovrà essere certi che i moduli necessari vengano caricati al boot e si rendererà fondamentale disabilitare il [[KMS|kernel mode setting]].
  
{{Nota| Se si vuole aderire al nuovo xorg.conf.d: aggiungere a {{ic|aticonfig}} l'opzione ''--output'' che adatterà la sezione Device di {{ic|/etc/X11/xorg.conf.d/20-radeon.conf}}. Lo svantaggio è che molte opzioni di {{ic|# aticonfig}} sono legate esclusivamente a xorg.conf, saranno quindi inutilizzabili.}}
+
====Configurare X====
 
+
Per la configurazione di X si dovrà creare il file {{ic|xorg.conf}}. Catalyst porta con se uno strumento molto potente: {{ic|aticonfig}} che è in grado di generare, modificare e amministrare tale file. Ogni aspetto della propria scheda video inoltre è configurabile tramite {{ic|/etc/ati/amdpcsdb}}. Per la lista completa delle opzioni del comando {{ic|aticonfig}} eseguire:
== Configurazione ==
+
  # aticonfig --help | less
=== Prima di riavviare ===
+
{{Attenzione|Si utilizzi l'opzione {{ic|--output}} in modo da generare un file di prova e se ne verifichi il contenuto prima di copiarlo all'interno di {{ic|/etc/X11/xorg.conf}}, in quanto la presenza di quest'ultimo renderà inutilizzate le impostazioni presenti nei file all'interno della directory {{ic|/etc/X11/xorg.conf.d}}.}}
Ci sono tre cose da controllare in Arch prima di riavviare il sistema per evitare errori di X:
+
Ora, per iniziare la configurazione, se si ha un solo monitor, eseguire:
*[[#Configurare Xorg]] attraverso /etc/X11/'''xorg.conf'''
+
# aticonfig --initial
*[[#Caricamento dei moduli]] attraverso /etc/'''rc.conf''' o /etc/modules-load.d/'''<module>.conf'''
+
Se si hanno due monitor invece si può eseguire il comando qui sotto. Si noti però che lanciare tale comando farà si che i due monitor saranno configurati come "dual head", con il secondo schermo sopra il primo:
*[[#Disabilitare mode setting]] attraverso /boot/grub/'''menu.lst''' o /etc/default/'''grub'''
+
# aticonfig --initial=dual-head --screen-layout=above
 
+
{{Nota| AGGIUNGERE NOTA}}
==== Configurare Xorg ====
+
Ora è possibile comparare il file {{ic|xorg.conf}} con un [[Xorg_(Italiano)#Xorg.conf_di_esempio|file d'esempio}}.  
 
+
ATI fornisce lo strumento {{Ic|aticonfig}} per modificare un file {{ic|xorg.conf}} e configurare essenzialmente ogni aspetto della scheda. Per una lista completa delle opzioni di {{Ic|aticonfig}}, eseguire:
+
 
+
  $ aticonfig --help | less
+
 
+
{{Attenzione| Si utilizzi l'opzione {{ic|--output}} in modo da generare un file di prova e se ne verifichi il contenuto prima di copiarlo all'interno di /etc/X11/xorg.conf, in quanto la presenza di quest'ultimo renderà inutilizzate le impostazioni presenti nei file all'interno della directory /etc/X11/xorg.conf.d}}
+
 
+
Un semplice esempio di {{ic|aticonfig}}:
+
 
+
      1. Impostare fglrx per la prima volta.
+
          Single head :    aticonfig --initial --input=/etc/X11/xorg.conf
+
          Dual head   :   aticonfig --initial=dual-head --screen-layout=above
+
                            Questo comando genererà un file di configurazione
+
                            dual head con il secondo schermo posizionato sopra
+
                            il primo schermo.
+
 
+
Utilizzare una di queste due linee in funzione della propria configurazione.
+
  
Controllare il file {{ic|xorg.conf}} generato prima di copiarlo in {{ic|/etc/X11/xorg.conf}} ed eseguire {{Ic|startx}} o riavviare il sistema. Altrimenti, probabilmente si otterrà uno schermo vuoto e non si sarà più in grado di utilizzare il sistema. I file di configurazione generati nei passi precedenti non sono a volte corretti. Se si vuole, è possibile comparare con uno dei [[Xorg_(Italiano)#Xorg.conf_di_esempio|File Xorg.conf di esempio]] elencati nella pagina wiki di Xorg.
+
La nuova versione di Xorg, rileva automaticamente molte delle opzioni specificate al suo avvio. Sarà quindi necessario esplicitarne solo poche in caso di cambiamenti di versione.
  
Qui c'è un esempio (con note) '''per riferimento'''. le voci marcate con '#' dovrebbero essere richieste, le voci marcate con '##' potrebbero essere necessarie:
+
Qui è presente un file con delle note per un confronto veloce. Le voci dopo '#' potrebbero essere necessarie, quelle dopo '##' sono fondamentali.
 
{{bc|1=
 
{{bc|1=
 
Section "ServerLayout"
 
Section "ServerLayout"
Line 456: Line 181:
 
}}
 
}}
  
==== Caricamento dei moduli ====
+
{{Nota|Dopo ogni aggiornamento di Catalyst sarà necessario rimuovere '''amdpcsdb''' in questo modo: killare X, rimuovere {{ic|/etc/ati/amdpcsdb}}, avviare X e lanciare {{ic|amdpcsdb}}. }}
 +
''Se si desiderano maggiori informazioni visitare questo [http://bbs.archlinux.org/viewtopic.php?id=57084 link].
  
Se si usa Initscript, editare {{ic|/etc/rc.conf}}:
+
====Caricare moduli al boot====
:*Rimuovere {{ic|radeon}} dalla stringa MODULES.
+
Questa parte della guida è diversa in base al sistema di init usato, systemd o sysvinit. In ogni caso, si dovrà blacklistare il modulo ''radeon'' in {{ic|/etc/modprobe.d/modprobe.conf}}. Per maggiori informazioni consultare la pagina [[Modprobe]]. '''Gli utenti che han scelto di installare Catalyst da [community] non dovranno fare niente, il modulo "radeon" viene blacklistato in automatico'''.
:*Aggiungere {{ic|fglrx}} alla stringa MODULES potrebbe essere opzionale se è già stato aggiunto a {{ic|/etc/mkinitcpio.conf}} (L'immagine di boot sarà ricostruita prima del reboot).
+
  
Se si usa [[Systemd (Italiano)|systemd]]:
+
=====Systemd=====
 +
*Disabilitare il caricamento del modulo {{ic|radeon}}. Se in qualche file nella directory {{ic|/etc/modules-load.d/}} è presente '''radeon''', rimuovere il file. Se in quel file sono presenti anche altri moduli, ovviamente rimuovere solo '''radeon'''.
 +
*Aggiungere {{ic|fglrx}} in una nuova riga di un file esistente in {{ic|/etc/modules-load.d/}} e crearne uno apposito.
  
:*Rimuovere o commentare {{ic|radeon}} se necessario in ogni file sotto la directory {{ic|/etc/modules-load.d}}.
+
=====Initscripts=====
 
+
{{Attenzione|Deprecato}}
:*Aggiungere {{ic|fglrx}} su una nuova riga di un file esistente in {{ic|/etc/modules-load.d}}, o crearne uno nuovo apposta.
+
Editare {{ic|/etc/rc.conf}} e sostituire {{ic|fglrx}} a {{ic|radeon}} nell'array MODULES.
 
+
{{Nota|Se si usa una scheda AGP aggiungere anche il modulo '''agp'''}}
Potrebbe in ogni caso appena citato, mettere in blacklist {{ic|radeon}} in {{ic|/etc/modprobe.d/modprobe.conf}} se {{ic|blacklist-fglrx.conf}} non dovesse esistere.
+
 
+
{{Nota|Se si possiede una scheda AGP aggiungere il modulo agp}}
+
  
 
==== Disabilitare mode setting ====
 
==== Disabilitare mode setting ====
Line 485: Line 209:
 
  # grub-mkconfig -o /boot/grub/grub.cfg
 
  # grub-mkconfig -o /boot/grub/grub.cfg
  
Riavviare!
+
Per [[Syslinux (Italiano)|Syslinux]], editare {{ic|/boot/syslinux/syslinux.cfg}} e aggiungere ''nomodeset'' alla riga {{ic|APPEND}}:
  
=== Controlli ===
+
APPEND root=/dev/sda2 ro ''nomodeset''
Si suppone che il login sia andato bene, in caso contrario [[#Risoluzione_problemi|consultare questa parte]].
+
 
Il comando per vedere se fglrx è stato caricato e sia correttamente attivo è:
+
====Controlli====
 +
Supponendo che il login sia andato bene, il comando per vedere se fglrx è stato caricato e sia correttamente attivo è:
 
  $ lsmod | grep fglrx
 
  $ lsmod | grep fglrx
 
  $ fglrxinfo   
 
  $ fglrxinfo   
Line 496: Line 221:
 
  $ glxinfo | grep direct
 
  $ glxinfo | grep direct
  
Se si riceve "direct rendering: yes" allora tutto è funzionante! Se il comando {{Ic|glxinfo}} non è trovato, si potrebbe aver bisogno di installare il pacchetto "mesa-demos".
+
Se si riceve "direct rendering: yes" allora tutto è funzionante! Se il comando {{Ic|glxinfo}} non è trovato, si potrebbe aver bisogno di installare il pacchetto {{pkg|mesa-demos}}.
 +
{{Nota|Come alternativa è possibile usare:
 +
$ fg_glxears
 +
per testare glxears}}
  
{{Attenzione| In alcune versioni recenti di Xorg, i percorsi delle librerie sono cambiati. Quindi, a volte '''libGL.so''' non può essere caricato correttamente anche se installato. Non dimenticare di controllare ciò se qualcosa non funziona. Leggere la sezione "Risoluzione dei problemi" per dettagli.}}
+
{{Attenzione| In alcune versioni recenti di Xorg, i percorsi delle librerie sono cambiati. Quindi, a volte {{ic|libGL.so}} non può essere caricato correttamente anche se installato. Non dimenticare di controllare ciò se qualcosa non funziona. Leggere la sezione "Risoluzione dei problemi" per dettagli.}}
 +
In caso di errori [[#Risoluzione_problemi|consultare questa sezione]].
  
=== Double Screen (Dual Head / Dual Screen / Xinerama) ===
+
===Kernel personalizzati===
 +
Per installare catalyst su un kernel modificato, occorrerà compilare un proprio pacchetto {{ic|catalyst-$kernel}} contenente il modulo del kernel compilato specificamente per il proprio kernel.
  
==== Introduzione ====
+
Se non si ha esperienza o confidenza compilando pacchetti, consulatare la sezione [[Arch Build System (Italiano)|ABS]] del wiki per una guida esaustiva sul metodo da impiegare.
{{Box RED| Prima di tutto:| bisogna sapere che non esiste una singola soluzione, le configurazioni possono essere diverse. È quindi necessario adattare questo paragrafo alle proprie esigenze. Non è da escludere che dovranno essere fatti più tentativi. '''Pertanto salvare il file {{ic|/etc/X11/xorg.conf}} attuale prima di iniziare ogni cambiamento. Sarebbe utile anche saper recuperare la vecchia configurazione da tty'''}}
+
  
* In questa sezione si vedrà come installare due schermi di diverse dimensioni su una sola scheda grafica con 2 differenti output (DVI + HDMI) usando la configurazione "Big desktop".
+
#Scaricare per prima cosa {{ic|PKGBUILD}} e {{ic|catalyst.install}} da [https://aur.archlinux.org/packages.php?ID=29111 AUR].
  
* La soluzione Xinerama ha degli inconvenienti, specialmente perchè non è compatibile con XrandR. Per questo motivo, tale soluzione non è consigliata.
+
#Modificare il PKGBUILD. Bisognerà apportare queste tre modifiche:
 +
##Cambiare {{ic|1=pkgname=catalyst}} in {{ic|1=pkgname=catalyst-KERNEL_NAME}} dove KERNEL_NAME è il nome che si preferisce (es. IlMioBelKernel)
 +
##Cambiare la dipendeza {{ic|linux}} in {{ic|$kernel_name}}.
  
* La soluzione "Dual Head" permette di avere due differenti sessioni (una per schermo). Potrebbe questa essere una soluzione preferibile anche se non da la possibilità di spostare le finestre da uno schermo all'altro. Se si ha un solo schermo si dovrà definire il mouse all'interno di Xorg per le 2 sessioni all'interno della sezione Server Layout.
+
#Infine compilare ed installare il pacchetto. ({{Ic|makepkg -i}} o {{Ic|makepkg}} seguito da {{Ic|pacman -U pkgname.pkg.tar.gz}}
 +
{{Nota|Avendo installati diversi kernel, bisognerà installare i drivers Catalyst su tutti. Non andranno in conflitto tra loro.}}
 +
{{Nota|Catalyst-generator è in grado di rigenerare catalyst-{kernver} quindi non sarà necessario rifare questa procedura sempre. Per maggiori informazioni, seguire la sezione [[#Strumenti|strumenti]].}}
  
 +
=== Supporto a PowerXpress===
  
[http://support.amd.com/us/kbarticles/Pages/1105-HowCanIConfigureMultip.aspx Documentazione ATI]
+
La tecnologia PowerXpress permette di switchare da schede grafiche integrate (IGP) a schede discrete sui notebooks, aumentando così la durata della batteria e migliorare le capacità 3D.
  
==== ATI Catalyst Control Center ====
+
Per usare questa funzione su Arch Linux:
La GUI fornita da ATI è uno strumento veramente utile e versatile. Per usarla laciare da terminale
+
* Installare {{AUR|catalyst-total-pxp}} da [[Arch User Repository|AUR]], or
+
* Installare '''catalyst-utils-pxp''' dal repository [catalyst] (più '''lib32-catalyst-utils-pxp''', se necessario).
amdcccle
+
  
{{Nota| Funziona tranquillamente anche con ''gksu'' se usate GNOME o altri DE/WM}}
+
Per abilitare lo switch su schede integrate Intel, installare i pacchetti {pkg|libgl}}, {{pkg|xf86-video-intel}} e {{pkg|intel-dri}}.
{{Attenzione| Non lanciate {{Ic|amdcccle}} con il comando ''sudo'' perchè sudo rende amministratori ma usa le informazioni dell'account utente. Con kdesu si diventa root in tutto e per tutto}}
+
  
==== Installazione ====
+
{{Nota|Sfortunatamente ci sono alcuni problemi con le ultime release dei driver Intel e, per adesso, l'ultima versione funzionante è la '''xf86-video-intel-2.20.2-2''', quindi si dovrà procedere al downgrade se si stanno utilizzando gli ultimi rilasciati dai repo di Arch (in ogni caso provare ad ogni aggiornamento i nuovi driver, potrebbero funzionare).
Facile ma importante: assicurarsi che tutto sia collegato correttamente, che tutto sia acceso, e di conoscere le caratterische fondamentali dell'hardware in questione (dimensione, risoluzione, frequenza di aggiornamento ...) Normalmente, gli schermi vengono riconosciuti al boot ma non sempre la loro configurazione risulta essere corretta, specialmente se si sta usando una configurazione base di Xorg.
+
  
Il primo passo è quello di assicurarsi che essi saranno riconosciuti dal vostro DE / Xorg. Per questo, è necessario generare un file per X per i 2 schermi :
+
È possibile usare '''xf86-video-intel 2.20.2-2''' da [http://catalyst.apocalypsus.net/files/xf86-video-intel-2.20.2/ qui]; scaricare il pacchetto sul proprio sistema e installarlo con {{ic|pacman -U}}.
 +
Notare che '''xf86-video-intel 2.20.2-2''' funziona con '''xorg-server 1.12''', quindi sarà necessario effettuare il downgrade anche di questo pacchetto. Per altre informazioni, vedere [[#Il repository [xorg]]].}}
  
$ aticonfig --initial --desktop-setup=horizontal --overlay-on=1
+
Ora si può switchare tra le due GPU così:
o
+
$ aticonfig --initial=dual-head --screen-layout=left
+
  
{{Nota|La sovrapposizione {{ic|overlay}} è molto importante in quanto permette di condivire un pixel (o più) tra i due schermi.}}
+
{{bc|1=
{{Tip|Per tutte le configurazioni possibili, non si esiti a dare un {{ic| aticonfig}} in un terminale per prendere visioni di tutte le possibili opzioni.}}
+
# aticonfig --px-igpu    # GPU integrata
 +
# aticonfig --px-dgpu    # GPU discreta
 +
}}
  
Normalmente, si dovrebbe avere un file base che è possibile editare per aggiungere le risoluzioni desiderate. È importante precisare la risoluzione voluta specialmente se si hanno schermi di dimensioni diverse. Aggiungere nella sezione "screen":
+
Ricordarsi che fglrx va configurato in {{ic|/etc/X11/xorg.conf}}.
  
SubSection "Display"
+
È possibile installare anche '''pxp_switch_catalyst''' che è uno script per lo switch che permette anche maggiori funzioni:
Depth 24
+
* Switching xorg.conf - it will rename xorg.conf into xorg.conf.cat (if there's fglrx inside) or xorg.conf.oth (if there's intel inside) and then it will create a symlink to xorg.conf, depending on what you chose.
Modes "1200x800"
+
* Running {{ic|aticonfig --px-Xgpu}}.
EndSubSection
+
* Running {{ic|switchlibGL}}.
 +
* Adding/removing fglrx into/from {{ic|/etc/modules-load.d/catalyst.conf}}.
  
Da ora in poi non modificare manualmente {{ic|xorg.conf}}, usare la GUI di ATI. Riavviare X e assicurarsi che i due schermi siano supportati e che la risoluzione sia corretta. (Gli schermi sono indipendenti).
+
Uso:
 +
{{bc|1=
 +
# pxp_switch_catalyst amd
 +
# pxp_switch_catalyst intel
 +
}}
  
==== Configurazione ====
+
Se si hanno problemi lanciando X con la scheda Intel, prvare a forzare l'accelerazione '''UXA'''; quindi inserire quanto segue in {{ic|xorg.conf}}
Dopo aver lanciato ATI control center come root si potrà accedere ai menù e scegliere la configurazione che si preferisce per il proprio sistema. Alla fine, riavviare X e tutto dovrebbe funzionare.
+
{{bc|1=
 +
Section "Device"
 +
  Identifier  "Intel Graphics"
 +
  Driver      "intel"
 +
  #Option      "AccelMethod"  "sna"
 +
  Option      "AccelMethod"  "uxa"
 +
  #Option      "AccelMethod"  "xaa"
 +
EndSection
 +
}}
  
Non esitate a controllare più volte {{ic|xorg.conf}} prima di riavviare il server grafico. A questo punto, nella sotto sezione "Display" della sezione "Screen" si può vedere "Virtual" command line. La risoluzione deve essere la somma di entrambi gli schermi. La sezione "Server Layout" dice tutto il resto.
+
==Repository xorg-server==
 +
È noto che Catalyst abbia uno sviluppo molto lento. È facile che un aggiornamento di tale pacchetto interrompa la compatibilità con Xorg. Questo significa che gli utenti di Catalyst devono bloccare l'aggiornamento di X o usare dei repo, anch'essi gestiti da Vi0L0, che mantengano una versione di X compatibile con Catalyst.  
  
== Features ==
+
Se si vuole usare pacman per bloccare l'aggiornamento di X, consultare la pagina [[Pacman (Italiano)|Pacman]]. I pacchetti da non aggiornare saranno quindi:
 +
*xorg-server-*
 +
*xf86-input-*
 +
*xf86-video-*
 +
 
 +
Se invece si intende aggiornare normalmente la propria Arch Linux si dovrà ricorrere a un repository esterno. Ognuno di questi repositories dovrà essere aggiunto a {{ic|/etc/pacman.conf}} sopra ogni altro repo ma sotto all'eventuale [Catalyst].
 +
 
 +
===[xorg112]===
 +
Catalyst al momento non supporta xorg-server 1.13
 +
{{bc|1=
 +
[xorg112]
 +
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg112/$arch</nowiki>
 +
}}
 +
===[xorg111]===
 +
I driver Catalyst < 12.6 non supportano xorg-server 1.12.
 +
{{bc|1=
 +
[xorg111]
 +
<nowiki>Server = http://catalyst.apocalypsus.net/repo/xorg111/$arch</nowiki>
 +
}}
 +
 
 +
==Strumenti==
 +
===Catalyst-hook===
 +
Con {{aur|catalyst-hook}} la funzione di ricompilazione automatica è affidata all' HOOKS '''fglrx''' tramite [[mkinitcpio (Italiano)|mkinitcpio]]. ''Questo sostanzialmente è la stessa cosa che fa catalyst-dkms da [community]''. Prima di aggiornare il modulo fglrx, si aggiorni il pacchetto {{pkg|linux-headers}}.
 +
 
 +
Questo hook richiamerà il comando '''catalyst_build_module''' per aggiornare il modulo fglrx alla versione del proprio nuovo kernel, ed in aggiunta lancerà il comando ''catalyst_build_module remove'' per rimuovere i moduli fglrx non più necessari.
 +
 
 +
{{Nota| Se si utilizza questa funzionalità è '''importante''' controllare il processo di installazione di '''linux''' (o qualsiasi altro kernel). fglrx-hook vi informerà dell'esito positivo.}}
 +
{{Nota| Se state utilizzando un '''kernel personalizzato''' e si utilizza un file di configurazione di mkinitcpio '''non standard''' (Es. il linux-zen utilizza {{ic|/etc/mkinitcpio-zen.conf}}), bisogna aggiungere manualmente '''fglrx''' alla stringa ''HOOKS'' nel file di configurazione per abilitare l'auto-ricompilazione all'aggiornamento del kernel.}}
 +
{{Nota|Se si sta usando un kernel non stock, è necessario rimuovere ''linux-header'' da {{ic|SyncFirst}} in {{ic|/etc/pacman.conf}} dopo aver eseguito 'catalyst_build_module auto'.}}
 +
 
 +
===Catalyst-generator===
 +
{{AUR|catalyst-generator}} è un pacchetto in grado di costruire e installare i moduli ''fglrx'' generando un pacchetto fruibile da pacman. La differenza tra questo metodo e catalyst-hook è che questo è completamente manuale mentre catalyst-hook fa tutto in automatico.
 +
 
 +
Il suo scopo è generare il pacchetto '''catalyst-{kernver}''' utilizzando [[makepkg_(Italiano)|makepkg]] e installarlo con l'ausilio di [[pacman_(Italiano)|pacman]]; {kernver} è la versione del kernel con il quale è stato compilato il pacchetto, ad esempio : il pacchetto catalyst-2.6.35-ARCH è stato compilato sul kernel 2.6.35-ARCH .
 +
 
 +
Per compilare ed installare il pacchetto catalyst-{kernver} per il kernel avviato come '''utente senza privilegi''' (metodo sicuro) usare ilc comando: {{Ic|catalyst_build_module}}. Vi verrà chiesta la password di root per procedere all'installazione.
 +
 
 +
Ecco il sommario delle operazioni da svolgere:
 +
#Con i privilegi di root:{{ic|# catalyst_build_module remove}}. Questo comando eliminerà i pacchetti {{ic|<nowiki>catalyst-{kernver}</nowiki>}} non utilizzati 
 +
#Poi come utente senza privilegi:{{ic|<nowiki>$ catalyst_build_module ''nuova-versione-kernel''</nowiki>}} dove ''nuova-versione-kernel''''è la versione del kernel che avete appena aggiornato/installato, Es:{{ic|catalyst_build_module 2.6.36-ARCH}} oppure: {{ic| catalyst_build_module all}} il quale compilerà il pacchetto catalyst-{kernver} per tutti i kernel presenti.
 +
#Se volete rimuovere {{Ic|catalyst-generator}} -  si '''consiglia''' di eseguire da root questo comando: {{ic|catalyst_build_module remove_all}}
 +
''prima di rimuovere catalyst-generator (con questo comando si
 +
elimineranno tutti i pacchetti catalyst-{kernver} presenti nel sistema)''
 +
 
 +
catalyst-generator non è in grado di rimuovere tutti i pacchetti catalyst-{kernver} automaticamente mentre lo si rimuove perché non ci può essere ad esempio più di una istanza di pacman in esecuzione. Se si dimentica di dare il comando {{Ic|catalyst_build_module remove_all}} prima di digitare {{Ic|pacman -R catalyst-generator}} - catalyst-generator vi chiederà quale pacchetto catalyst-{kernver} si dovrà rimuovere dopo la rimozione di catalyst-generator.
 +
 
 +
{{Nota| Se si visualizza un errore del tipo:
 +
'''WARNING:''' Package contains reference to $srcdir
 +
'''WARNING:''' '.pkg' is not a valid archive extension.
 +
mentre si compila il pacchetto catalyst-{kernver} - non c'è da preoccuparsi, è un normale avvertimento.
 +
}}
 +
 
 +
===Catalyst-daemon===
 +
{{Attenzione|initscript non è più supportato. Se possibile non usare questo metodo.}}
 +
{{Attenzione|Systemd non è compatibile con questo sistema.}}
 +
{{AUR|catalyst-daemon}}, come suggerisce il nome, associa la funzionalità di 'ricompilazione automatica' ad un ''demone'' chiamato '''autofglrx''', il quale viene lanciato ad ogni avvio del sistema e controlla se il kernel è stato aggiornato. Nel caso si verificasse che il kernel è stato aggiornato, esso ricostruirà il modulo fglrx. Se il kernel non è stato aggiornato, allora si incarica di caricare l'ultimo modulo fglrx ricostruito (tutta questa operazione dura soltanto  20ms su processori a 2.4 GHz).
 +
 
 +
La funzione '''check''' di ''Autofglrx'' effettua un confronto del tempo di boot del kernel standard (fornito da `uname -v') con il tempo di avvio di un kernel in cui è stato costruito il modulo fglrx. E 'in grado di fare tale comparazione perché aggiunge l'informazione `uname -v` per la descrizione del modulo fglrx mentre ricompila il modulo.
 +
 
 +
La funzione '''build''' di ''autofglrx'' chiamerà {{Ic|catalyst_build_module}} per costruire il modulo e {{Ic|catalyst_build_module remove}} per eliminare i moduli fglrx inutili e più vecchi.
 +
 
 +
{{Nota|Quando si installa autofglrx, esso aggiungerà il demone all'inizio della lista {{ic|DAEMONS}} nel file {{ic|/etc/rc.conf}}. È possibile tranquillamente spostarlo a seconda delle esigenze, ma deve essere posto sempre prima di un desktop manager o di demoni di X, e '''non deve essere avviato in background''' (@) poiché non implementa tale funzionalità.}}
 +
{{Nota|Se si tanno utilizzando '''flags di compilazione''' personali e si hanno problemi con il demone, si aggiungano tali flags nel file {{ic|/usr/bin/catalyst_build_module}}.}}
 +
 
 +
 
 +
==Caratteristiche==
 +
=== Desktop senza Tearing ===
 +
Presentata con i '''Catalyst 11.1''', la funzione 'Desktop senza Tearing' riduce il tearing nelle applicazioni 2d, 3d e video. Per quanto è possibile saperne, ogni frame renderizzato che passa per il server X viene memorizzato in un triplo buffer e sincronizzato col refresh verticale del monitor.
 +
Tenere presente che questa procedura occupa risorse supplementari.
 +
 
 +
Per abilitare la funzione 'Desktop senza Tearing' eseguire {{ic|amdcccle}} e andare su:{{ic|Display Options}} ~~> {{ic|Tear Free}}.
 +
 
 +
oppure da utente root eseguire:
 +
  aticonfig --set-pcs-u32=DDX,EnableTearFreeDesktop,1
 +
Per disabilitarla utilizzare {{ic|amdcccle}} oppure da utente root eseguire:
 +
  aticonfig --del-pcs-key=DDX,EnableTearFreeDesktop
 +
 
 
=== Accelerazione video ===
 
=== Accelerazione video ===
 
'''[[wikipedia:Video_Acceleration_API|Video Acceleration API]] (VA API)''' è una libreria open source ("libVA") compresa di specifiche API che permette l'accesso  all''''accelerazione grafica hardware (GPU)''' per il processing dei contenuti video su sistemi Linux e basati su UNIX.
 
'''[[wikipedia:Video_Acceleration_API|Video Acceleration API]] (VA API)''' è una libreria open source ("libVA") compresa di specifiche API che permette l'accesso  all''''accelerazione grafica hardware (GPU)''' per il processing dei contenuti video su sistemi Linux e basati su UNIX.
Line 562: Line 384:
 
Esempio: per '''Mplayer''':
 
Esempio: per '''Mplayer''':
 
  $ mplayer -vo vaapi:gl movie.avi
 
  $ mplayer -vo vaapi:gl movie.avi
 +
Queste opzioni possono essere inserite nel file di configurazione di MPlayer. Vedere [[MPlayer (Italiano)|Mplayer]] per ulteriori informazioni.
  
 
Esempio: per '''smplayer''':
 
Esempio: per '''smplayer''':
Line 589: Line 412:
  
 
In '''kwin''' è disabilitato di default, ma se si dovesse verificare il '''flickering''', provare a modificare il valore di "Suspend desktop effects for fullscreen windows" in System Settings -> Desktop Effects -> Advanced.
 
In '''kwin''' è disabilitato di default, ma se si dovesse verificare il '''flickering''', provare a modificare il valore di "Suspend desktop effects for fullscreen windows" in System Settings -> Desktop Effects -> Advanced.
 
=== Desktop senza Tearing ===
 
Presentata con i '''Catalyst 11.1''', la funzione 'Desktop senza Tearing' riduce il tearing nelle applicazioni 2d, 3d e video. Per quanto è possibile saperne, ogni frame renderizzato che passa per il server X viene memorizzato in un triplo buffer e sincronizzato col refresh verticale del monitor.
 
Tenere presente che questa procedura occupa risorse supplementari.
 
Per abilitare la funzione 'Desktop senza Tearing' eseguire '''amdcccle''' e spuntare:
 
Display Options ~~> Tear Free
 
 
oppure da utente root eseguire:
 
  aticonfig --set-pcs-u32=DDX,EnableTearFreeDesktop,1
 
Per disabilitarla utilizzare amdcccle oppure da utente root eseguire:
 
  aticonfig --del-pcs-key=DDX,EnableTearFreeDesktop
 
  
 
=== Strumenti per  la frequenza GPU/Mem, Temperatura, Velocità ventole, Overclock utilities ===
 
=== Strumenti per  la frequenza GPU/Mem, Temperatura, Velocità ventole, Overclock utilities ===
Line 614: Line 426:
  
 
Un'altro, strumento per operare questo tipo di modifiche è '''AMDOverdriveCtrl'''. La sua homepage è [http://sourceforge.net/projects/amdovdrvctrl qui], si possono reperire i pacchetti per arch su [https://aur.archlinux.org/packages.php?ID=45298 AUR] o dal repository [catalyst].
 
Un'altro, strumento per operare questo tipo di modifiche è '''AMDOverdriveCtrl'''. La sua homepage è [http://sourceforge.net/projects/amdovdrvctrl qui], si possono reperire i pacchetti per arch su [https://aur.archlinux.org/packages.php?ID=45298 AUR] o dal repository [catalyst].
 +
 +
=== Double Screen (Dual Head / Dual Screen / Xinerama) ===
 +
 +
==== Introduzione ====
 +
{{Box RED| Prima di tutto:| bisogna sapere che non esiste una singola soluzione, le configurazioni possono essere diverse. È quindi necessario adattare questo paragrafo alle proprie esigenze. Non è da escludere che dovranno essere fatti più tentativi. '''Pertanto salvare il file {{ic|/etc/X11/xorg.conf}} attuale prima di iniziare ogni cambiamento. Sarebbe utile anche saper recuperare la vecchia configurazione da tty'''}}
 +
 +
* In questa sezione si vedrà come installare due schermi di diverse dimensioni su una sola scheda grafica con 2 differenti output (DVI + HDMI) usando la configurazione "Big desktop".
 +
 +
* La soluzione Xinerama ha degli inconvenienti, specialmente perchè non è compatibile con XrandR. Per questo motivo, tale soluzione non è consigliata.
 +
 +
* La soluzione "Dual Head" permette di avere due differenti sessioni (una per schermo). Potrebbe questa essere una soluzione preferibile anche se non da la possibilità di spostare le finestre da uno schermo all'altro. Se si ha un solo schermo si dovrà definire il mouse all'interno di Xorg per le 2 sessioni all'interno della sezione Server Layout.
 +
 +
 +
[http://support.amd.com/us/kbarticles/Pages/1105-HowCanIConfigureMultip.aspx Documentazione ATI]
 +
 +
==== ATI Catalyst Control Center ====
 +
La GUI fornita da ATI è uno strumento veramente utile e versatile. Per usarla laciare da terminale
 +
 +
amdcccle
 +
 +
{{Nota| Funziona tranquillamente anche con ''gksu'' se usate GNOME o altri DE/WM}}
 +
{{Attenzione| Non lanciate {{Ic|amdcccle}} con il comando ''sudo'' perchè sudo rende amministratori ma usa le informazioni dell'account utente. Con kdesu si diventa root in tutto e per tutto}}
 +
 +
==== Installazione ====
 +
Facile ma importante: assicurarsi che tutto sia collegato correttamente, che tutto sia acceso, e di conoscere le caratterische fondamentali dell'hardware in questione (dimensione, risoluzione, frequenza di aggiornamento ...) Normalmente, gli schermi vengono riconosciuti al boot ma non sempre la loro configurazione risulta essere corretta, specialmente se si sta usando una configurazione base di Xorg.
 +
 +
Il primo passo è quello di assicurarsi che essi saranno riconosciuti dal vostro DE / Xorg. Per questo, è necessario generare un file per X per i 2 schermi :
 +
 +
$ aticonfig --initial --desktop-setup=horizontal --overlay-on=1
 +
o
 +
$ aticonfig --initial=dual-head --screen-layout=left
 +
 +
{{Nota|La sovrapposizione {{ic|overlay}} è molto importante in quanto permette di condivire un pixel (o più) tra i due schermi.}}
 +
{{Tip|Per tutte le configurazioni possibili, non si esiti a dare un {{ic| aticonfig}} in un terminale per prendere visioni di tutte le possibili opzioni.}}
 +
 +
Normalmente, si dovrebbe avere un file base che è possibile editare per aggiungere le risoluzioni desiderate. È importante precisare la risoluzione voluta specialmente se si hanno schermi di dimensioni diverse. Aggiungere nella sezione "screen":
 +
 +
SubSection "Display"
 +
Depth 24
 +
Modes "1200x800"
 +
EndSubSection
 +
 +
Da ora in poi non modificare manualmente {{ic|xorg.conf}}, usare la GUI di ATI. Riavviare X e assicurarsi che i due schermi siano supportati e che la risoluzione sia corretta. (Gli schermi sono indipendenti).
 +
 +
==== Configurazione ====
 +
Dopo aver lanciato ATI control center come root si potrà accedere ai menù e scegliere la configurazione che si preferisce per il proprio sistema. Alla fine, riavviare X e tutto dovrebbe funzionare.
 +
 +
Non esitate a controllare più volte {{ic|xorg.conf}} prima di riavviare il server grafico. A questo punto, nella sotto sezione "Display" della sezione "Screen" si può vedere "Virtual" command line. La risoluzione deve essere la somma di entrambi gli schermi. La sezione "Server Layout" dice tutto il resto.
  
 
== Risoluzione problemi ==
 
== Risoluzione problemi ==
Line 622: Line 482:
 
  grep '(EE)' /var/log/Xorg.0.log
 
  grep '(EE)' /var/log/Xorg.0.log
 
  grep '(WW)' /var/log/Xorg.0.log
 
  grep '(WW)' /var/log/Xorg.0.log
 +
 +
=== Freeze delle applicazioni 3D Wine ===
 +
Se si usano applicazioni 3D con Wine e si riscontrano problemi, provare a disabilitare il TLS. Per fare ciò, usare {{ic|aticonfig}} o editare {{ic|/etc/X11/xorg.conf}}. Usando {{ic|aticonfig}}:
 +
 +
# aticonfig --tls=off
 +
 +
O editando {{ic|/etc/X11/xorg.conf}}; aggiungendo {{ic|Option "UseFastTLS" "off"}} alla sezione ''Device''.
 +
 +
Riavviare X.
  
 
=== Problemi con i colori video ===
 
=== Problemi con i colori video ===
Line 756: Line 625:
  
 
L'aggiunta dell'opzione {{ic|nopat}} a {{ic|/boot/grub/menu.lst}} e il riavvio hanno risolto il problema, almeno nel mio caso.
 
L'aggiunta dell'opzione {{ic|nopat}} a {{ic|/boot/grub/menu.lst}} e il riavvio hanno risolto il problema, almeno nel mio caso.
 
=== Catalyst 10.6/10.7/10.8/10.9 : artefatti quadrati neri, grigi e bianchi in firefox/thunderbird ===
 
Con i catalyst 10.6, AMD/ATi ha annunciato un nuovo metodo di accelerazione per radeon, ma sfortunatamente questo balzo è stato fonte di bug per alcuni utenti. Per tornare al vecchio (e più lento) metodo xaa per il rendering 2D, eseguire l'azione "kill" al proprio ambiente desltop e Xserver, e digitare il seguente comando da root:
 
 
# aticonfig --set-pcs-str=DDX,ForceXAA,TRUE
 
 
Now you'll probably need patched xorg-server to fix problems with resizing/maximizing windows, read about it ie. [http://wiki.archlinux.org/index.php/ATI_Catalyst#Black.2Fgrey.2Fwhite_boxes.2Fartifacts_mainly_in_firefox.2Fthunderbird here].
 
  
 
==="aticonfig: No supported adaptaters detected"===
 
==="aticonfig: No supported adaptaters detected"===
Line 830: Line 692:
 
===Impossibile usare la modalità fullscreen con risoluzione 1920x1080 ===
 
===Impossibile usare la modalità fullscreen con risoluzione 1920x1080 ===
  
Aggiungere questo a {{ic|xorg.conf}}.
+
Usando la gui amdcccle è possibile selezionare il Display, cliccare su adjustament e settare Underscan su 0% (di default è 15%).
 +
 
 +
In alternativa, editare {{ic|xorg.conf}} e aggiungere questa opzione:
  
 
  Option      "DPMS" "true"
 
  Option      "DPMS" "true"

Revision as of 17:04, 25 November 2012

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary heading Template:Article summary link Template:Article summary link Template:Article summary end I possessori di schede video ATI/AMD possono scegliere tra i driver proprietari ATI (CatalystAUR) e i driver opensource (xf86-video-ati). Questo articolo tratta i driver proprietari.

Conosciuti precedentemente come fglrx(FireGL and Radeon X), ATI ha ribattezzato i suoi driver proprietari Linux, che sono ora noti come Catalyst. Attualmente solo il nome dei pacchetti è cambiato, mentre il modulo del kernel mantiene il nome originale fglrx.ko, perciò ogni riferimento a fglrx da qui in poi sarà specificatamente riferito al modulo del kernel, non al pacchetto.

Un tempo, catalyst era un pacchetto precompilato scaricabile dal repostory [extra] di Arch Linux, ma da Marzo 2009, il supporto ufficiale è stato abbandonato a causa della poco soddisfacente qualità e velocità in termini di sviluppo di questo driver proprietario. Da ottobre 2012, tali driver sono rientrati nei repositories ufficiali, più precisamente in [community]. Non è comunque del tutto chiaro cosa succederà quando un aggiornamento di Xorg interromperà il supporto alla versione di Catalyst rilasciata. Il driver legacy, per schede grafiche Radeon HD 2xxx, 3xxx, 4xxx, non è disponibile nei repositories. Per informazioni più dettagliate seguire questo post sul forum internazionale.

Comparando i Catalyst con i driver open source, si nota che i driver open source hanno performance 2D migliori. Le parti si invertono se si passa a considerare l'accelerazione 3D, dove i Catalyst hanno la meglio.Nella versione Radeon, ATI ha rielaborato lo schema identificativo per collegare ogni prodotto ad un determinato segmento di mercato. Dalla versione 9.4, i drivers proprietari ATI supportano solo schede R600 o più recenti (il che significa, HD2xxx o più nuove). Per schede video più datate è disponibile solo il driver open sourcexf86-video-ati. In questa guida, i lettori avranno modo di vedere sia i nomi del product (es. HD 4850, X1900) sia i nomi code o core (es. RV770, R580). Per ulteriori informazioni sui prodotti ATI consultare Wikipedia:Comparison of AMD graphics processing units. Vedere anche la wiki di Xorg.

Contents

Installazione

Ci sono 4 modi per installare Catalyst sul proprio sistema. Il primo metodo è usare il repository ufficiale [community], che però non contiene tutti i pacchetti esistenti. Il secondo metodo è usare il repository non ufficiale di Vi0L0 (il maintainer di Catalyst su AUR) che contiene tutti i pacchetti possibili per Arch Linux. Il terzo metodo prevede la compilazione dei pacchetti da AUR. Infine, il quarto metodo (fortemenete SCONSIGLIATO) è quello di installare Catalyst direttamente AMD.

Prima di scegliere la modalità di installazione è necessario capire di quale driver si ha bisogno. Dalla release 12.4 di Catalyst, AMD ha deciso di prosdeguire in modo distinto lo sviluppo per le schede Radeon HD superiori alla serie 5xxx e per le schede Radeon HD 4xxx, 3xxx e 2xxx. Per queste ultime esiste il driver legacy, mentre per le Radeon HD 5xxx (e successive) usare il "normale" pacchetti Catalyst.

Nota: In seguito alle istruzioni per ogni tipo di installazione possibile, si troverà una sezione che tratta la configurazione che dovrà essere seguita a prescindere dal metodo scelto per l'installazione.

Installare i driver

Installazione da [community]

Questa è la via più semplice in quanto non richiede compilazioni, repository di terze parti e il DKMS si occuperà in modo automatico di ricostruire il module del kernel ogni qual volta questo riceve un aggiornamento. Se tale repository contiene tutto quello di cui si ha bisogno, questa è sicuramente la via maestra da seguire. Sarà infatti sufficiente installare tramite pacman i pacchetti: catalyst-dkms e catalyst-utils.

Assicurarsi di aver installato anche il pacchetto linux-headers.

Nota: Pacman potrebbe chiedere se si vuole rimuovere libgl. In tal caso rispondere affermativamente.
Nota: Se si usa systemd, abilitare il service di DKMS. Per informazioni dettagliate sull'utilizzo dei service: Systemd.

Se si usa Arch 64 bit e si necessita del supporto Open GL a 32 bit sarà necessario installare il pacchetto: lib32-catalyst-utils presente in [multilib].

Installazione dal repository non ufficiale

Se i pacchetti che servono non sono presenti nel repository [community], la via più semplice è l'utilizzo del repository non ufficiale mantenuto dall'utente ViOlO. I pacchetti qui presenti sono firmati quindi il loro utilizzo è considerabile sicuro. Vi0L0 è responsabile di molti pacchetti che possono aiutare parecchio durante la configurazione di Catalyst su Arch Linux.

I repositories sono due:

  • [catalyst]; per schede Radeon HD >= 5xxx;
  • [catalyst-hd234k]; per schede Radeon HD <= 4xxx.
Attenzione: Il driver Legacy non supporta Xorg 1.13 per ora. Il supporto dovrebbe arrivare da AMD in un secolo o due. Se si deve usare questo driver sarà necessario installare una versione vecchia di Xorg. Vedere la sezione #Repository xorg-server per maggiori informazioni

Per abilitare uno di questi repositories è necessario editare il file /etc/pacman.conf e aggiungere SOPRA ogni altro repository: Per [Catalyst]:

[catalyst]
Server = http://catalyst.apocalypsus.net/repo/catalyst/$arch

Per [Catalyst hd234k]:

[catalyst-hd234k]
Server = http://catalyst.apocalypsus.net/repo/catalyst-hd234k/$arch

Ora è necessario aggiungere la GPG key di Vi0L0:

# pacman-key --keyserver pgp.mit.edu --recv-keys 0xabed422d653c3094
# pacman-key --lsign-key 0xabed422d653c3094

Ora sincronizzare i database, aggiorare e installare catalyst-dkms e catalyst-utils:

# pacman -Syy
# pacman -Su
# pacman -S catalyst-dkms e catalyst-utils
Nota: Pacman potrebbe chiedere se si vuole rimuovere libgl. In tal caso rispondere affermativamente.

Se si usa Arch 64 bit e si necessita del supporto Open GL a 32 bit sarà necessario installare il pacchetto: lib32-catalyst-utils presente in [multilib].

Questi repositories contengono anche altri pacchetti utili. Questi possono rimpiazzare Catalyst e provvedono a rigenerare il modulo fglrx in modo automatico

  • Catalyst-generator; questo pacchetto rigenera automaticamente il modulo fglrx - soluzione efficacie compatibile con la filosofia KISS. La rigenerazione può anche essere effettuata manualmente.
  • Catalyst-hook; HOOK per mkinitcpio per rigenera il modulo fglrx ad ogni aggiornamento del kernel. Stesso comportamento di catalyst-dkms presente in [community].
  • Catalyst-daemon; rigenera il modulo tramite un demone per Initscript. DEPRECATO SE SI USA SYSTEMD.

Per ulteriori informazioni leggere la sezione #Strumenti di questo articolo. Inoltre questi repositories contengono i pacchetti xvba-video per abilitare l'accelerazione video come descritto in #Accelerazione video e AMDOverdriveCtrl che è una GUI per controllare over- e downclock. Vedere #Strumenti per la frequenza GPU/Mem, Temperatura, Velocità ventole, Overclock utilities.

Installazione da AUR

Il terzo metodo per ottenere Catalyst, come detto è la compilazione tramite AUR. Nel caso si voglia compilare i pacchetti in modo specifico per il proprio sistema questa è la via da seguire. Va ricordato che ad ogni aggiornamento i driver vanno ricompilati, quindi è il metodo che richiede più sforzi da parte dell'utente finale.

Attenzione: Se si sceglie di installare Catalyst tramite AUR sarà necessario ricompilare il pacchetto ad ogni aggiornamento del kernel. In caso contrario X potrebbe fallire l'avvio.
Attenzione: Il driver Legacy non supporta Xorg 1.13 per ora. Il supporto dovrebbe arrivare da AMD in un secolo o due. Se si deve usare questo driver sarà necessario installare una versione vecchia di Xorg. Vedere la sezione #Repository xorg-server per maggiori informazioni.

Tutte le informazioni scritte nel paragrafo precedente riguardante il repository non ufficiale di Vi0L0 sono valide anche per i pacchetti AUR:

AUR inoltre contiene pacchetti che non si trovano su alcun repositories. Questi pacchetti sono:

Il pacchetto Catalyst-total serve a semplificare il più possibile la vita all'utente in quanto un solo pacchetto fornisce: driver, kernel utilities, utilities 32 bit e l'hook per mkinitcpio (come il pacchetto catalyst-hooksAUR).

Catalyst-total-pxp serve per compilare Catalyst con il supporto sperimentale a powerXpress.

Per maggiori informazioni circa l'utilizzo di AUR, consultare la relativa pagina wiki: AUR.

Installazione direttamente da AMD

Attenzione: Utilizzare l'installer da ati.com/amd.com NON è consigliato per utenti inesperti! Farlo potrebbe causare conflitti di file e malfunzionamenti di X. È di fondamentale importanza avere familiarità con l'avvio da riga di comando per usare questo installer.
Nota: Se si è tentata una installazione manuale con l'installer ufficiale, e si scopre che non funziona più nulla correttamente, dovrebbe essere presente uno script di disinstallazione in /usr/share/ati/fglrx-uninstall.sh

1.) Scaricare l'installer da sito ufficiale. Dovrebbe essere un file tipo: ati-driver-installer-*-*-x86.x86_64.run dove *-* è la versione del driver.

2.) Rendere il file eseguibile # chmod -x ati-driver*

3.) Assicurarsi di usare un driver base, come ad esempio vesa e rimuovere ogni altro file che potrebbe andare in conflitto (nel caso specifico: xf86-video-ati e radeon)

4.) Creare un link simbolico /usr/src/linux a /usr/src/{kernelsource}. Gli utenti che hanno un sistema a 64 bit dovranno anche creare il link /usr/lib64 a /usr/lib.

5.) Assicurarsi che sul proprio sistema siano correttamente installate le dipendenze # pacman -S linux-headers base-devel

6.) Da root # ./ati-driver-installer-*-*-x86.86_64.run (I file verranno estratti in una cartella temporanea e lo script partirà...)

Assumiamo ora che tutto vada per il peggio...

7.) Controllare il file /usr/share/ati/fglrx-install.log per vedere il log dei problemi. Potrebbe anche esistere il file /lib/modules/fglrx/make.{ker_version}.log

Nota: Se si modifica a mano il "make script" salvarlo con un nome differente altrimenti un'ipotetica disinstallazione dei driver potrebbe non andare a buon fine.

Configurazione dei driver

Dopo aver correttamente installato i pacchetti necessari con il proprio metodo preferito, sarà necessario configurare X in modo che lavori con i Catalyst, si dovrà essere certi che i moduli necessari vengano caricati al boot e si rendererà fondamentale disabilitare il kernel mode setting.

Configurare X

Per la configurazione di X si dovrà creare il file xorg.conf. Catalyst porta con se uno strumento molto potente: aticonfig che è in grado di generare, modificare e amministrare tale file. Ogni aspetto della propria scheda video inoltre è configurabile tramite /etc/ati/amdpcsdb. Per la lista completa delle opzioni del comando aticonfig eseguire:

# aticonfig --help | less
Attenzione: Si utilizzi l'opzione --output in modo da generare un file di prova e se ne verifichi il contenuto prima di copiarlo all'interno di /etc/X11/xorg.conf, in quanto la presenza di quest'ultimo renderà inutilizzate le impostazioni presenti nei file all'interno della directory /etc/X11/xorg.conf.d.

Ora, per iniziare la configurazione, se si ha un solo monitor, eseguire:

# aticonfig --initial

Se si hanno due monitor invece si può eseguire il comando qui sotto. Si noti però che lanciare tale comando farà si che i due monitor saranno configurati come "dual head", con il secondo schermo sopra il primo:

# aticonfig --initial=dual-head --screen-layout=above
Nota: AGGIUNGERE NOTA

Ora è possibile comparare il file xorg.conf con un [[Xorg_(Italiano)#Xorg.conf_di_esempio|file d'esempio}}.

La nuova versione di Xorg, rileva automaticamente molte delle opzioni specificate al suo avvio. Sarà quindi necessario esplicitarne solo poche in caso di cambiamenti di versione.

Qui è presente un file con delle note per un confronto veloce. Le voci dopo '#' potrebbero essere necessarie, quelle dopo '##' sono fondamentali.

Section "ServerLayout"
        Identifier     "Arch"
        Screen      0  "Screen0" 0 0          # lo 0 è necessario
EndSection
Section "Module"
        Load ...
        ...
EndSection
Section "Monitor"
        Identifier   "Monitor0"
        ...
EndSection
Section "Device"
        Identifier  "Card0"
        Driver      "fglrx"                         #
        BusID       "PCI:1:0:0"                     # Raccomandato se "autodetect" dovesse fallire
        Option      "OpenGLOverlay" "0"             ##
        Option      "XAANoOffscreenPixmaps" "false" ##
        Option      "UseInternalAGPGart"    "no"    ## Deprecato
        Option      "KernelModuleParm"  "agplock=0" ## se il supporto AGP GART è rimosso
EndSection
Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        DefaultDepth    24
        SubSection "Display"
                Viewport   0 0
                Depth     24                        # non modificare '24'
                Modes "1280x1024" "2048x1536"       ## 1° valore=risoluzione di default, 2°=massima.
                Virtual 1664 1200                   ## (x+64, y) to workaround potential OGL rect. artifacts/
        EndSubSection                               ## fixed in Catalyst 9.8
EndSection
Section "DRI"
        Mode 0666                                   # potrebbe tornare utile per abilitare il rendering diretto.
EndSection
Nota: Dopo ogni aggiornamento di Catalyst sarà necessario rimuovere amdpcsdb in questo modo: killare X, rimuovere /etc/ati/amdpcsdb, avviare X e lanciare amdpcsdb.

Se si desiderano maggiori informazioni visitare questo link.

Caricare moduli al boot

Questa parte della guida è diversa in base al sistema di init usato, systemd o sysvinit. In ogni caso, si dovrà blacklistare il modulo radeon in /etc/modprobe.d/modprobe.conf. Per maggiori informazioni consultare la pagina Modprobe. Gli utenti che han scelto di installare Catalyst da [community] non dovranno fare niente, il modulo "radeon" viene blacklistato in automatico.

Systemd
  • Disabilitare il caricamento del modulo radeon. Se in qualche file nella directory /etc/modules-load.d/ è presente radeon, rimuovere il file. Se in quel file sono presenti anche altri moduli, ovviamente rimuovere solo radeon.
  • Aggiungere fglrx in una nuova riga di un file esistente in /etc/modules-load.d/ e crearne uno apposito.
Initscripts
Attenzione: Deprecato

Editare /etc/rc.conf e sostituire fglrx a radeon nell'array MODULES.

Nota: Se si usa una scheda AGP aggiungere anche il modulo agp

Disabilitare mode setting

Per abilitare il KMS aggiungere nomodeset alla riga del kernel. Questa operazione è molto importante in quanto senza KMS si rischiano freeze del sistema durante operazioni come spegnimento, riavvio, sospensione...

Se si usa GRUB Legacy editare /boot/grub/menu.lst e aggiungere nomodeset alla riga del kernel:

kernel /boot/vmlinuz-linux root=/dev/sda1 ro nomodeset

Per GRUB, editare /etc/default/grub e aggiungere nomodeset ai parametri del kernel:

GRUB_CMDLINE_LINUX="nomodeset"

In seguito, eseguire da root:

# grub-mkconfig -o /boot/grub/grub.cfg

Per Syslinux, editare /boot/syslinux/syslinux.cfg e aggiungere nomodeset alla riga APPEND:

APPEND root=/dev/sda2 ro nomodeset

Controlli

Supponendo che il login sia andato bene, il comando per vedere se fglrx è stato caricato e sia correttamente attivo è:

$ lsmod | grep fglrx
$ fglrxinfo   

Infine, eseguire Xorg con startx o utilizzando GDM/KDM, e verificare che il direct rendering sia attivato eseguendo il seguente comando in un terminale:

$ glxinfo | grep direct

Se si riceve "direct rendering: yes" allora tutto è funzionante! Se il comando glxinfo non è trovato, si potrebbe aver bisogno di installare il pacchetto mesa-demos.

Nota: Come alternativa è possibile usare:
$ fg_glxears
per testare glxears
Attenzione: In alcune versioni recenti di Xorg, i percorsi delle librerie sono cambiati. Quindi, a volte libGL.so non può essere caricato correttamente anche se installato. Non dimenticare di controllare ciò se qualcosa non funziona. Leggere la sezione "Risoluzione dei problemi" per dettagli.

In caso di errori consultare questa sezione.

Kernel personalizzati

Per installare catalyst su un kernel modificato, occorrerà compilare un proprio pacchetto catalyst-$kernel contenente il modulo del kernel compilato specificamente per il proprio kernel.

Se non si ha esperienza o confidenza compilando pacchetti, consulatare la sezione ABS del wiki per una guida esaustiva sul metodo da impiegare.

  1. Scaricare per prima cosa PKGBUILD e catalyst.install da AUR.
  1. Modificare il PKGBUILD. Bisognerà apportare queste tre modifiche:
    1. Cambiare pkgname=catalyst in pkgname=catalyst-KERNEL_NAME dove KERNEL_NAME è il nome che si preferisce (es. IlMioBelKernel)
    2. Cambiare la dipendeza linux in $kernel_name.
  1. Infine compilare ed installare il pacchetto. (makepkg -i o makepkg seguito da pacman -U pkgname.pkg.tar.gz
Nota: Avendo installati diversi kernel, bisognerà installare i drivers Catalyst su tutti. Non andranno in conflitto tra loro.
Nota: Catalyst-generator è in grado di rigenerare catalyst-{kernver} quindi non sarà necessario rifare questa procedura sempre. Per maggiori informazioni, seguire la sezione strumenti.

Supporto a PowerXpress

La tecnologia PowerXpress permette di switchare da schede grafiche integrate (IGP) a schede discrete sui notebooks, aumentando così la durata della batteria e migliorare le capacità 3D.

Per usare questa funzione su Arch Linux:

  • Installare catalyst-total-pxpAUR da AUR, or
  • Installare catalyst-utils-pxp dal repository [catalyst] (più lib32-catalyst-utils-pxp, se necessario).

Per abilitare lo switch su schede integrate Intel, installare i pacchetti {pkg|libgl}}, xf86-video-intel e intel-dri.

Nota: Sfortunatamente ci sono alcuni problemi con le ultime release dei driver Intel e, per adesso, l'ultima versione funzionante è la xf86-video-intel-2.20.2-2, quindi si dovrà procedere al downgrade se si stanno utilizzando gli ultimi rilasciati dai repo di Arch (in ogni caso provare ad ogni aggiornamento i nuovi driver, potrebbero funzionare).

È possibile usare xf86-video-intel 2.20.2-2 da qui; scaricare il pacchetto sul proprio sistema e installarlo con pacman -U.

Notare che xf86-video-intel 2.20.2-2 funziona con xorg-server 1.12, quindi sarà necessario effettuare il downgrade anche di questo pacchetto. Per altre informazioni, vedere [[#Il repository [xorg]]].

Ora si può switchare tra le due GPU così:

# aticonfig --px-igpu    # GPU integrata
# aticonfig --px-dgpu    # GPU discreta

Ricordarsi che fglrx va configurato in /etc/X11/xorg.conf.

È possibile installare anche pxp_switch_catalyst che è uno script per lo switch che permette anche maggiori funzioni:

  • Switching xorg.conf - it will rename xorg.conf into xorg.conf.cat (if there's fglrx inside) or xorg.conf.oth (if there's intel inside) and then it will create a symlink to xorg.conf, depending on what you chose.
  • Running aticonfig --px-Xgpu.
  • Running switchlibGL.
  • Adding/removing fglrx into/from /etc/modules-load.d/catalyst.conf.

Uso:

# pxp_switch_catalyst amd
# pxp_switch_catalyst intel

Se si hanno problemi lanciando X con la scheda Intel, prvare a forzare l'accelerazione UXA; quindi inserire quanto segue in xorg.conf

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   #Option      "AccelMethod"  "sna"
   Option      "AccelMethod"  "uxa"
   #Option      "AccelMethod"  "xaa"
EndSection

Repository xorg-server

È noto che Catalyst abbia uno sviluppo molto lento. È facile che un aggiornamento di tale pacchetto interrompa la compatibilità con Xorg. Questo significa che gli utenti di Catalyst devono bloccare l'aggiornamento di X o usare dei repo, anch'essi gestiti da Vi0L0, che mantengano una versione di X compatibile con Catalyst.

Se si vuole usare pacman per bloccare l'aggiornamento di X, consultare la pagina Pacman. I pacchetti da non aggiornare saranno quindi:

  • xorg-server-*
  • xf86-input-*
  • xf86-video-*

Se invece si intende aggiornare normalmente la propria Arch Linux si dovrà ricorrere a un repository esterno. Ognuno di questi repositories dovrà essere aggiunto a /etc/pacman.conf sopra ogni altro repo ma sotto all'eventuale [Catalyst].

[xorg112]

Catalyst al momento non supporta xorg-server 1.13

[xorg112]
Server = http://catalyst.apocalypsus.net/repo/xorg112/$arch

[xorg111]

I driver Catalyst < 12.6 non supportano xorg-server 1.12.

[xorg111]
Server = http://catalyst.apocalypsus.net/repo/xorg111/$arch

Strumenti

Catalyst-hook

Con catalyst-hookAUR la funzione di ricompilazione automatica è affidata all' HOOKS fglrx tramite mkinitcpio. Questo sostanzialmente è la stessa cosa che fa catalyst-dkms da [community]. Prima di aggiornare il modulo fglrx, si aggiorni il pacchetto linux-headers.

Questo hook richiamerà il comando catalyst_build_module per aggiornare il modulo fglrx alla versione del proprio nuovo kernel, ed in aggiunta lancerà il comando catalyst_build_module remove per rimuovere i moduli fglrx non più necessari.

Nota: Se si utilizza questa funzionalità è importante controllare il processo di installazione di linux (o qualsiasi altro kernel). fglrx-hook vi informerà dell'esito positivo.
Nota: Se state utilizzando un kernel personalizzato e si utilizza un file di configurazione di mkinitcpio non standard (Es. il linux-zen utilizza /etc/mkinitcpio-zen.conf), bisogna aggiungere manualmente fglrx alla stringa HOOKS nel file di configurazione per abilitare l'auto-ricompilazione all'aggiornamento del kernel.
Nota: Se si sta usando un kernel non stock, è necessario rimuovere linux-header da SyncFirst in /etc/pacman.conf dopo aver eseguito 'catalyst_build_module auto'.

Catalyst-generator

catalyst-generatorAUR è un pacchetto in grado di costruire e installare i moduli fglrx generando un pacchetto fruibile da pacman. La differenza tra questo metodo e catalyst-hook è che questo è completamente manuale mentre catalyst-hook fa tutto in automatico.

Il suo scopo è generare il pacchetto catalyst-{kernver} utilizzando makepkg e installarlo con l'ausilio di pacman; {kernver} è la versione del kernel con il quale è stato compilato il pacchetto, ad esempio : il pacchetto catalyst-2.6.35-ARCH è stato compilato sul kernel 2.6.35-ARCH .

Per compilare ed installare il pacchetto catalyst-{kernver} per il kernel avviato come utente senza privilegi (metodo sicuro) usare ilc comando: catalyst_build_module. Vi verrà chiesta la password di root per procedere all'installazione.

Ecco il sommario delle operazioni da svolgere:

  1. Con i privilegi di root:# catalyst_build_module remove. Questo comando eliminerà i pacchetti catalyst-{kernver} non utilizzati
  2. Poi come utente senza privilegi:$ catalyst_build_module ''nuova-versione-kernel'' dove nuova-versione-kernel''è la versione del kernel che avete appena aggiornato/installato, Es:catalyst_build_module 2.6.36-ARCH oppure: catalyst_build_module all il quale compilerà il pacchetto catalyst-{kernver} per tutti i kernel presenti.
  3. Se volete rimuovere catalyst-generator - si consiglia di eseguire da root questo comando: catalyst_build_module remove_all

prima di rimuovere catalyst-generator (con questo comando si elimineranno tutti i pacchetti catalyst-{kernver} presenti nel sistema)

catalyst-generator non è in grado di rimuovere tutti i pacchetti catalyst-{kernver} automaticamente mentre lo si rimuove perché non ci può essere ad esempio più di una istanza di pacman in esecuzione. Se si dimentica di dare il comando catalyst_build_module remove_all prima di digitare pacman -R catalyst-generator - catalyst-generator vi chiederà quale pacchetto catalyst-{kernver} si dovrà rimuovere dopo la rimozione di catalyst-generator.

Nota: Se si visualizza un errore del tipo:
WARNING: Package contains reference to $srcdir
WARNING: '.pkg' is not a valid archive extension.

mentre si compila il pacchetto catalyst-{kernver} - non c'è da preoccuparsi, è un normale avvertimento.

Catalyst-daemon

Attenzione: initscript non è più supportato. Se possibile non usare questo metodo.
Attenzione: Systemd non è compatibile con questo sistema.

catalyst-daemonAUR, come suggerisce il nome, associa la funzionalità di 'ricompilazione automatica' ad un demone chiamato autofglrx, il quale viene lanciato ad ogni avvio del sistema e controlla se il kernel è stato aggiornato. Nel caso si verificasse che il kernel è stato aggiornato, esso ricostruirà il modulo fglrx. Se il kernel non è stato aggiornato, allora si incarica di caricare l'ultimo modulo fglrx ricostruito (tutta questa operazione dura soltanto 20ms su processori a 2.4 GHz).

La funzione check di Autofglrx effettua un confronto del tempo di boot del kernel standard (fornito da `uname -v') con il tempo di avvio di un kernel in cui è stato costruito il modulo fglrx. E 'in grado di fare tale comparazione perché aggiunge l'informazione `uname -v` per la descrizione del modulo fglrx mentre ricompila il modulo.

La funzione build di autofglrx chiamerà catalyst_build_module per costruire il modulo e catalyst_build_module remove per eliminare i moduli fglrx inutili e più vecchi.

Nota: Quando si installa autofglrx, esso aggiungerà il demone all'inizio della lista DAEMONS nel file /etc/rc.conf. È possibile tranquillamente spostarlo a seconda delle esigenze, ma deve essere posto sempre prima di un desktop manager o di demoni di X, e non deve essere avviato in background (@) poiché non implementa tale funzionalità.
Nota: Se si tanno utilizzando flags di compilazione personali e si hanno problemi con il demone, si aggiungano tali flags nel file /usr/bin/catalyst_build_module.


Caratteristiche

Desktop senza Tearing

Presentata con i Catalyst 11.1, la funzione 'Desktop senza Tearing' riduce il tearing nelle applicazioni 2d, 3d e video. Per quanto è possibile saperne, ogni frame renderizzato che passa per il server X viene memorizzato in un triplo buffer e sincronizzato col refresh verticale del monitor. Tenere presente che questa procedura occupa risorse supplementari.

Per abilitare la funzione 'Desktop senza Tearing' eseguire amdcccle e andare su:Display Options ~~> Tear Free.

oppure da utente root eseguire:

 aticonfig --set-pcs-u32=DDX,EnableTearFreeDesktop,1

Per disabilitarla utilizzare amdcccle oppure da utente root eseguire:

 aticonfig --del-pcs-key=DDX,EnableTearFreeDesktop
 

Accelerazione video

Video Acceleration API (VA API) è una libreria open source ("libVA") compresa di specifiche API che permette l'accesso all'accelerazione grafica hardware (GPU) per il processing dei contenuti video su sistemi Linux e basati su UNIX. L'obiettivo principale delle VA API è di permettere la decodifica di video mediante hardware a vari entry-points (VLD, IDCT, Motion Compensation, deblocking) per quanto riguarda i principali codec odierni (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, e VC-1/WMV3).

Nel mese di Novembre 2009, le VA-API hanno ottenuto un nuovo backend proprietario, xvba-video, che permette alle applicazioni abilitate all'uso delle VA-API di sfruttare i chipset AMD Radeon UVD2 attraverso la libreria X-Video Bitstream Acceleration API di AMD.

Il supporto a XvBA e a xvba-video è ancora in fase di sviluppo, nonostante ciò mplayer (e relativi frontend) garantiscono un funzionamento decisamente soddisfacente. Per avvalersi delle funzionalità VA-API rese disponibili da mplayer è necessario compilare il pacchetto [http://xvba-video ed installare mplayer-vaapi (disponibile nel repo community) & libva (disponibile nel repository extra).

Installati questi pacchetti è sufficiente impostare come output video il parametro vaapi:gl.

Esempio: per Mplayer:

$ mplayer -vo vaapi:gl movie.avi

Queste opzioni possono essere inserite nel file di configurazione di MPlayer. Vedere Mplayer per ulteriori informazioni.

Esempio: per smplayer:

Opzioni -> Preferenze -> Generale -> Video (tab) -> Driver di uscita: Definito dall'utente... : vaapi:gl
Opzioni -> Preferenze -> Generale -> Video (tab) -> Doppio Buffering on
Opzioni -> Preferenze -> Avanzate -> Opzioni per MPlayer -> Opzioni: -vo vaapi
Opzioni -> Preferenze -> Generale -> togliere il segno di spunta da "abilita schermata"

Opzioni -> Preferenze -> Performance -> decoding (inserire il numero dellaa CPU)

Nota: Se l'opzione Desktop Senza Tearing è abilitata, è preferibile utilizzare
Options -> Preferences -> General -> Video (tab) -> Output driver: vaapi 
Nota: Se l'uscita video vaapi:gl non funziona - controllare
 vaapi, vaapi:gl2 or simply xv(0 - AMD Radeon AVIVO Video)

Ad esempio per VLC:

Tools -> Preferences -> Input & Codecs -> Use GPU acceleration

Non dimenticate di attivare v-sync in amdcccle:

3D -> More Settings -> Wait for vertical refresh = Always On
Nota: Se si utilizza compiz/kwin tenere presente che l'unico modo di evitare il "flickering" dei video consiste nell'eseguire la riproduzione a pieno schermo, abilitando l'opzione "Unredirect Fullscreen is off".

In compiz, è necessario impostare "Redirected Direct Rendering" nelle "Opzioni Generali" del pannello di gestione ccsm. Nel caso dovessero verificarsi episodi di flickering provare a disabilitare quest'opzione nel ccsm.

In kwin è disabilitato di default, ma se si dovesse verificare il flickering, provare a modificare il valore di "Suspend desktop effects for fullscreen windows" in System Settings -> Desktop Effects -> Advanced.

Strumenti per la frequenza GPU/Mem, Temperatura, Velocità ventole, Overclock utilities

Si possono ottenere i clock GPU/Mem tramite il comando: $ aticonfig --od-getclocks

Velocità ventole: aticonfig --pplib-cmd "get fanspeed 0"

Temperatura: $ aticonfig --od-gettemperature

Per settare la velocità delle ventole: $ aticonfig --pplib-cmd "set fanspeed 0 50" Dove 50 è la velocità in percentuale.

Per operazioni di underclock/overclock è più semplice utilizzare programmi ad interfaccia grafica, come ATi Overclocking Utility, che è molto semplice da usare ma richiede le librerie QT per funzionare. La versione i686 è reperibile qui, mentre la x86-64 while x86_64 - qui.

Un'altro, strumento per operare questo tipo di modifiche è AMDOverdriveCtrl. La sua homepage è qui, si possono reperire i pacchetti per arch su AUR o dal repository [catalyst].

Double Screen (Dual Head / Dual Screen / Xinerama)

Introduzione

Prima di tutto: bisogna sapere che non esiste una singola soluzione, le configurazioni possono essere diverse. È quindi necessario adattare questo paragrafo alle proprie esigenze. Non è da escludere che dovranno essere fatti più tentativi. Pertanto salvare il file /etc/X11/xorg.conf attuale prima di iniziare ogni cambiamento. Sarebbe utile anche saper recuperare la vecchia configurazione da tty
  • In questa sezione si vedrà come installare due schermi di diverse dimensioni su una sola scheda grafica con 2 differenti output (DVI + HDMI) usando la configurazione "Big desktop".
  • La soluzione Xinerama ha degli inconvenienti, specialmente perchè non è compatibile con XrandR. Per questo motivo, tale soluzione non è consigliata.
  • La soluzione "Dual Head" permette di avere due differenti sessioni (una per schermo). Potrebbe questa essere una soluzione preferibile anche se non da la possibilità di spostare le finestre da uno schermo all'altro. Se si ha un solo schermo si dovrà definire il mouse all'interno di Xorg per le 2 sessioni all'interno della sezione Server Layout.


Documentazione ATI

ATI Catalyst Control Center

La GUI fornita da ATI è uno strumento veramente utile e versatile. Per usarla laciare da terminale

amdcccle
Nota: Funziona tranquillamente anche con gksu se usate GNOME o altri DE/WM
Attenzione: Non lanciate amdcccle con il comando sudo perchè sudo rende amministratori ma usa le informazioni dell'account utente. Con kdesu si diventa root in tutto e per tutto

Installazione

Facile ma importante: assicurarsi che tutto sia collegato correttamente, che tutto sia acceso, e di conoscere le caratterische fondamentali dell'hardware in questione (dimensione, risoluzione, frequenza di aggiornamento ...) Normalmente, gli schermi vengono riconosciuti al boot ma non sempre la loro configurazione risulta essere corretta, specialmente se si sta usando una configurazione base di Xorg.

Il primo passo è quello di assicurarsi che essi saranno riconosciuti dal vostro DE / Xorg. Per questo, è necessario generare un file per X per i 2 schermi :

$ aticonfig --initial --desktop-setup=horizontal --overlay-on=1

o

$ aticonfig --initial=dual-head --screen-layout=left
Nota: La sovrapposizione overlay è molto importante in quanto permette di condivire un pixel (o più) tra i due schermi.
Tip: Per tutte le configurazioni possibili, non si esiti a dare un aticonfig in un terminale per prendere visioni di tutte le possibili opzioni.

Normalmente, si dovrebbe avere un file base che è possibile editare per aggiungere le risoluzioni desiderate. È importante precisare la risoluzione voluta specialmente se si hanno schermi di dimensioni diverse. Aggiungere nella sezione "screen":

SubSection "Display"
Depth 24
Modes "1200x800"
EndSubSection

Da ora in poi non modificare manualmente xorg.conf, usare la GUI di ATI. Riavviare X e assicurarsi che i due schermi siano supportati e che la risoluzione sia corretta. (Gli schermi sono indipendenti).

Configurazione

Dopo aver lanciato ATI control center come root si potrà accedere ai menù e scegliere la configurazione che si preferisce per il proprio sistema. Alla fine, riavviare X e tutto dovrebbe funzionare.

Non esitate a controllare più volte xorg.conf prima di riavviare il server grafico. A questo punto, nella sotto sezione "Display" della sezione "Screen" si può vedere "Virtual" command line. La risoluzione deve essere la somma di entrambi gli schermi. La sezione "Server Layout" dice tutto il resto.

Risoluzione problemi

Se si hanno problemi con i driver, la causa più probabile è una configurazione errata del file xorg.conf.

È possibile parsare il file /var/log/Xorg.0.log in cerca di errori tramite questi comandi:

grep '(EE)' /var/log/Xorg.0.log
grep '(WW)' /var/log/Xorg.0.log

Freeze delle applicazioni 3D Wine

Se si usano applicazioni 3D con Wine e si riscontrano problemi, provare a disabilitare il TLS. Per fare ciò, usare aticonfig o editare /etc/X11/xorg.conf. Usando aticonfig:

# aticonfig --tls=off

O editando /etc/X11/xorg.conf; aggiungendo Option "UseFastTLS" "off" alla sezione Device.

Riavviare X.

Problemi con i colori video

Si può ancora usare vaapi:gl per evitare lo sfarfallio video, ma senza accelerazione video.

Eseguire mplayer senza l'opzione -vo vaapi.

Per smplayer rimuovere -vo vaapi dalle opzioni -> Preferenze -> Avanzate -> Opzioni per MPlayer -> Opzioni: -vo vaapi

Inoltre per smplayer è possibile tranquillamente attivare lo screenshot.

KWin e composite

È possibile utilizzare XRender se il rendering con OpenGL è lento. Tuttavia, XRender potrebbe anche essere più lento di OpenGL a seconda della scheda. XRender risolve anche problemi di artefatti grafici in alcuni casi.

Schermo nero con completo blocco dopo riavvio o startx

Assicurarsi di aver abilitato l'opzione nomodeset sulla linea del kernel nel file di configurazione del proprio bootloader (vedere #Configurazione per ulteriore informazioni).

Chiamate hardware ACPI difettose

E' possibile che fglrx non cooperi bene con le chiamate hardware ACPI del sistema, quinid si autodisabilita e non vi è alcun output su schermo.

Provare ad eseguire:

  aticonfig --acpi-services=off

KDM scompare dopo il logout

Se si sta eseguendo il driver proprietario catalyst e si ottiene una console (tty1) invece della schermata KDM quando si effettua il logout, bisogna indicare a KDM di riavviare il server X dopo ogni logout, editare il file /usr/share/config/kdm/kdmrc e decommentare la seguente linea sotto la sezione [X-:*-Core]:

TerminateServer=True

KDM dovrebbe adesso apparire quando si effettua il logout da KDE.

Il Direct Rendering non funziona

Questo problema può accadere utilizzando i driver proprietari catalyst.

Attenzione: Quest'errore può anche accadere nel caso in cui non si sia riavviato il sistema dopo l'installazione o l'aggiornamento dei driver catalyst. Il sistema cerca di caricare il modulo fglrx.ko in modo tale da far funzionare il driver.

Se si hanno problemi con il direct rendering, si lanci da terminale:

   $ LIBGL_DEBUG=verbose glxinfo > /dev/null

All'inizio dell'output solitamente viene dato un messaggio d'errore che spiega il perchè del mancato funzionamento del direct rendering.

Gli errori più comuni e le relative soluzioni sono:

   libGL error: XF86DRIQueryDirectRenderingCapable returned false
  • Assicurarsi di caricare il modulo agp corretto per il proprio chipset AGP prima di avviare il modulo kernel fglrx. Per determinare il modulo agp necessario, si lanci hwdetect --show-agp, quindi assicurarsi che tutti i moduli elencati col precedente comando siano nella sezione MODULES di /etc/rc.conf, prima di fglrx.
   libGL error: failed to open DRM: Operation not permitted
   libGL error: reverting to (slow) indirect rendering
   libGL: OpenDriver: trying /usr/lib/xorg/modules/dri//fglrx_dri.so
   libGL error: dlopen /usr/lib/xorg/modules/dri//fglrx_dri.so failed
   (/usr/lib/xorg/modules/dri//fglrx_dri.so: cannot open shared object file: No such file or directory)
   libGL error: unable to find driver: fglrx_dri.so   


  • Qualcosa non è stato installato correttamente. Se il percorso nel messaggio d'errore precedente è /usr/X11R6/lib/modules/dri/fglrx_dri.so, allora assicurarsi di uscire completamente dal sistema e quindi rientrare. Nel caso in cui si usi un manager di login grafico (gdm, kdm, xdm), assicurarsi che /etc/profile venga creato ogni volta che si effettua il login. Questo solitamente si realizza aggiungendo source /etc/profile in /.xsession o ~/.xinitrc, ma potrebbe variare a seconda dei manager di login.
  • Se il percorso del messaggio d'errore è /usr/lib/xorg/modules/dri/fglrx_dri.so, allora qualcosa non è stato installato correttamente. Si provi a reinstallare il pacchetto catalyst.

Errori come:

   fglrx: libGL version undetermined - OpenGL module is using glapi fallback

potrebbero essere causati dall'avere più versioni di libGL.so sul proprio sistema. Si lanci:

   # updatedb
   $ locate libGL.so

Ciò dovrebbe dare il seguente output:

   $ locate libGL.so
   /usr/lib/libGL.so
   /usr/lib/libGL.so.1
   /usr/lib/libGL.so.1.2
   $

Questi sono i soli tre libGL.so file che si dovrebbero avere nel proprio sistema. Se se ne hanno di più (es. /usr/X11R6/lib/libGL.so.1.2), allora si provveda a rimuoverli. Questo dovrebbe risolvere il problema.

Nel caso in cui non si dovessero ottenere errori che indichino la presenza di problemi. Se si usa X11R7, ci si assicuri di non avere questi file sul proprio sistema:

   /usr/X11R6/lib/libGL.so.1.2
   /usr/X11R6/lib/libGL.so.1

Problemi con l'ibernazione/sospensione

La parte video fallisce nel tentativo di di riprendersi dal suspend2ram

I driver proprietari ATI catalyst non riescono a riavviarsi dalla sospensione se il framebuffer è abilitato. Per disabilitare il framebuffer, si aggiunga vga=0 all'opzione kernel in /boot/grub/menu.lst, ad esempio:

kernel /vmlinuz-linux root=/dev/sda3 resume=/dev/sda2 ro vga=0

Blocco del sistema/Hard lock

  • I driver del framebuffer radeonfb erano noti per causare problemi di questa natura. Se il kernel è stato compilato con il supporto per radeonfb, può essere utile provare un kernel diverso per vedere se i problemi si risolvono.
  • Se si notano freeze del sistema durante spegnimento, riavvio, passaggio a tty o altre operazioni in cui si "esce" dal DE, attivare il KMS come indicato nella sezione ATI Catalyst (Italiano)#Configurazione.

Conflitti hardware

Le schede radeon usate insieme ad alcune versione del chipset nForce3 (per esempio, nForce 3 250Gb) non hanno l'accelerazione 3D. Attualmente la causa di questo problema è sconosciuta, ma alcune fonti indicano che è possibile ottenere l'accelerazione con questa combinazione hardware avviando Windows con i drive di nVIDIA e poi riavviando il sistema. Si può controllare il chipset dando questo comando da root:

# dmesg | grep agp

Se si ottiene qualcosa di simile:

agpgart: Detected AGP bridge 0
agpgart: Setting up Nforce3 AGP.
agpgart: aperture base > 4G

si sta utilizzando il chipset nForce3.

Se, inoltre, dando questo comando:

$ tail -n 100 /var/log/Xorg.0.log | grep agp

si ottiene qualcosa del tipo:

(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV"

allora si è affetti da questo bug.

Altre fonti indicano che in alcune situazioni può essere utile fare il downgrade del BIOS della scheda madre, ma ciò non può essere verificato in tutti i casi. Oltretutto, un downgrade del BIOS andato male può rendere inutilizzabile l'hardware, quindi prestare attenzione.

Vedere il bug http://bugzilla.kernel.org/show_bug.cgi?id=6350 per ulteriori informazioni e possibili soluzioni.

Blocchi temporanei durante l'esecuzione di video

Questo problema può verificarsi quando si utilizzano i driver proprietari catalyst.

Se si verificano in modo casuale blocchi temporanei della durata di pochi secondi fino a parecchi minuti, durante l'esecuzione di video con mplayer, controllare /var/log/messages.log per messaggi simili a questo:

Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium [<f8bc628c>] ? ip_firegl_ioctl+0x1c/0x30 [fglrx]
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium [<c0197038>] ? vfs_ioctl+0x78/0x90
Nov 28 18:31:56 pandemonium [<c01970b7>] ? do_vfs_ioctl+0x67/0x2f0
Nov 28 18:31:56 pandemonium [<c01973a6>] ? sys_ioctl+0x66/0x70
Nov 28 18:31:56 pandemonium [<c0103ef3>] ? sysenter_do_call+0x12/0x33
Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160
Nov 28 18:31:56 pandemonium =======================

L'aggiunta dell'opzione nopat a /boot/grub/menu.lst e il riavvio hanno risolto il problema, almeno nel mio caso.

"aticonfig: No supported adaptaters detected"

Se quando viene lanciato il comando:

# aticonfig --initial

si ottiene come output:

aticonfig: No supported adaptaters detected

è ragionevole pensare che i driver Catalyst possano funzionare lo stesso editando a mano il file xorg.conf:

Section "Device"
 Identifier "ATI radeon ****"
 Driver "fglrx"
EndSection

dove **** va rimpiazzato con il modello della propria scheda, ad esempio 6870 per la HD 6870 e 6310 per la E-350.

Xorg ora si avvierà ed sarà possibile utilizzare amdcccle invece di aticonfig anche se risulterà un avviso: "AMD Unsupported hardware".

È possibile rimuovere questo avviso utilizzando il seguente script:

#!/bin/sh
DRIVER=/usr/lib/xorg/modules/drivers/fglrx_drv.so
for x in $(objdump -d $DRIVER|awk '/call/&&/EnableLogo/{print "\\x"$2"\\x"$3"\\x"$4"\\x"$5"\\x"$6}'); do
 sed -i "s/$x/\x90\x90\x90\x90\x90/g" $DRIVER
done

Riavviare!

Supporto a WebGL in Chromium

Per qualche ragione Google ha messo in balcklist il driver Catalyst per Linux per ciò che concerne l'accelerazione WebGL nei browser Chromium/Chrome.

Per ovviare a ciò è possibile modificare il file /usr/share/applications/chromium.desktop ed aggiungere la flag --ignore-gpu-blacklist alla riga Exec in modo che appaia così:

/usr/share/applications/chromium.desktop
....
Exec=chromium %U --ignore-gpu-blacklist
....

È anche possibile eseguire il browser da riga di comando direttamente con la flag $--ignore-gpu-blacklist:

$ chromium --ignore-gpu-blacklist
Attenzione: I driver Catalyst non supportano l'estensione GL_ARB_robustness, è possibile che un sito malevolo possa sfruttare questa mancanza per attuare un attacco DDOS sulla scheda grafica, per ulteriori informazioni consultare: [1]

Freeze guardando video flash con flashplugin

Modificare /etc/adobe/mms.cfg per renderlo simile a questo:

#EnableLinuxHWVideoDecode=1
OverrideGPUValidation=true

Artefatti e movimenti lenti delle finestre con GNOME 3

È possibile provare questa soluzione che sembra essere una buona soluzione per molti utenti. Aggiungere la linea:

export CLUTTER_VBLANK=none

nel file ~/.profile o in /etc/profile.

Riavviare X o tutto il sistema.

Impossibile usare la modalità fullscreen con risoluzione 1920x1080

Usando la gui amdcccle è possibile selezionare il Display, cliccare su adjustament e settare Underscan su 0% (di default è 15%).

In alternativa, editare xorg.conf e aggiungere questa opzione:

Option      "DPMS" "true"

La sezione Monitor dovrebbe risultare simile a questa.

Section "Monitor"
       Identifier   "0-DFP5"
       Option      "VendorName" "ATI Proprietary Driver"
       Option      "ModelName" "Generic Autodetecting  Monitor"
       Option      "DPMS" "true"
       Option      "PreferredMode" "1920x1080"
       Option      "TargetRefresh" "60"
       Option      "Position" "0 0"
       Option      "Rotate" "normal"
       Option      "Disable" "false"
EndSection