Difference between revisions of "AMD Catalyst (Italiano)"
m (→Problemi con i colori video: -va --> -vo; allineata) |
m (→Catalyst-daemon: rm old section) |
||
(31 intermediate revisions by 2 users 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}} | ||
− | |||
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. | ||
− | Conosciuti precedentemente come ''fglrx''('''F'''ire'''GL''' and '''R'''adeon '''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 | + | Conosciuti precedentemente come ''fglrx''('''F'''ire'''GL''' and '''R'''adeon '''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 | + | <s>Un tempo, catalyst era un pacchetto precompilato scaricabile dal repostory [extra] di Arch Linux, ma da Marzo 2009, il [https://www.archlinux.org/news/ati-catalyst-support-dropped/ supporto ufficiale è stato abbandonato] a causa della poco soddisfacente qualità e velocità in termini di sviluppo di questo driver proprietario.</s> |
+ | Da ottobre 2012, tali driver sono rientrati nei [[Official Repositories (Italiano)|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 [https://bbs.archlinux.org/viewtopic.php?pid=1166052#p1166052/ 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 [[Wikipedia:Radeon|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 source{{Pkg|xf86-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]]. | 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 [[Wikipedia:Radeon|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 source{{Pkg|xf86-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]]. | ||
Line 26: | Line 26: | ||
==Installazione== | ==Installazione== | ||
− | + | 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. | |
− | |||
− | |||
− | |||
− | [ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | 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 (Italiano)|pacman]] i pacchetti: {{pkg|catalyst-dkms}} e {{pkg|catalyst-utils}}. | ||
− | + | Assicurarsi di aver installato anche il pacchetto {{pkg|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 (Italiano)|Systemd]].}} | |
− | {{ | + | 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]. |
− | + | ====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. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | === | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | Se | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | 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 {{ic|/etc/pacman.conf}} e aggiungere SOPRA ogni altro repository: | ||
+ | Per [Catalyst]: | ||
[catalyst] | [catalyst] | ||
− | Server = http://catalyst.apocalypsus.net/repo/catalyst/$arch | + | <nowiki>Server = http://catalyst.apocalypsus.net/repo/catalyst/$arch</nowiki> |
− | + | Per [Catalyst hd234k]: | |
− | + | [catalyst-hd234k] | |
− | + | <nowiki>Server = http://catalyst.apocalypsus.net/repo/catalyst-hd234k/$arch</nowiki> | |
− | + | Ora è necessario aggiungere [[User:Vi0L0|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 {{pkg|catalyst-dkms}} e {{pkg|catalyst-utils}}: | |
− | + | # pacman -Syy | |
− | + | # pacman -Su | |
− | + | # pacman -S catalyst-dkms e catalyst-utils | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | Per | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | Server = http://catalyst.apocalypsus.net/repo/catalyst-hd234k/$arch | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {{ | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {{ | ||
− | |||
− | |||
− | }} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | # pacman - | ||
− | # pacman -S | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {{ | + | {{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: {{pkg|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 (Italiano)|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 (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}}. | ||
− | + | 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}}; | ||
− | + | 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}}). | |
− | {{ | ||
− | |||
− | |||
− | + | ''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 (Italiano)|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.}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ==== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | {{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 388: | Line 124: | ||
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.}} |
− | + | ===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]]. | ||
+ | ====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: | ||
+ | # 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 {{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}}.}} | ||
+ | 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|Vedere [[#Double Screen (Dual Head / Dual Screen / Xinerama)]] per maggiori informazioni sulla configurazione per i due monitor.}} | ||
+ | Ora è possibile comparare il file {{ic|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. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
{{bc|1= | {{bc|1= | ||
Section "ServerLayout" | Section "ServerLayout" | ||
Line 465: | Line 182: | ||
}} | }} | ||
− | + | {{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 [https://bbs.archlinux.org/viewtopic.php?id=57084 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 {{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'''. | ||
− | + | =====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. | |
− | |||
− | |||
− | |||
− | |||
==== Disabilitare mode setting ==== | ==== Disabilitare mode setting ==== | ||
Line 485: | Line 196: | ||
Se si usa [[GRUB Legacy (Italiano)|GRUB Legacy]] editare {{ic|/boot/grub/menu.lst}} e aggiungere ''nomodeset'' alla riga del kernel: | Se si usa [[GRUB Legacy (Italiano)|GRUB Legacy]] editare {{ic|/boot/grub/menu.lst}} e aggiungere ''nomodeset'' alla riga del kernel: | ||
− | + | kernel /boot/vmlinuz-linux root=/dev/sda1 ro '''nomodeset''' | |
− | Per [[GRUB (Italiano)|GRUB]], editare {{ic|/etc/default/grub}} e aggiungere | + | Per [[GRUB (Italiano)|GRUB]], editare {{ic|/etc/default/grub}} e aggiungere {{ic|nomodeset}} ai parametri del kernel: |
− | + | GRUB_CMDLINE_LINUX="nomodeset" | |
− | GRUB_CMDLINE_LINUX="nomodeset" | ||
− | |||
In seguito, eseguire da root: | In seguito, eseguire da root: | ||
Line 496: | Line 205: | ||
# grub-mkconfig -o /boot/grub/grub.cfg | # grub-mkconfig -o /boot/grub/grub.cfg | ||
+ | Per [[Syslinux (Italiano)|Syslinux]], editare {{ic|/boot/syslinux/syslinux.cfg}} e aggiungere ''nomodeset'' alla riga {{ic|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 {{Ic|startx}} o utilizzando GDM/KDM, e verificare che il direct rendering sia attivato eseguendo il seguente comando in un terminale: | Infine, eseguire Xorg con {{Ic|startx}} o utilizzando GDM/KDM, e verificare che il direct rendering sia attivato eseguendo il seguente comando in un terminale: | ||
$ 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 | + | 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 {{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]]. | ||
+ | |||
+ | ===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. | ||
+ | |||
+ | 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 per prima cosa {{ic|PKGBUILD}} e {{ic|catalyst.install}} da [https://aur.archlinux.org/packages.php?ID=29111 AUR]. |
− | === | + | #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}}. | ||
+ | |||
+ | #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=== | ||
+ | |||
+ | 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 {{AUR|catalyst-total-pxp}} da [[Arch User Repository|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}}, {{pkg|xf86-video-intel}} e {{pkg|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 [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]]].}} | ||
+ | |||
+ | Ora si può switchare tra le due GPU così: | ||
+ | |||
+ | {{bc|1= | ||
+ | # aticonfig --px-igpu # GPU integrata | ||
+ | # aticonfig --px-dgpu # GPU discreta | ||
+ | }} | ||
+ | |||
+ | Ricordarsi che fglrx va configurato in {{ic|/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 {{ic|aticonfig --px-Xgpu}}. | ||
+ | * Running {{ic|switchlibGL}}. | ||
+ | * Adding/removing fglrx into/from {{ic|/etc/modules-load.d/catalyst.conf}}. | ||
− | + | Uso: | |
− | {{ | + | {{bc|1= |
+ | # 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 {{ic|xorg.conf}} | |
+ | {{bc|1= | ||
+ | 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 (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]. | ||
− | [http:// | + | ===[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. | ||
+ | }} | ||
− | ==== | + | ==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 577: | Line 367: | ||
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 380: | ||
}} | }} | ||
{{Nota|Se l'uscita video '''vaapi:gl''' non funziona - controllare | {{Nota|Se l'uscita video '''vaapi:gl''' non funziona - controllare | ||
− | '''vaapi''', '''vaapi:gl2''' or simply '''xv(0 - AMD Radeon [ | + | '''vaapi''', '''vaapi:gl2''' or simply '''xv(0 - AMD Radeon [[wikipedia:Avivo|AVIVO Video]]) |
}} | }} | ||
Ad esempio per VLC: | Ad esempio per VLC: | ||
− | Tools -> Preferences -> Input & Codecs -> Use GPU | + | Tools -> Preferences -> Input & Codecs -> Use GPU accelerated decoding |
Non dimenticate di attivare v-sync in '''amdcccle''': | Non dimenticate di attivare v-sync in '''amdcccle''': | ||
Line 605: | Line 396: | ||
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. | ||
− | === | + | === Strumenti per la frequenza GPU/Mem, Temperatura, Velocità ventole, Overclock utilities === |
− | + | Si possono ottenere i clock GPU/Mem tramite il comando: {{ic| $ aticonfig --od-getclocks}} | |
− | + | ||
− | + | Velocità ventole: {{ic|aticonfig --pplib-cmd "get fanspeed 0"}} | |
− | |||
− | + | Temperatura: {{ic|$ aticonfig --od-gettemperature}} | |
− | |||
− | |||
− | |||
− | + | Per settare la velocità delle ventole: {{ic|$ 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. | 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. | ||
Line 629: | Line 410: | ||
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 == | ||
+ | Se si hanno problemi con i driver, la causa più probabile è una configurazione errata del file {{ic|xorg.conf}}. | ||
+ | |||
+ | È possibile parsare il file {{ic|/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 {{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 643: | Line 485: | ||
=== KWin e composite === | === 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. | + | È 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, come ad esempio il ridimensionamento di Konsole. |
=== Schermo nero con completo blocco dopo riavvio o startx === | === Schermo nero con completo blocco dopo riavvio o startx === | ||
Line 656: | Line 498: | ||
=== KDM scompare dopo il logout === | === 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 | + | 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 {{ic|/usr/share/config/kdm/kdmrc}} e decommentare la seguente linea sotto la sezione [X-:*-Core]: |
− | |||
− | |||
− | |||
TerminateServer=True | TerminateServer=True | ||
Line 693: | Line 532: | ||
'''fglrx: libGL version undetermined - OpenGL module is using glapi fallback''' | '''fglrx: libGL version undetermined - OpenGL module is using glapi fallback''' | ||
potrebbero essere causati dall'avere più versioni di {{ic|libGL.so}} sul proprio sistema. Si lanci: | potrebbero essere causati dall'avere più versioni di {{ic|libGL.so}} sul proprio sistema. Si lanci: | ||
− | + | ||
+ | # updatedb | ||
$ locate libGL.so | $ locate libGL.so | ||
Ciò dovrebbe dare il seguente output: | Ciò dovrebbe dare il seguente output: | ||
+ | |||
$ locate libGL.so | $ locate libGL.so | ||
/usr/lib/libGL.so | /usr/lib/libGL.so | ||
Line 706: | Line 547: | ||
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: | 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.2 | ||
/usr/X11R6/lib/libGL.so.1 | /usr/X11R6/lib/libGL.so.1 | ||
=== Problemi con l'ibernazione/sospensione === | === Problemi con l'ibernazione/sospensione === | ||
+ | |||
==== La parte video fallisce nel tentativo di di riprendersi dal suspend2ram ==== | ==== La parte video fallisce nel tentativo di di riprendersi dal suspend2ram ==== | ||
+ | |||
I driver proprietari ATI {{ic|catalyst}} non riescono a riavviarsi dalla sospensione se il framebuffer è abilitato. Per disabilitare il framebuffer, si aggiunga '''vga=0''' all'opzione kernel in {{ic|/boot/grub/menu.lst}}, ad esempio: | I driver proprietari ATI {{ic|catalyst}} non riescono a riavviarsi dalla sospensione se il framebuffer è abilitato. Per disabilitare il framebuffer, si aggiunga '''vga=0''' all'opzione kernel in {{ic|/boot/grub/menu.lst}}, ad esempio: | ||
− | + | ||
− | |||
− | |||
kernel /vmlinuz-linux root=/dev/sda3 resume=/dev/sda2 ro '''''vga=0''''' | kernel /vmlinuz-linux root=/dev/sda3 resume=/dev/sda2 ro '''''vga=0''''' | ||
Line 724: | Line 566: | ||
=== Conflitti hardware === | === 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: | 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 | + | |
+ | # dmesg | grep agp | ||
+ | |||
Se si ottiene qualcosa di simile: | Se si ottiene qualcosa di simile: | ||
+ | |||
agpgart: Detected AGP bridge 0 | agpgart: Detected AGP bridge 0 | ||
agpgart: Setting up Nforce3 AGP. | agpgart: Setting up Nforce3 AGP. | ||
agpgart: aperture base > 4G | agpgart: aperture base > 4G | ||
+ | |||
si sta utilizzando il chipset nForce3. | si sta utilizzando il chipset nForce3. | ||
Se, inoltre, dando questo comando: | Se, inoltre, dando questo comando: | ||
− | tail -n 100 /var/log/Xorg.0.log | grep agp | + | |
+ | $ tail -n 100 /var/log/Xorg.0.log | grep agp | ||
+ | |||
si ottiene qualcosa del tipo: | si ottiene qualcosa del tipo: | ||
+ | |||
(EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV" | (EE) fglrx(0): [agp] unable to acquire AGP, error "xf86_ENODEV" | ||
+ | |||
allora si è affetti da questo bug. | allora si è affetti da questo bug. | ||
Line 744: | Line 594: | ||
Questo problema può verificarsi quando si utilizzano i driver proprietari catalyst. | 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: | + | 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 {{ic|/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 [<c01c64a6>] ? proc_get_sb+0xc6/0x160 | Nov 28 18:31:56 pandemonium [<c01c64a6>] ? proc_get_sb+0xc6/0x160 | ||
Line 756: | Line 607: | ||
Nov 28 18:31:56 pandemonium ======================= | Nov 28 18:31:56 pandemonium ======================= | ||
− | L'aggiunta dell'opzione 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. |
− | === | + | ==="aticonfig: No supported adaptaters detected"=== |
− | |||
− | + | Se quando viene lanciato il comando: | |
− | + | # aticonfig --initial | |
− | |||
− | |||
− | |||
si ottiene come output: | si ottiene come output: | ||
+ | |||
aticonfig: No supported adaptaters detected | aticonfig: No supported adaptaters detected | ||
+ | |||
è ragionevole pensare che i driver Catalyst possano funzionare lo stesso editando a mano il file {{ic|xorg.conf}}: | è ragionevole pensare che i driver Catalyst possano funzionare lo stesso editando a mano il file {{ic|xorg.conf}}: | ||
+ | |||
Section "Device" | Section "Device" | ||
Identifier "ATI radeon ****" | Identifier "ATI radeon ****" | ||
Driver "fglrx" | Driver "fglrx" | ||
EndSection | EndSection | ||
+ | |||
dove ''****'' va rimpiazzato con il modello della propria scheda, ad esempio 6870 per la HD 6870 e 6310 per la E-350. | 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 {{Ic|amdcccle}} invece di {{Ic|aticonfig}} anche se risulterà un avviso: "AMD Unsupported hardware". | Xorg ora si avvierà ed sarà possibile utilizzare {{Ic|amdcccle}} invece di {{Ic|aticonfig}} anche se risulterà un avviso: "AMD Unsupported hardware". | ||
− | È possibile rimuovere questo avviso utilizzando il seguente script : | + | È possibile rimuovere questo avviso utilizzando il seguente script: |
+ | |||
#!/bin/sh | #!/bin/sh | ||
DRIVER=/usr/lib/xorg/modules/drivers/fglrx_drv.so | DRIVER=/usr/lib/xorg/modules/drivers/fglrx_drv.so | ||
Line 785: | Line 637: | ||
sed -i "s/$x/\x90\x90\x90\x90\x90/g" $DRIVER | sed -i "s/$x/\x90\x90\x90\x90\x90/g" $DRIVER | ||
done | done | ||
+ | |||
Riavviare! | Riavviare! | ||
===Supporto a WebGL in Chromium=== | ===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 {{ic|/usr/share/applications/chromium.desktop}} ed aggiungere la flag {{Ic|--ignore-gpu-blacklist}} alla riga {{Ic|Exec}} in modo che appaia così: | + | Per qualche ragione Google ha messo in balcklist il driver Catalyst per Linux per ciò che concerne l'accelerazione WebGL nei browser Chromium/Chrome. |
− | {{hc|/usr/share/applications/chromium.desktop | + | |
+ | Per ovviare a ciò è possibile modificare il file {{ic|/usr/share/applications/chromium.desktop}} ed aggiungere la flag {{Ic|--ignore-gpu-blacklist}} alla riga {{Ic|Exec}} in modo che appaia così: | ||
+ | |||
+ | {{hc|/usr/share/applications/chromium.desktop|2= | ||
.... | .... | ||
Exec=chromium %U --ignore-gpu-blacklist | Exec=chromium %U --ignore-gpu-blacklist | ||
.... | .... | ||
}} | }} | ||
− | È anche possibile eseguire il browser da riga di comando direttamente con la flag {{Ic|$--ignore-gpu-blacklist}} | + | È anche possibile eseguire il browser da riga di comando direttamente con la flag {{Ic|$--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: [http://www.h-online.com/security/news/item/WebGL-as-a-security-problem-1240567.html]}} | {{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: [http://www.h-online.com/security/news/item/WebGL-as-a-security-problem-1240567.html]}} | ||
=== Freeze guardando video flash con flashplugin === | === Freeze guardando video flash con flashplugin === | ||
+ | |||
Modificare {{ic|/etc/adobe/mms.cfg}} per renderlo simile a questo: | Modificare {{ic|/etc/adobe/mms.cfg}} per renderlo simile a questo: | ||
− | |||
− | |||
− | |||
− | |||
+ | #EnableLinuxHWVideoDecode=1 | ||
+ | OverrideGPUValidation=true | ||
=== Artefatti e movimenti lenti delle finestre con GNOME 3 === | === 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: | È possibile provare questa soluzione che sembra essere una buona soluzione per molti utenti. Aggiungere la linea: | ||
− | + | export CLUTTER_VBLANK=none | |
− | |||
− | |||
− | |||
nel file {{ic|~/.profile}} o in {{ic|/etc/profile}}. | nel file {{ic|~/.profile}} o in {{ic|/etc/profile}}. | ||
Line 820: | Line 674: | ||
===Impossibile usare la modalità fullscreen con risoluzione 1920x1080 === | ===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%). |
− | Option "DPMS" "true" | + | |
− | + | In alternativa, editare {{ic|xorg.conf}} e aggiungere questa opzione: | |
+ | |||
+ | Option "DPMS" "true" | ||
La sezione Monitor dovrebbe risultare simile a questa. | La sezione Monitor dovrebbe risultare simile a questa. | ||
− | + | ||
− | Section "Monitor" | + | Section "Monitor" |
Identifier "0-DFP5" | Identifier "0-DFP5" | ||
Option "VendorName" "ATI Proprietary Driver" | Option "VendorName" "ATI Proprietary Driver" | ||
− | Option "ModelName" "Generic Autodetecting Monitor" | + | Option "ModelName" "Generic Autodetecting Monitor" |
Option "DPMS" "true" | Option "DPMS" "true" | ||
Option "PreferredMode" "1920x1080" | Option "PreferredMode" "1920x1080" | ||
Line 838: | Line 693: | ||
Option "Rotate" "normal" | Option "Rotate" "normal" | ||
Option "Disable" "false" | Option "Disable" "false" | ||
− | EndSection | + | EndSection |
− |
Revision as of 15:46, 25 December 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
- 1 Installazione
- 2 Repository xorg-server
- 3 Strumenti
- 4 Caratteristiche
- 5 Risoluzione problemi
- 5.1 Freeze delle applicazioni 3D Wine
- 5.2 Problemi con i colori video
- 5.3 KWin e composite
- 5.4 Schermo nero con completo blocco dopo riavvio o startx
- 5.5 KDM scompare dopo il logout
- 5.6 Il Direct Rendering non funziona
- 5.7 Problemi con l'ibernazione/sospensione
- 5.8 Blocco del sistema/Hard lock
- 5.9 Conflitti hardware
- 5.10 Blocchi temporanei durante l'esecuzione di video
- 5.11 "aticonfig: No supported adaptaters detected"
- 5.12 Supporto a WebGL in Chromium
- 5.13 Freeze guardando video flash con flashplugin
- 5.14 Artefatti e movimenti lenti delle finestre con GNOME 3
- 5.15 Impossibile usare la modalità fullscreen con risoluzione 1920x1080
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.
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.
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.
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
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.
Tutte le informazioni scritte nel paragrafo precedente riguardante il repository non ufficiale di Vi0L0 sono valide anche per i pacchetti AUR:
- CatalystAUR;
- Catalyst-utilsAUR;
- lib32-catalyst-utilsAUR;
- Catalyst-generatorAUR;
- Catalyst-hookAUR;
- Catalyst-daemonAUR.
AUR inoltre contiene pacchetti che non si trovano su alcun repositories. Questi pacchetti sono:
- Catalyst-total-hd234kAUR;
- Catalyst-totalAUR;
- Catalyst-testAUR;
- Lib32-catalyst-testAUR;
- Catalyst-total-pxpAUR;
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
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
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
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
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
/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.
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.
$ fg_glxearsper testare glxears
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.
- Scaricare per prima cosa
PKGBUILD
ecatalyst.install
da AUR.
- Modificare il PKGBUILD. Bisognerà apportare queste tre modifiche:
- Cambiare
pkgname=catalyst
inpkgname=catalyst-KERNEL_NAME
dove KERNEL_NAME è il nome che si preferisce (es. IlMioBelKernel) - Cambiare la dipendeza
linux
in$kernel_name
.
- Cambiare
- Infine compilare ed installare il pacchetto. (
makepkg -i
omakepkg
seguito dapacman -U pkgname.pkg.tar.gz
{{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.
È possibile usare xf86-video-intel 2.20.2-2 da qui; scaricare il pacchetto sul proprio sistema e installarlo con pacman -U
.
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.
/etc/mkinitcpio-zen.conf
), bisogna aggiungere manualmente fglrx alla stringa HOOKS nel file di configurazione per abilitare l'auto-ricompilazione all'aggiornamento del kernel.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:
- Con i privilegi di root:
# catalyst_build_module remove
. Questo comando eliminerà i pacchetticatalyst-{kernver}
non utilizzati - 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
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. }}
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)
Options -> Preferences -> General -> Video (tab) -> Output driver: vaapi
vaapi, vaapi:gl2 or simply xv(0 - AMD Radeon AVIVO Video)
Ad esempio per VLC:
Tools -> Preferences -> Input & Codecs -> Use GPU accelerated decoding
Non dimenticate di attivare v-sync in amdcccle:
3D -> More Settings -> Wait for vertical refresh = Always On
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
- 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.
ATI Catalyst Control Center
La GUI fornita da ATI è uno strumento veramente utile e versatile. Per usarla laciare da terminale
amdcccle
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
overlay
è molto importante in quanto permette di condivire un pixel (o più) tra i due schermi. 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, come ad esempio il ridimensionamento di Konsole.
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.
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 sezioneMODULES
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 aggiungendosource /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
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