Driver AMD proprietari: differenze tra le versioni

Vai alla navigazione Vai alla ricerca
Completata adozione guida
(Adozione guida)
(Completata adozione guida)
Riga 1: Riga 1:
{{Guida da adottare|[[Utente:Spoon|Spoon]]}}
{{Versioni compatibili}}
 
{{Non-free | Un'alternativa completamente libera sono i [[Driver AMD liberi]].}}
 
== Introduzione ==
== Introduzione ==
Questa guida è rivolta ai possessori di schede AMD/ATI che desiderano utilizzare i driver proprietari per la loro scheda grafica. Per installare i driver liberi si veda invece la guida [[Driver AMD liberi]].


Questo how-to spiegherà come installare i driver proprietari forniti da ATI per generare il modulo <code>fglrx</code> necessario al funzionamento del motore 3D delle schede grafiche.
Il panorama dei driver AMD è cambiato considerevolmente dal 2014. Anziché sviluppare separatamente un driver libero e uno proprietario, AMD ha deciso di unificare lo sviluppo: ora il driver di riferimento è il driver libero AMDGPU. Esiste poi un blob binario, utilizzabile insieme a tale driver, che fornisce un surplus di prestazioni e funzionalità, andando così a formare il driver AMDGPU-Pro. Per le schede meno recenti continuano a essere disponibili i driver Catalyst/fglrx.


Come è noto i driver ATI soffrono di una difficile installazione e configurazione. Sfortunatamente (o forse no) esistono molteplici configurazioni hardware che ostacolano l'installazione dei driver. Spesso, anche seguendo un guida perfetta, non si riesce ad attivare l'accelerazione 3D al primo colpo (molto raramente si hanno anche problemi di visualizzazione nel desktop). Solamente con i successivi tentativi (variando anche il metodo, o la guida) solitamente si raggiunge lo scopo prefisso. Il modesto consiglio è di non disperarsi, magari tirare cazzotti pesanti al case, ma provare finché non si riesce.
Si noti che mentre i driver fglrx sono disponibili già pacchettizzati per Debian, la parte proprietaria del driver AMDGPU-Pro non è (ancora) stata pacchettizzata.


== Versioni dei driver ==
Inoltre i driver fglrx soffrono di una difficile installazione e configurazione. Può capitare di non avere successo al primo colpo, o di ottenere risultati scadenti, e a volte è necessario cambiare metodo per raggiungere lo scopo prefisso. Il modesto consiglio è di non disperarsi, magari tirare cazzotti pesanti al case, ma provare finché non si riesce.
{{ Warningbox | Prima di proseguire leggere questo:}}
Con le ultime versioni(>=9.4) dei driver proprietari, [http://packages.debian.org/changelogs/pool/non-free/f/fglrx-driver/fglrx-driver_10-6-1/changelog#versionversion1:9-4-1 ATI ha tolto il supporto] per le schede grafiche con chip r5xx o inferiore (cioè tutte quelle precedenti alla serie HD) dai driver che mantiene aggiornati, e lo ha spostato su di una versione "legacy", la 9.3, che rimane l'unica versione dei driver proprietari a supportarle. Anche questi driver "legacy" limitano il loro supporto dalla serie X2100 alla serie 9500: per schede precedenti a questa ATI fornisce driver obsoleti o non ne fornisce affatto.


Ma il pessimo supporto non si ferma qui. Infatti i driver 9.3 sono presenti nel repository della versione stable di Debian (Lenny), ma in Squeeze è presente solo la versione >=10.6 poiché la 9.3 è [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=454993#24 incompatibile con xorg >=7.5 e con le nuove versioni del kernel]. Inoltre, se utilizzate una configurazione con schede video multiple (crossfire), dovete utilizzare il driver compatibile con la più vecchia.
== Driver AMDGPU-Pro ==


Questa guida rimane quindi valida per chi usa debian stable (Lenny) ed ha una scheda dalla 9500 alla X2100, oppure per chi usa testing (o unstable) ma ha una scheda ATI HDxxxx.
Il driver AMDGPU-Pro è rivolto ai possessori di schede più recenti. Tale driver è stato sviluppato da AMD a partire dal 2014, quando il produttore ha cambiato la propria strategia a proposito dei driver (migliorando nettamente il suo supporto alla comunità open). Esso si basa sul driver libero AMDGPU.


Per tutti gli altri conviene utilizzare i driver (liberi!) [http://www.x.org/wiki/radeon radeon] o i radeonhd (non sono la versione hd dei radeon, ma altri driver), che sono probabilmente già in funzione sulla vostra macchina (e che funzionano egregiamente! Solo le prestazioni in 3d sono inferiori ai driver proprietari). Se non lo fossero basta [[Driver_ATI_Radeon_Open | installarli]].
Al momento non esiste un pacchetto Debian per installare questo driver. Il [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx rilascio più recente] da parte del produttore è datato 12 dicembre 2017. Tra le distribuzioni ufficialmente supportate non compare Debian, ma poiché c'è Ubuntu 16.04 si può comunque provare a tentare l'installazione.


== Software richiesto ==
=== Schede supportate ===


Sebbene i pacchetti per la generazione del modulo <code>fglrx</code> siano disponibili nel repository di Debian, il consiglio è quello di utilizzare l'installer fornito da ATI in quanto più aggiornato.
La versione più recente del driver è la 17.50 e supporta i chip delle schede:
Nel caso in cui si voglia compilare il modulo (operazione necessaria sia con module-assistant che utilizzando l'installer), sarà necessario disporre dei sorgenti del kernel compilati o degli header del kernel installato.
<pre>
Se sulla nostra macchina gira un kernel precompilato Debian, dobbiamo installare gli headers esattamente corrispondenti alla versione che gira (per la quale compileremo il modulo). Per far ciò diamo in un terminale:
RX Vega Series Graphics
<pre>$ uname -r</pre>che restituirà solo la versione. Siamo ora pronti a installare i giusti headers:<pre># aptitude install linux-headers-<risultato del comando precedente></pre>
Vega Frontier Edition
Pro WX-series
Pro WX 9100
Pro Duo
RX 550/560/570/580 Series Graphics
RX 460/470/480 Graphics
R9 Fury/Fury X/Nano Graphics
R9 380/380X/390/390X Graphics
R9 360 Graphics
R9 285/290/290X Graphics
R7 240/250/250X/260/260X/350
R5 340
HD7700/7800/8500/8600
FirePro W9100
FirePro W8100
FirePro W7100
FirePro W5100
FirePro W4300
FirePro W4100
FirePro W2100
FirePro W600
FirePro S-Series
</pre>


I due comandi precedenti possono essere inseriti in un solo comando usando l'apice ` (da non confondere con ') che si ottiene in alcune mappature con Alt Gr + '<pre># aptitude install linux-headers-`uname -r`</pre>
== Driver Catalyst (fglrx) ==


Altri pacchetti necessari affinché l'installazione vada a buon fine, vanno installati attraverso il pacchetto <code>build-essential</code>:
I driver Catalyst/fglrx sono i vecchi driver proprietari per possessori di schede ATI/AMD. Il loro sviluppo si è fermato, per cui essi usciranno progressivamente di scena. Già ora, infatti, non sono più disponibili per Stretch, ovvero l'attuale stable, a causa di incompatibilità con le versioni più recenti del server X. Sono al momento disponibili due driver diversi, una versione "standard" (disponibile su Wheezy e Jessie) e una versione "legacy" (disponibile solo su Wheezy).
<pre># aptitude install build-essential</pre>


{{ Warningbox | Prima di far partire l'installazione di nuovi driver:
=== Schede supportate ===


* Salvate una copia di <code>/etc/X11/xorg.conf</code> , che in caso di problemi andrà sostituita a quella nuova (creata dal configurer).
La versione più recente del pacchetto <code>fglrx-driver</code> è la 15.12-2, che fornisce il supporto per i chip delle seguenti schede:
* Verificate che non sia presente la cartella <code>/usr/share/fglrx/</code>. Se è presente, significa che sono installati dei vecchi driver fglrx. In versioni recenti la cartella è <code>/usr/share/ati/</code>. Per rimuoverli:
<pre>
<pre># cd /usr/share/fglrx/
Radeon R9 200 series, Radeon R7 200 series, Radeon HD 8000, Radeon HD 7000, Radeon HD 6000 and Radeon HD 5000
# sh ./fglrx-uninstall.sh</pre>
</pre>
e seguite le istruzioni.
* Fate un '''<code>aptitude purge</code>''' di vecchi pacchetti di vecchi driver, se sono installati. Per esempio (i nomi dei pacchetti potrebbero essere diversi):
<pre># aptitude purge fglrx-driver fglrx-kernel-src fglrx-control fglrx-kernel-2.6.17-2-686</pre>
}}


== Metodologie di installazione ==
La versione più recente del pacchetto <code>fglrx-legacy-driver</code> è la 8.97.100.7-3, che fornisce il supporto per i chip delle seguenti schede:
<pre>
Radeon HD 4000, Radeon HD 3000 and Radeon HD 2000
</pre>


Per quanto riguarda l'installazione di quelli nuovi, esistono essenzialmente <u>3 metodi alternativi</u>:
== Firmware proprietario ==
# usare l'eseguibile Ati
# creare i pacchetti ''.deb'' partendo dall'eseguibile Ati
# installare i driver dai repository


=== Installazione attraverso l'installer ATI ===
Come capita anche con i driver liberi, può capitare che sia necessario il firmware proprietario per un corretto funzionamento delle schede. Fino a Jessie il pacchetto firmware-linux-nonfree (sezione non-free) forniva il firmware proprietario per vari driver, mentre da Stretch in avanti questo è un metapacchetto che installa pacchetti più specifici per le varie configurazioni. Quello relativo alle schede video AMD è firmware-amd-graphics, la cui ultima versione disponibile al momento è la 20170823-1. Il pacchetto contiene binari per i seguenti chipset:
<pre>
  * amdgpu/carrizo_ce.bin
  * amdgpu/carrizo_me.bin
  * amdgpu/carrizo_mec.bin
  * amdgpu/carrizo_mec2.bin
  * amdgpu/carrizo_pfp.bin
  * amdgpu/carrizo_rlc.bin
  * amdgpu/carrizo_sdma.bin
  * amdgpu/carrizo_sdma1.bin
  * amdgpu/carrizo_uvd.bin
  * amdgpu/carrizo_vce.bin
  * amdgpu/fiji_ce.bin
  * amdgpu/fiji_mc.bin
  * amdgpu/fiji_me.bin
  * amdgpu/fiji_mec.bin
  * amdgpu/fiji_mec2.bin
  * amdgpu/fiji_pfp.bin
  * amdgpu/fiji_rlc.bin
  * amdgpu/fiji_sdma.bin
  * amdgpu/fiji_sdma1.bin
  * amdgpu/fiji_smc.bin
  * amdgpu/fiji_uvd.bin
  * amdgpu/fiji_vce.bin
  * amdgpu/polaris10_ce.bin
  * amdgpu/polaris10_k_smc.bin
  * amdgpu/polaris10_mc.bin
  * amdgpu/polaris10_me.bin
  * amdgpu/polaris10_mec.bin
  * amdgpu/polaris10_mec2.bin
  * amdgpu/polaris10_pfp.bin
  * amdgpu/polaris10_rlc.bin
  * amdgpu/polaris10_sdma.bin
  * amdgpu/polaris10_sdma1.bin
  * amdgpu/polaris10_smc.bin
  * amdgpu/polaris10_smc_sk.bin
  * amdgpu/polaris10_uvd.bin
  * amdgpu/polaris10_vce.bin
  * amdgpu/polaris11_ce.bin
  * amdgpu/polaris11_k_smc.bin
  * amdgpu/polaris11_mc.bin
  * amdgpu/polaris11_me.bin
  * amdgpu/polaris11_mec.bin
  * amdgpu/polaris11_mec2.bin
  * amdgpu/polaris11_pfp.bin
  * amdgpu/polaris11_rlc.bin
  * amdgpu/polaris11_sdma.bin
  * amdgpu/polaris11_sdma1.bin
  * amdgpu/polaris11_smc.bin
  * amdgpu/polaris11_smc_sk.bin
  * amdgpu/polaris11_uvd.bin
  * amdgpu/polaris11_vce.bin
  * amdgpu/polaris12_ce.bin
  * amdgpu/polaris12_mc.bin
  * amdgpu/polaris12_me.bin
  * amdgpu/polaris12_mec.bin
  * amdgpu/polaris12_mec2.bin
  * amdgpu/polaris12_pfp.bin
  * amdgpu/polaris12_rlc.bin
  * amdgpu/polaris12_sdma.bin
  * amdgpu/polaris12_sdma1.bin
  * amdgpu/polaris12_smc.bin
  * amdgpu/polaris12_uvd.bin
  * amdgpu/polaris12_vce.bin
  * amdgpu/stoney_ce.bin
  * amdgpu/stoney_me.bin
  * amdgpu/stoney_mec.bin
  * amdgpu/stoney_pfp.bin
  * amdgpu/stoney_rlc.bin
  * amdgpu/stoney_sdma.bin
  * amdgpu/stoney_vce.bin
  * amdgpu/stoney_uvd.bin
  * amdgpu/tonga_ce.bin
  * amdgpu/tonga_k_smc.bin
  * amdgpu/tonga_mc.bin
  * amdgpu/tonga_me.bin
  * amdgpu/tonga_mec.bin
  * amdgpu/tonga_mec2.bin
  * amdgpu/tonga_pfp.bin
  * amdgpu/tonga_rlc.bin
  * amdgpu/tonga_sdma.bin
  * amdgpu/tonga_sdma1.bin
  * amdgpu/tonga_smc.bin
  * amdgpu/tonga_uvd.bin
  * amdgpu/tonga_vce.bin
  * amdgpu/topaz_ce.bin
  * amdgpu/topaz_k_smc.bin
  * amdgpu/topaz_mc.bin
  * amdgpu/topaz_me.bin
  * amdgpu/topaz_mec.bin
  * amdgpu/topaz_mec2.bin
  * amdgpu/topaz_pfp.bin
  * amdgpu/topaz_rlc.bin
  * amdgpu/topaz_sdma.bin
  * amdgpu/topaz_sdma1.bin
  * amdgpu/topaz_smc.bin
  * amdgpu/vega10_acg_smc.bin
  * amdgpu/vega10_asd.bin
  * amdgpu/vega10_ce.bin
  * amdgpu/vega10_gpu_info.bin
  * amdgpu/vega10_me.bin
  * amdgpu/vega10_mec.bin
  * amdgpu/vega10_mec2.bin
  * amdgpu/vega10_pfp.bin
  * amdgpu/vega10_rlc.bin
  * amdgpu/vega10_sdma.bin
  * amdgpu/vega10_sdma1.bin
  * amdgpu/vega10_smc.bin
  * amdgpu/vega10_sos.bin
  * amdgpu/vega10_uvd.bin
  * amdgpu/vega10_vce.bin
  * Rage 128 CCE microcode (r128/r128_cce.bin)
  * Radeon HD IGP 7500/7600 series ME microcode (radeon/ARUBA_me.bin)
  * Radeon HD IGP 7500/7600 series PFP microcode (radeon/ARUBA_pfp.bin)
  * Radeon HD IGP 7500/7600 series RLC microcode (radeon/ARUBA_rlc.bin)
  * radeon/banks_k_2_smc.bin
  * Radeon HD 6800 series MC microcode (radeon/BARTS_mc.bin)
  * Radeon HD 6800 series ME microcode (radeon/BARTS_me.bin)
  * Radeon HD 6800 series PFP microcode (radeon/BARTS_pfp.bin)
  * Radeon HD 6800 series SMC microcode (radeon/BARTS_smc.bin)
  * Radeon HD 7790/8770/8950 CE microcode (radeon/bonaire_ce.bin)
  * Radeon HD 7790/8770/8950 CE microcode (radeon/BONAIRE_ce.bin)
  * radeon/bonaire_k_smc.bin
  * Radeon HD 7790/8770/8950 MC microcode (radeon/bonaire_mc.bin)
  * Radeon HD 7790/8770/8950 MC microcode, version 1
    (radeon/BONAIRE_mc.bin)
  * Radeon HD 7790/8770/8950 MC microcode, version 2
    (radeon/BONAIRE_mc2.bin)
  * Radeon HD 7790/8770/8950 ME microcode (radeon/bonaire_me.bin)
  * Radeon HD 7790/8770/8950 ME microcode (radeon/BONAIRE_me.bin)
  * Radeon HD 7790/8770/8950 MEC microcode (radeon/bonaire_mec.bin)
  * Radeon HD 7790/8770/8950 MEC microcode (radeon/BONAIRE_mec.bin)
  * Radeon HD 7790/8770/8950 PFP microcode (radeon/bonaire_pfp.bin)
  * Radeon HD 7790/8770/8950 PFP microcode (radeon/BONAIRE_pfp.bin)
  * Radeon HD 7790/8770/8950 RLC microcode (radeon/bonaire_rlc.bin)
  * Radeon HD 7790/8770/8950 RLC microcode (radeon/BONAIRE_rlc.bin)
  * Radeon HD 7790/8770/8950 SDMA microcode (radeon/bonaire_sdma.bin)
  * Radeon HD 7790/8770/8950 SDMA microcode (radeon/BONAIRE_sdma.bin)
  * Radeon HD 7790/8770/8950 SDMA1 microcode (radeon/bonaire_sdma1.bin)
  * Radeon HD 7790/8770/8950 series SMC microcode
    (radeon/bonaire_smc.bin)
  * Radeon HD 7790/8770/8950 series SMC microcode
    (radeon/BONAIRE_smc.bin)
  * Radeon HD 7790/8770/8950, 8100/8200/8300/8400 series, and
    "Mullins"/"Beema" IGP UVD microcode (radeon/BONAIRE_uvd.bin)
  * Radeon HD 7790/8770/8950 UVD microcode (radeon/bonaire_uvd.bin)
  * Radeon HD VCE microcode (radeon/BONAIRE_vce.bin)
  * Radeon HD 7790/8770/8950 VCE microcode (radeon/bonaire_vce.bin)
  * Radeon HD 6300/6500/6800 series RLC microcode (radeon/BTC_rlc.bin)
  * Radeon HD 6300 series MC microcode (radeon/CAICOS_mc.bin)
  * Radeon HD 6300 series ME microcode (radeon/CAICOS_me.bin)
  * Radeon HD 6300 series PFP microcode (radeon/CAICOS_pfp.bin)
  * Radeon HD 6300 series SMC microcode (radeon/CAICOS_smc.bin)
  * Radeon HD 6900 series MC microcode (radeon/CAYMAN_mc.bin)
  * Radeon HD 6900 series ME microcode (radeon/CAYMAN_me.bin)
  * Radeon HD 6900 series PFP microcode (radeon/CAYMAN_pfp.bin)
  * Radeon HD 6900 series RLC microcode (radeon/CAYMAN_rlc.bin)
  * Radeon HD 6900 series SMC microcode (radeon/CAYMAN_smc.bin)
  * Radeon HD 5400 series ME microcode (radeon/CEDAR_me.bin)
  * Radeon HD 5400 series PFP microcode (radeon/CEDAR_pfp.bin)
  * Radeon HD 5400 series RLC microcode (radeon/CEDAR_rlc.bin)
  * Radeon HD 5400 series SMC microcode (radeon/CEDAR_smc.bin)
  * Radeon HD 5800/5900 series ME microcode (radeon/CYPRESS_me.bin)
  * Radeon HD 5800/5900 series PFP microcode (radeon/CYPRESS_pfp.bin)
  * Radeon HD 5800/5900 series RLC microcode (radeon/CYPRESS_rlc.bin)
  * Radeon HD 5800/5900 series SMC microcode (radeon/CYPRESS_smc.bin)
  * Radeon HD 5x00 series UVD microcode (radeon/CYPRESS_uvd.bin)
  * Radeon HD 8500M series and R5 M200 CE microcode
    (radeon/hainan_ce.bin)
  * Radeon HD 8500M series and R5 M200 CE microcode
    (radeon/HAINAN_ce.bin)
  * radeon/hainan_k_smc.bin
  * Radeon HD 8500M series and R5 M200 MC microcode
    (radeon/hainan_mc.bin)
  * Radeon HD 8500M series and R5 M200 MC microcode, version 1
    (radeon/HAINAN_mc.bin)
  * Radeon HD 8500M series and R5 M200 MC microcode, version 2
    (radeon/HAINAN_mc2.bin)
  * Radeon HD 8500M series and R5 M200 ME microcode
    (radeon/hainan_me.bin)
  * Radeon HD 8500M series and R5 M200 ME microcode
    (radeon/HAINAN_me.bin)
  * Radeon HD 8500M series and R5 M200 PFP microcode
    (radeon/hainan_pfp.bin)
  * Radeon HD 8500M series and R5 M200 PFP microcode
    (radeon/HAINAN_pfp.bin)
  * Radeon HD 8500M series and R5 M200 RLC microcode
    (radeon/hainan_rlc.bin)
  * Radeon HD 8500M series and R5 M200 RLC microcode
    (radeon/HAINAN_rlc.bin)
  * Radeon HD 8500M series and R5 M200 SMC microcode
    (radeon/hainan_smc.bin)
  * Radeon HD 8500M series and R5 M200 SMC microcode
    (radeon/HAINAN_smc.bin)
  * Radeon R9 290 series CE microcode (radeon/hawaii_ce.bin)
  * Radeon R9 290 series CE microcode (radeon/HAWAII_ce.bin)
  * radeon/hawaii_k_smc.bin
  * Radeon R9 290 series MC microcode (radeon/hawaii_mc.bin)
  * Radeon R9 290 series MC microcode, version 1 (radeon/HAWAII_mc.bin)
  * Radeon R9 290 series MC microcode, version 2 (radeon/HAWAII_mc2.bin)
  * Radeon R9 290 series ME microcode (radeon/hawaii_me.bin)
  * Radeon R9 290 series ME microcode (radeon/HAWAII_me.bin)
  * Radeon R9 290 series MEC microcode (radeon/hawaii_mec.bin)
  * Radeon R9 290 series MEC microcode (radeon/HAWAII_mec.bin)
  * Radeon R9 290 series PFP microcode (radeon/hawaii_pfp.bin)
  * Radeon R9 290 series PFP microcode (radeon/HAWAII_pfp.bin)
  * Radeon R9 290 series RLC microcode (radeon/hawaii_rlc.bin)
  * Radeon R9 290 series RLC microcode (radeon/HAWAII_rlc.bin)
  * Radeon R9 290 series SDMA microcode (radeon/hawaii_sdma.bin)
  * Radeon R9 290 series SDMA microcode (radeon/HAWAII_sdma.bin)
  * Radeon R9 290 series SDMA microcode (radeon/hawaii_sdma1.bin)
  * Radeon R9 290 series SMC microcode (radeon/HAWAII_smc.bin)
  * Radeon R9 290 series SMC microcode (radeon/hawaii_smc.bin)
  * Radeon R9 290 series UVD microcode (radeon/hawaii_uvd.bin)
  * Radeon R9 290 series VCE microcode (radeon/hawaii_vce.bin)
  * Radeon HD 5700 series ME microcode (radeon/JUNIPER_me.bin)
  * Radeon HD 5700 series PFP microcode (radeon/JUNIPER_pfp.bin)
  * Radeon HD 5700 series RLC microcode (radeon/JUNIPER_rlc.bin)
  * Radeon HD 5700 series SMC microcode (radeon/JUNIPER_smc.bin)
  * Radeon HD 8100/8200/8300/8400 series CE microcode
    (radeon/kabini_ce.bin)
  * Radeon HD 8100/8200/8300/8400 series CE microcode
    (radeon/KABINI_ce.bin)
  * Radeon HD 8100/8200/8300/8400 series ME microcode
    (radeon/kabini_me.bin)
  * Radeon HD 8100/8200/8300/8400 series ME microcode
    (radeon/KABINI_me.bin)
  * Radeon HD 8100/8200/8300/8400 series MEC microcode
    (radeon/kabini_mec.bin)
  * Radeon HD 8100/8200/8300/8400 series MEC microcode
    (radeon/KABINI_mec.bin)
  * Radeon HD 8100/8200/8300/8400 series PFP microcode
    (radeon/kabini_pfp.bin)
  * Radeon HD 8100/8200/8300/8400 series PFP microcode
    (radeon/KABINI_pfp.bin)
  * Radeon HD 8100/8200/8300/8400 series RLC microcode
    (radeon/kabini_rlc.bin)
  * Radeon HD 8100/8200/8300/8400 series RLC microcode
    (radeon/KABINI_rlc.bin)
  * Radeon HD 8100/8200/8300/8400 series SDMA microcode
    (radeon/kabini_sdma.bin)
  * Radeon HD 8100/8200/8300/8400 series SDMA microcode
    (radeon/KABINI_sdma.bin)
  * Radeon HD 8100/8200/8300/8400 series SDMA1 microcode
    (radeon/kabini_sdma1.bin)
  * Radeon HD 8100/8200/8300/8400 series UVD microcode
    (radeon/kabini_uvd.bin)
  * Radeon HD 8100/8200/8300/8400 series VCE microcode
    (radeon/kabini_vce.bin)
  * Radeon R5/R7 IGP 200 series CE microcode (radeon/kaveri_ce.bin)
  * Radeon R5/R7 IGP 200 series CE microcode (radeon/KAVERI_ce.bin)
  * Radeon R5/R7 IGP 200 series ME microcode (radeon/kaveri_me.bin)
  * Radeon R5/R7 IGP 200 series ME microcode (radeon/KAVERI_me.bin)
  * Radeon R5/R7 IGP 200 series MEC microcode, version 396
    (radeon/kaveri_mec.bin)
  * Radeon R5/R7 IGP 200 series MEC microcode (radeon/KAVERI_mec.bin)
  * Radeon R5/R7 IGP 200 series MEC microcode, version 396
    (radeon/kaveri_mec2.bin)
  * Radeon R5/R7 IGP 200 series PFP microcode (radeon/kaveri_pfp.bin)
  * Radeon R5/R7 IGP 200 series PFP microcode (radeon/KAVERI_pfp.bin)
  * Radeon R5/R7 IGP 200 series RLC microcode (radeon/kaveri_rlc.bin)
  * Radeon R5/R7 IGP 200 series RLC microcode (radeon/KAVERI_rlc.bin)
  * Radeon R5/R7 IGP 200 series SDMA microcode (radeon/kaveri_sdma.bin)
  * Radeon R5/R7 IGP 200 series SDMA microcode (radeon/KAVERI_sdma.bin)
  * Radeon R5/R7 IGP 200 series SDMA1 microcode
    (radeon/kaveri_sdma1.bin)
  * Radeon R5/R7 IGP 200 series UVD microcode (radeon/kaveri_uvd.bin)
  * Radeon R5/R7 IGP 200 series VCE microcode (radeon/kaveri_vce.bin)
  * Radeon "Mullins"/"Beema" IGP CE microcode (radeon/mullins_ce.bin)
  * Radeon "Mullins"/"Beema" IGP CE microcode (radeon/MULLINS_ce.bin)
  * Radeon "Mullins"/"Beema" IGP ME microcode (radeon/mullins_me.bin)
  * Radeon "Mullins"/"Beema" IGP ME microcode (radeon/MULLINS_me.bin)
  * Radeon "Mullins"/"Beema" IGP MEC microcode (radeon/mullins_mec.bin)
  * Radeon "Mullins"/"Beema" IGP MEC microcode (radeon/MULLINS_mec.bin)
  * Radeon "Mullins"/"Beema" IGP PFP microcode (radeon/mullins_pfp.bin)
  * Radeon "Mullins"/"Beema" IGP PFP microcode (radeon/MULLINS_pfp.bin)
  * Radeon "Mullins"/"Beema" IGP RLC microcode (radeon/mullins_rlc.bin)
  * Radeon "Mullins"/"Beema" IGP RLC microcode (radeon/MULLINS_rlc.bin)
  * Radeon "Mullins"/"Beema" IGP SDMA microcode
    (radeon/mullins_sdma.bin)
  * Radeon "Mullins"/"Beema" IGP SDMA microcode
    (radeon/MULLINS_sdma.bin)
  * Radeon "Mullins"/"Beema" IGP SDMA1 microcode
    (radeon/mullins_sdma1.bin)
  * Radeon "Mullins"/"Beema" IGP UVD microcode (radeon/mullins_uvd.bin)
  * Radeon "Mullins"/"Beema" IGP VCE microcode (radeon/mullins_vce.bin)
  * Radeon HD 8500/8600/8700 series CE microcode (radeon/oland_ce.bin)
  * Radeon HD 8500/8600/8700 series CE microcode (radeon/OLAND_ce.bin)
  * radeon/oland_k_smc.bin
  * Radeon HD 8500/8600/8700 series MC microcode (radeon/oland_mc.bin)
  * Radeon HD 8500/8600/8700 series MC microcode, version 1
    (radeon/OLAND_mc.bin)
  * Radeon HD 8500/8600/8700 series MC microcode, version 2
    (radeon/OLAND_mc2.bin)
  * Radeon HD 8500/8600/8700 series ME microcode (radeon/oland_me.bin)
  * Radeon HD 8500/8600/8700 series ME microcode (radeon/OLAND_me.bin)
  * Radeon HD 8500/8600/8700 series PFP microcode (radeon/oland_pfp.bin)
  * Radeon HD 8500/8600/8700 series PFP microcode (radeon/OLAND_pfp.bin)
  * Radeon HD 8500/8600/8700 series RLC microcode (radeon/oland_rlc.bin)
  * Radeon HD 8500/8600/8700 series RLC microcode (radeon/OLAND_rlc.bin)
  * Radeon HD 8500/8600/8700 series SMC microcode (radeon/oland_smc.bin)
  * Radeon HD 8500/8600/8700 series SMC microcode (radeon/OLAND_smc.bin)
  * Radeon HD IGP 6200/6300/7300 series ME microcode
    (radeon/PALM_me.bin)
  * Radeon HD IGP 6200/6300/7300 series PFP microcode
    (radeon/PALM_pfp.bin)
  * Radeon HD 7800 series CE microcode (radeon/pitcairn_ce.bin)
  * Radeon HD 7800 series CE microcode (radeon/PITCAIRN_ce.bin)
  * radeon/pitcairn_k_smc.bin
  * Radeon HD 7800 series MC microcode (radeon/pitcairn_mc.bin)
  * Radeon HD 7800 series MC microcode, version 1
    (radeon/PITCAIRN_mc.bin)
  * Radeon HD 7800 series MC microcode, version 2
    (radeon/PITCAIRN_mc2.bin)
  * Radeon HD 7800 series ME microcode (radeon/pitcairn_me.bin)
  * Radeon HD 7800 series ME microcode (radeon/PITCAIRN_me.bin)
  * Radeon HD 7800 series PFP microcode (radeon/pitcairn_pfp.bin)
  * Radeon HD 7800 series PFP microcode (radeon/PITCAIRN_pfp.bin)
  * Radeon HD 7800 series RLC microcode (radeon/pitcairn_rlc.bin)
  * Radeon HD 7800 series RLC microcode (radeon/PITCAIRN_rlc.bin)
  * Radeon HD 7800 series SMC microcode (radeon/pitcairn_smc.bin)
  * Radeon HD 7800 series SMC microcode (radeon/PITCAIRN_smc.bin)
  * Radeon R100-family CP microcode (radeon/R100_cp.bin)
  * Radeon R200-family CP microcode (radeon/R200_cp.bin)
  * Radeon R300-family CP microcode (radeon/R300_cp.bin)
  * Radeon R400-family CP microcode (radeon/R420_cp.bin)
  * Radeon R500-family CP microcode (radeon/R520_cp.bin)
  * Radeon R600 ME microcode (radeon/R600_me.bin)
  * Radeon R600 PFP microcode (radeon/R600_pfp.bin)
  * Radeon R600-family RLC microcode (radeon/R600_rlc.bin)
  * Radeon R600 UVD microcode (radeon/R600_uvd.bin)
  * Radeon R700-family RLC microcode (radeon/R700_rlc.bin)
  * Radeon HD 5500/5600 series ME microcode (radeon/REDWOOD_me.bin)
  * Radeon HD 5500/5600 series PFP microcode (radeon/REDWOOD_pfp.bin)
  * Radeon HD 5500/5600 series RLC microcode (radeon/REDWOOD_rlc.bin)
  * Radeon HD 5500/5600 series SMC microcode (radeon/REDWOOD_smc.bin)
  * Radeon RS600 CP microcode (radeon/RS600_cp.bin)
  * Radeon RS690 CP microcode (radeon/RS690_cp.bin)
  * Radeon RS780 ME microcode (radeon/RS780_me.bin)
  * Radeon RS780 PFP microcode (radeon/RS780_pfp.bin)
  * Radeon RS780 UVD microcode (radeon/RS780_uvd.bin)
  * Radeon RV610 ME microcode (radeon/RV610_me.bin)
  * Radeon RV610 PFP microcode (radeon/RV610_pfp.bin)
  * Radeon RV620 ME microcode (radeon/RV620_me.bin)
  * Radeon RV620 PFP microcode (radeon/RV620_pfp.bin)
  * Radeon RV630 ME microcode (radeon/RV630_me.bin)
  * Radeon RV630 PFP microcode (radeon/RV630_pfp.bin)
  * Radeon RV635 ME microcode (radeon/RV635_me.bin)
  * Radeon RV635 PFP microcode (radeon/RV635_pfp.bin)
  * Radeon RV670 ME microcode (radeon/RV670_me.bin)
  * Radeon RV670 PFP microcode (radeon/RV670_pfp.bin)
  * Radeon RV710 ME microcode (radeon/RV710_me.bin)
  * Radeon RV710 PFP microcode (radeon/RV710_pfp.bin)
  * Radeon RV710 SMC microcode (radeon/RV710_smc.bin)
  * Radeon RV710/RV730/RV740 UVD microcode (radeon/RV710_uvd.bin)
  * Radeon RV730/RV740 ME microcode (radeon/RV730_me.bin)
  * Radeon RV730/RV740 PFP microcode (radeon/RV730_pfp.bin)
  * Radeon RV730 SMC microcode (radeon/RV730_smc.bin)
  * Radeon RV740 SMC microcode (radeon/RV740_smc.bin)
  * Radeon RV770 ME microcode (radeon/RV770_me.bin)
  * Radeon RV770 PFP microcode (radeon/RV770_pfp.bin)
  * Radeon RV770 SMC microcode (radeon/RV770_smc.bin)
  * Radeon RV770 UVD microcode (radeon/RV770_uvd.bin)
  * radeon/si58_mc.bin
  * Radeon HD IGP 6400/6500/6600 series ME microcode
    (radeon/SUMO_me.bin)
  * Radeon HD IGP 6400/6500/6600 series PFP microcode
    (radeon/SUMO_pfp.bin)
  * Radeon HD IGP 6200/6300/6400/6500/6600/7300 series RLC microcode
    (radeon/SUMO_rlc.bin)
  * Radeon HD 6x00/7500 series and IGP 6x00/7300 series UVD microcode
    (radeon/SUMO_uvd.bin)
  * Radeon HD 6370D/6380G/6410D ME microcode (radeon/SUMO2_me.bin)
  * Radeon HD 6370D/6380G/6410D PFP microcode (radeon/SUMO2_pfp.bin)
  * Radeon HD 7900 series CE microcode (radeon/tahiti_ce.bin)
  * Radeon HD 7900 series CE microcode (radeon/TAHITI_ce.bin)
  * radeon/tahiti_k_smc.bin
  * Radeon HD 7900 series MC microcode (radeon/tahiti_mc.bin)
  * Radeon HD 7900 series MC microcode, version 1 (radeon/TAHITI_mc.bin)
  * Radeon HD 7900 series MC microcode, version 2
    (radeon/TAHITI_mc2.bin)
  * Radeon HD 7900 series ME microcode (radeon/tahiti_me.bin)
  * Radeon HD 7900 series ME microcode (radeon/TAHITI_me.bin)
  * Radeon HD 7900 series PFP microcode (radeon/tahiti_pfp.bin)
  * Radeon HD 7900 series PFP microcode (radeon/TAHITI_pfp.bin)
  * Radeon HD 7900 series RLC microcode (radeon/tahiti_rlc.bin)
  * Radeon HD 7900 series RLC microcode (radeon/TAHITI_rlc.bin)
  * Radeon HD 7900 series SMC microcode (radeon/tahiti_smc.bin)
  * Radeon HD 7900 series SMC microcode (radeon/TAHITI_smc.bin)
  * Radeon HD 7900 series UVD microcode (radeon/TAHITI_uvd.bin)
  * Radeon HD 7900 series VCE microcode (radeon/TAHITI_vce.bin)
  * Radeon HD 6500/6600/7500 series MC microcode (radeon/TURKS_mc.bin)
  * Radeon HD 6500/6600/7500 series ME microcode (radeon/TURKS_me.bin)
  * Radeon HD 6500/6600/7500 series PFP microcode (radeon/TURKS_pfp.bin)
  * Radeon HD 6500/6600/7500 series SMC microcode (radeon/TURKS_smc.bin)
  * Radeon HD 7700 series CE microcode (radeon/verde_ce.bin)
  * Radeon HD 7700 series CE microcode (radeon/VERDE_ce.bin)
  * radeon/verde_k_smc.bin
  * Radeon HD 7700 series MC microcode (radeon/verde_mc.bin)
  * Radeon HD 7700 series MC microcode, version 1 (radeon/VERDE_mc.bin)
  * Radeon HD 7700 series MC microcode, version 2 (radeon/VERDE_mc2.bin)
  * Radeon HD 7700 series ME microcode (radeon/verde_me.bin)
  * Radeon HD 7700 series ME microcode (radeon/VERDE_me.bin)
  * Radeon HD 7700 series PFP microcode (radeon/verde_pfp.bin)
  * Radeon HD 7700 series PFP microcode (radeon/VERDE_pfp.bin)
  * Radeon HD 7700 series RLC microcode (radeon/verde_rlc.bin)
  * Radeon HD 7700 series RLC microcode (radeon/VERDE_rlc.bin)
  * Radeon HD 7700 series SMC microcode (radeon/verde_smc.bin)
  * Radeon HD 7700 series SMC microcode (radeon/VERDE_smc.bin)
</pre>


Da un terminale spostatevi nella cartella dove avete scaricato il file e date i permessi di esecuzione:
== Installazione ==
<pre>$ chmod +x ati-driver-installer-8.26.18-x86.run</pre> quindi, da root:
<pre># sh ./ati-driver-installer-8.26.18.x86.run</pre>
e seguite le istruzioni.
Poi, sempre con i permessi di root, aggiornate il file di configurazione <code>xorg.conf</code>:
<pre># cd /etc/X11/
# aticonfig --initial
# aticonfig --overlay-type=Xv</pre>
e se volete settare meglio la configurazione:
<pre># aticonfig</pre>
il quale ci darà un lungo output con la descrizione di tutte le opzioni che possiamo usare con <code>aticonfig</code>.


A questo punto non ci resta che compilare il modulo del kernel fglrx. I metodi possono essere 2:
=== AMDGPU-Pro ===


1) Usare module-assistant, un pacchetto fornito per compilare moduli contenenti nel kernel-headers.
Non essendo ancora disponibile un pacchetto apposito, si deve utilizzare l'installer fornito da AMD. Esso supporta ufficialmente Ubuntu ma non Debian, è quindi possibile tentare l'installazione ma il risultato non è garantito.
Per iniziare, è necessario scaricare l'archivio compresso da [https://support.amd.com/en-us/kb-articles/Pages/Radeon-Software-for-Linux-Release-Notes.aspx questa pagina]. Supponendo che esso si chiami <code>amdgpu-pro-17.50.tar.xz</code>, lo si scompatta con il comando
<pre>
tar -Jxvf amdgpu-pro-17.50.tar.xz
</pre>
per poi entrare nella cartella relativa:
<pre>
cd amdgpu-pro-17.50.tar.xz
</pre>
A questo punto è necessario installare il driver AMDGPU libero. È possibile farlo seguendo la guida relativa tramite un pacchetto Debian o utilizzando l'installer appena scaricato.


2) Compilare a mano il modulo.
{{ Box | Compatibilità delle versioni |
Nel caso si installi il driver AMDGPU utilizzando il pacchetto Debian, è bene controllare che la versione coincida con quella del blob proprietario "-Pro" che si sta installando. In caso contrario il procedimento potrebbe non andare a buon fine. }}
Il secondo metodo consiste nel dare il comando
<pre>
./amdgpu-install -y
</pre>
È consigliato riavviare il sistema. Una volta installato il driver libero con uno dei due metodi descritti sopra, l'installazione del blob binario differisce a seconda della scheda in uso. Per schede Vega 10 o successive si dà il comando
<pre>
./amdgpu-pro-install -y --opencl=rocm
</pre>
altrimenti
<pre>
./amdgpu-pro-install -y --opencl=legacy
</pre>
È consigliato riavviare il sistema. Ulteriori dettagli su come ottenere aiuto o come disinstallare il driver si trovano a [https://support.amd.com/en-us/kb-articles/Pages/Installation-Instructions-for-amdgpu-Graphics-Stacks.aspx questa pagina].


È preferibile generalmente la seconda via perché non richiede il pacchetto kernel-header e perché applicabile a qualsiasi tipo di kernel, sia quello distribuito dai Debian repository che i kernel vanilla di www.kernel.org.<br/>
=== Catalyst/fglrx ===
Il metodo è il seguente:


Spostarci nella directory <code>/lib/modules/fglrx/build_mod</code> da utenti root.
In passato, per installare i driver fglrx si suggeriva di ricorrere all'installer del produttore anziché ai pacchetti dei repository Debian, perché più aggiornato. Ciò era condizionato anche dal fatto che nei repository si potevano trovare solamente i sorgenti dei driver, per cui era comunque necessaria la loro compilazione a mano. Tale procedura non è più necessaria, visto che DKMS provvederà a compilare automaticamente il modulo necessario. Inoltre, DKMS provvede anche ad aggiornare il modulo del kernel ad ogni aggiornamento dei driver, altra procedura che non deve più essere fatta manualmente. I vecchi metodi che prevedono la compilazione a mano o l'utilizzo di installer del produttore sono quindi da considerarsi obsoleti: l'installazione dai repository è ad oggi il modo più facile e veloce.


In questa directory adesso basta lanciare
Questi driver si trovano nel repository non-free di Debian, abilitarlo per proseguire.


<pre># ./make.sh</pre>
{{ Suggerimento | Prima di far partire l'installazione di nuovi driver è buona pratica salvare una copia di backup del file <code>/etc/X11/xorg.conf</code> (se presente), in modo da poter ritornare alla situazione iniziale in caso di problemi.
}}


Accertarsi che tutto sia andato a buon fine con una scritta "done" e poi spostarci nella directory precedente a ''build_mod'' ovvero <code>/lib/modules/fglrx</code>
==== fglrx (Wheezy e Jessie) ====
A questo punto lanciare il comando:
{{ Warningbox | I driver fglrx <em>non</em> supportano la versione di Gnome presente su Jessie. Per utilizzare questo DE è necessario sfruttare i [[Driver AMD liberi]].
}}
Come prima cosa si aggiorna l'indice di APT:
<pre>
# apt-get update
</pre>
Si procede poi con installare il driver insieme agli headers della versione del kernel in uso, che sono necessari per compilare il modulo del kernel con DKMS. La versione esatta del kernel si ottiene con il comando <code>uname -r</code>. Si installano quindi headers e driver:
<pre>
# apt-get install fglrx-driver linux-headers-<risultato del comando precedente>
</pre>
Volendo si può combinare il tutto in un unico comando (il carattere <code>`</code> si ottiente con AltGr+<code>'</code>):
<pre>
# apt-get install fglrx-driver linux-headers-`uname -r`
</pre>
A questo punto DKMS procederà a compilare automaticamente il modulo del kernel. Non rimane che procedere con la configurazione del server X.


<pre># ./make_install.sh </pre>
==== fglrx-legacy (Wheezy) ====
Questi driver si trovano solamente nella sezione non-free dei repository [[backports]] di Wheezy, che devono quindi essere abilitati. Come prima cosa si aggiorna l'indice di APT:
<pre>
# apt-get update
</pre>
Si procede poi con installare il driver insieme agli headers della versione del kernel in uso, che sono necessari per compilare il modulo del kernel con DKMS. La versione esatta del kernel si ottiene con il comando <code>uname -r</code>. Si installano quindi headers e driver, indicando <code>wheezy-backports</code> come target release:
<pre>
# apt-get install -t wheezy-backports fglrx--legacy-driver linux-headers-<risultato del comando precedente>
</pre>
Volendo si può combinare il tutto in un unico comando (il carattere <code>`</code> si ottiente con AltGr+<code>'</code>):
<pre>
# apt-get install fglrx-legacy-driver linux-headers-`uname -r`
</pre>
A questo punto DKMS procederà a compilare automaticamente il modulo del kernel. Non rimane che procedere con la configurazione del server X.


Se tutto è andato a buon fine avete compilato il vostro bel modulo fglrx e per evitare di riavviare il sistema basta semplicemente entrare in linea di comando con CTRL + ALT + F1, effettuare il login come utente root e poi digitare:
==== Configurazione ====
È necessario configurare il server X per l'utilizzo dei driver proprietari. Per fare ciò si opera sul file <code>/etc/X11/xorg.conf</code>, che va creato se non esistente. Si tratta di aggiungere o modificare come segue la sezione "Device":
<pre>
Section "Device"
        Identifier "My GPU"
        Driver "fglrx"
EndSection
</pre>
Ovviamente al posto di "My GPU" si può inserire qualunque stringa si voglia. Alternativamente, si può creare automaticamente un file di configurazione col comando
<pre>
# aticonfig --initial
</pre>
Si riavvii X per abilitare la configurazione e iniziare a usare i driver appena installati.


<pre># /etc/init.d/gdm restart</pre> oppure <pre># /etc/init.d/kdm restart </pre>
La configurazione del server X può essere personalizzata a piacere, anche se il default dovrebbe andare bene nella maggioranza dei casi, grazie alla capacità del server X di autoconfigurarsi all'avvio. Le opzioni disponibili sono comunque numerosissime: si consulti <code>man xorg.conf</code>, nonché <code>man fglrx</code>.


Montare il modulo fglrx con:
Esiste anche un pacchetto contenente il pannello di controllo del produttore, per installarlo dare
<pre>
# apt-get install fglrx-control
</pre>


<pre># modprobe fglrx </pre>
=== Firmware proprietario ===
Eventualmente, il firmware proprietario si installa dal repository non-free con:
<pre>
# apt-get install firmware-linux-nonfree
</pre>
oppure
<pre>
# apt-get install firmware-amd-graphics
</pre>


e riavviare il sistema
=== Test ===
Per testare l'accelerazione è possibile utilizzare i tools di Mesa:
<pre>
# apt-get install mesa-utils
$ glxgears
s</pre>
Appaiono tre ingranaggi rotanti e la conta dei fotogrammi:
<pre>
14045 frames in 5.0 seconds = 2808.862 FPS
14115 frames in 5.0 seconds = 2822.858 FPS
14196 frames in 5.0 seconds = 2839.177 FPS
</pre>
Inoltre, il comando
<pre>
$ glxinfo | grep rendering
</pre>
dovrebbe restituire
<pre>
direct rendering: Yes
</pre>


<pre># /etc/init.d/gdm restart</pre> oppure <pre># /etc/init.d/kdm restart </pre>
Per gli utilizzatori di driver fglrx, si può verificare l'esito dell'installazione dall'output del comando
 
<pre>
Per controllare che la vostra accelerazione 3D funzioni basta digitare da shell come utente normale:
$ fglrxinfo
 
</pre>
<pre>$ fglrxinfo </pre>
che dovrebbe essere simile a questo:
Nel mio caso l'output è il seguente:
<pre>
 
display: :0.0  screen: 0
<pre>display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: ATI Radeon Xpress Series
OpenGL renderer string: MOBILITY RADEON 9700 Generic
OpenGL version string: 2.0.6473 (8.37.6)</pre>
OpenGL version string: 2.0.5879 (8.26.18)
</pre>
Se al posto di ATI compare Mesa, l'installazione non è andata a buon fine. Per testare l'accelerazione si usa invece:
<pre>
$ fgl_glxgears
</pre>
Dovrebbe comparire un cubo rotante con sulle sei facce degli ingranaggi rotanti e, sul terminale, la conta dei frame:
<pre>
Using GLX_SGIX_pbuffer
1610 frames in 5.0 seconds = 322.000 FPS
1640 frames in 5.0 seconds = 328.000 FPS
2093 frames in 5.0 seconds = 418.600 FPS
</pre>
Se compaiono 4-5 righe di errori, l'installazione non è andata a buon fine.


<pre>$ glxinfo | grep rendering </pre>
=== Troubleshooting ===


e aspettare che vi dia come output:
In caso di problemi, il file di log principale è <code>/var/log/Xorg.0.log</code> e simili.


<pre>direct rendering: Yes</pre>
Per gli utilizzatori di driver fglrx, in caso di problemi si può tentare uno dei seguenti "trucchetti" (la cui efficacia non è garantita):
 
* Scrivere, in <code>/etc/X11/xorg.conf</code>, i moduli <code>dri</code>, <code>glx</code> e <code>GLcore</code>, in questo ordine. Se ad esempio si mette <code>GLcore</code> per primo, l'accelerazione non andrà e il log <code>/var/log/Xorg.0.log</code> riporterà una serie di errori, tra cui warning sulla libreria <code>/usr/lib/xorg/modules/extensions/libGLcore.so</code> e  un errore verso la fine, tristemente incorniciato. Questo errore potrebbe essere circoscritto ad alcune configurazioni.
N.B.: Se non avete glxinfo installate il pacchetto mesa-utils.
* A volte si ottengono risultati migliori installando i driver con '''X non avviato'''.  
 
* Se i driver sono molto recenti il modulo <code>GLcore</code> non andrebbe inserito in <code>/etc/X11/xorg.conf</code>: viene caricato automaticamente.
Questo metodo risulta più semplice ed efficace della pacchettizzazione. Se usate kernel vanilla la procedura è la medesima. Attenzione ad usare i kernel 2.6.20 poiché hanno un bug e quindi viene corretto da una patch al modulo fglrx. Tale patch è possibile trovarla in rete.
* Per attivare l'accelerazione 3D, potrebbe essere di aiuto aggiungere a <code>/etc/X11/xorg.conf</code> la sezione:
 
=== Installazione manuale con generazione pacchetti specifici per Debian ===
 
Con i privilegi di root, rimuoviamo i vecchi pacchetti del modulo <code>fglrx</code>, se presenti:
<pre># rm /usr/src/fglrx-kernel*.deb</pre>
È necessario installare i seguenti pacchetti:
<pre># apt-get install module-assistant build-essential fakeroot dh-make debconf libstdc++5 gcc-3.4-base</pre>
Spostiamoci nella cartella dove abbiamo scaricato l'eseguibile Ati e diamogli i permessi di esecuzione:
<pre>$ chmod +x ati-driver-installer-8.26.18-x86.run</pre>
Poi, per creare i 5 pacchetti .deb:
<pre>$ sh ./ati-driver-installer-8.26.18-x86.run --buildpkg Debian/[release]</pre>
Per avere una lista di tutte le release supportate:
<pre>$ sh ./ati-driver-installer-8.26.16-x86.run --listpkg</pre>
Ad esempio:
<pre>$ sh ./ati-driver-installer-8.26.18-x86.run --buildpkg Debian/testing</pre>
Per installarli (installiamo solo quelli fondamentali):
<pre>$ su
Password:
# dpkg -i fglrx-driver_8.26.18-1_i386.deb
# dpkg -i fglrx-kernel-src_8.26.18-1_i386.deb
# dpkg -i fglrx-control_8.26.18-1_i386.deb</pre>
 
==== Compilazione del modulo <code>fglrx</code> ====
 
{{ Warningbox | Ad ogni aggiornamento del kernel bisogna ricompilare il modulo <code>fglrx</code>. }}
 
Adesso va compilato il modulo <code>fglrx</code>, con <code>module-assistant</code> (m-a):
<pre># m-a prepare
# m-a update
# m-a build fglrx
# m-a install fglrx
# depmod -a</pre>
Quindi muoviamoci in <code>/etc/X11/</code>:
<pre># cd /etc/X11/</pre>
e aggiorniamo il file di configurazione di X:
<pre># aticonfig --initial
# aticonfig --overlay-type=Xv</pre>
Naturalmente è possibile modificare <code>etc/X11/xorg.conf</code> anche a manina (per fare questo consultate...uhm, forse c'è qualche cosa in <code>man xorg.conf</code>) oppure consultando e usando <code>aticonfig</code>.
 
Riavviamo '''X'''.
 
=== Installazione dei driver dai repository ===
====Lenny====
È necessario avere abilitato la sezione non-free del repository:
aprite <code>/etc/apt/sources.list</code> in un editor e controllate che ci sia:
<pre>deb http://ftp.us.debian.org/debian lenny main contrib non-free</pre>
o qualsiasi altro mirror debian lenny con non-free abilitato. Altrimenti aggiungete <code>non-free</code> alla riga del vostro mirror.
Aggiornate ora la lista dei pacchetti disponibili:
<pre>apt-get update</pre>
 
Installiamo ora i pacchetti necessari:
<pre># apt-get install module-assistant fglrx-driver fglrx-kernel-src fglrx-glx</pre>
Siccome il modulo di cui abbiamo bisogno (<code>fglrx</code>) è sotto forma di sorgenti (<code>fglrx-kernel-src</code>), lo compiliamo e lo installiamo utilizzando <code>module-assistant</code>, come descritto [[#Compilazione del modulo fglrx|qui]].
In alternativa si può provare ad automatizzare la procedura di compilazione del modulo con:
<pre># module-assistant auto-install fglrx-kernel-src</pre>
 
In teoria abbiamo finito, bisogna solamente configurare [[#Struttura del file xorg.conf|<code>/etc/X11/xorg.conf</code>]] manualmente aggiungendo(ATTENZIONE: se sono presenti già le voci per la scheda e per lo schermo, cancellatele):
<pre>
<pre>
Section "Device"
Section "Extensions"
     Identifier  "ATI"
     Option "Composite" "Enable"
    Driver      "fglrx"
EndSection
EndSection
 
</pre>
* Potrebbe essere di aiuto aggiungere a <code>/etc/X11/xorg.conf</code> la sezione:
<pre>
Section "Screen"
Section "Screen"
     Identifier "Default Screen"
     Identifier "Default Screen"
Riga 181: Riga 643:
EndSection
EndSection
</pre>
</pre>
oppure automaticamente usando:
* Per attivare il multi monitor ed eliminare eventuali restrizioni sulla risoluzione, si può provare ad aggiungere a <code>/etc/X11/xorg.conf</code> la seguente sezione, sostituendo la risoluzione voluta al posto di X e Y:
<pre># aticonfig --initial</pre>
 
Non rimane che riavviare '''X''' (se usate gdm):
<pre># /etc/init.d/gdm restart</pre>
 
Se volete avere anche il pannello di controllo Ati:
<pre># apt-get install fglrx-control</pre>
'''Nota:''' Consultate anche il manuale di <code>fglrx</code> . ( <code>man fglrx</code> ).
 
== Squeeze==
 
== Struttura del file xorg.conf ==
 
Un esempio di <code>/etc/X11/xorg.conf</code>:
 
<pre>
<pre>
### /etc/X11/xorg.conf ###
Section "ServerLayout"
Identifier    "Default Layout"
Screen      0  "aticonfig-Screen[0]" 0 0
InputDevice    "Keyboard"
InputDevice    "Mouse"
InputDevice    "Touchpad"
EndSection
Section "Files"
# path to defoma fonts
FontPath    "/usr/share/fonts/X11/misc"
FontPath    "/usr/share/fonts/X11/100dpi/:unscaled"
FontPath    "/usr/share/fonts/X11/75dpi/:unscaled"
FontPath    "/usr/share/fonts/X11/Type1"
FontPath    "/usr/share/fonts/X11/100dpi"
FontPath    "/usr/share/fonts/X11/75dpi"
FontPath    "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
EndSection
Section "Module"
Load  "synaptics"
Load  "bitmap"
Load  "ddc"
Load  "dri"
Load  "extmod"
Load  "freetype"
Load  "glx"
Load  "int10"
Load  "type1"
Load  "vbe"
#      Load  "GLcore"
EndSection
Section "InputDevice"
Identifier  "Keyboard"
Driver      "kbd"
Option     "CoreKeyboard"
Option     "XkbRules" "xorg"
Option     "XkbModel" "pc105"
Option     "XkbLayout" "it"
EndSection
Section "InputDevice"
Identifier  "Mouse"
Driver      "mouse"
Option     "CorePointer"
Option     "Device" "/dev/input/mice"
Option     "Protocol" "ExplorerPS/2"
Option     "Emulate3Buttons" "true"
EndSection
Section "InputDevice"
Identifier  "Touchpad"
Driver      "synaptics"
Option     "Device" "/dev/psaux"
Option     "Protocol" "auto-dev"
Option     "LeftEdge" "1700"
Option     "RightEdge" "5300"
Option     "TopEdge" "1700"
Option     "BottomEdge" "4200"
Option     "FingerLow" "25"
Option     "FingerHigh" "30"
Option     "MaxTapTime" "180"
Option     "MaxTapMove" "220"
Option     "VertScrollDelta" "100"
Option     "MinSpeed" "0.10"
Option     "MaxSpeed" "0.30"
Option     "AccelFactor" "0.0150"
Option     "SHMConfig" "on"
        Option      "AlwaysCore" "true"
EndSection
Section "Monitor"
Identifier  "aticonfig-Monitor[0]"
HorizSync    30.0 - 70.0
VertRefresh  50.0 - 100.0
Option     "VendorName" "ATI Proprietary Driver"
Option     "ModelName" "Generic Autodetecting Monitor"
Option     "DPMS" "true"
EndSection
Section "Monitor"
Identifier  "aticonfig-Monitor[1]"
Option     "DPMS" "true"
EndSection
Section "Device"
Identifier  "aticonfig-Device[0]"
Driver      "fglrx"
Option     "VideoOverlay" "on"
Option     "OpenGLOverlay" "off"
Option     "DesktopSetup" "horizontal,reverse"
BusID      "PCI:1:0:0"
EndSection
Section "Screen"
Section "Screen"
Identifier "aticonfig-Screen[0]"
        SubSection "Display"
Device    "aticonfig-Device[0]"
                Virtual X Y
Monitor    "aticonfig-Monitor[0]"
        EndSubSection
DefaultDepth    24
SubSection "Display"
Viewport  0 0
Depth    24
Modes    "1280x800" "1280x1024" "1024x768" "800x600" "640x480"
EndSubSection
EndSection
 
Section "DRI"
Mode        0666
EndSection
EndSection
### End Of File ###
</pre>
</pre>
== Alcuni Test ==
Per verificare se abbiamo installato tutto correttamente:
<pre>$ fglrxinfo</pre>
dovrebbe dare un output simile a questo:
<pre>display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: MOBILITY RADEON 9700 Generic
OpenGL version string: 2.0.5879 (8.26.18)</pre>
Se al posto di ATI compare Mesa, c'è qualcosa che non va. L'installazione non è andata a buon fine.
Per testare l'accelerazione:
<pre>$ fgl_glxgears</pre>
Dovrebbe comparire un cubo rotante con sulle sei facce degli ingranaggi rotanti e, sul terminale, la conta dei frame:
<pre>Using GLX_SGIX_pbuffer
1610 frames in 5.0 seconds = 322.000 FPS
1640 frames in 5.0 seconds = 328.000 FPS
2093 frames in 5.0 seconds = 418.600 FPS</pre>
Se invece compaiono 4-5 righe di errori, c'è qualcosa che non va. L'installazione non è andata a buon fine. Ritenta, forse sarai più fortunat*.
Per testare l'accelerazione è possibile utilizzare anche i tools di Mesa:
<pre># apt-get install mesa-utils
$ glxgears -printfps</pre>
Appaiono tre ingranaggi rotanti e la conta dei fotogrammi:
<pre>14045 frames in 5.0 seconds = 2808.862 FPS
14115 frames in 5.0 seconds = 2822.858 FPS
14196 frames in 5.0 seconds = 2839.177 FPS</pre>
== File di log ==
Il file di log principale è <code>'''/var/log/Xorg.0.log'''</code> e seguenti. Da spulciare, analizzare, bruciare, supplicare. Insomma qui c'è di tutto di più. Ma a volte si può anche non trovare nulla di anomalo e magari <code>fgl_glxgears</code> non funziona lo stesso. 8°(
Se abbiamo installato i driver con l'installer Ati, esiste anche questo piccolo log: <code>/usr/share/fglrx/fglrx-install.log</code>
== Tips and Tricks ==
* Una cosa importante, ma che resta comunque strana, è scrivere, in <code>/etc/X11/xorg.conf</code>, i moduli <code>dri</code>, <code>glx</code> e <code>GLcore</code>, in questo ordine. Se ad esempio si mette <code>GLcore</code> per primo, l'accelerazione non andrà e il log <code>/var/log/Xorg.0.log</code> riporterà una serie di errori, tra cui warning sulla libreria <code>/usr/lib/xorg/modules/extensions/libGLcore.so</code> e  un errore verso la fine, tristemente incorniciato. Questo errore non so se sia circoscritto alla mia configurazione o se sia un cosa generale. L'unica cosa è fare un po' di test.
* A volte si ottengono risultati migliori installando i driver con '''X non avviato'''.
* Se i driver sono molto recenti il modulo <code>GLcore</code> non bisognerebbe inserirlo in <code>/etc/X11/xorg.conf</code> : viene caricato automaticamente.
* Aggiornando le librerie Mesa (<code>libgl1-mesa-dri</code> oppure <code>libgl1-mesa-glx</code> ad esempio), ahimè, può capitare che l'accelerazione sparisca all'improvviso. L'unica cosa da fare probabilmente è disinstallare i driver e installarli di nuovo.
* Per quanto riguarda le trasparenze di KDE, credo non siano supportate a livello hardware. Io non sono riuscito ad attivarle, infatti se aggiungo a <code>/etc/X11/xorg.conf</code> la sezione:
<pre>Section "Extensions"
Option "Composite" "Enable"
EndSection</pre>
l'accelerazione 3D non viene caricata.


{{Autori
{{Autori
|Autore=[[User:rasca|rasca]] 09:04, 17 July 2006 (CEST)
|Autore=[[Utente:Spoon|Spoon]] 14:34, 20 gen 2018 (CET)<br/>
|Estesa_da=
(guida originatiamente scritta da [[User:rasca|rasca]])
:[[Utente:Superflieriam|Superflieriam]]
:[[Utente:ENtRoPiA|ENtRoPiA]] 11:31, 9 July 2007 (Alcune correzioni)
:[[Utente:Lifeisfoo|Lifeisfoo]] 09:18, 3 lug 2010 (CEST) (Aggiunte informazioni sulle versioni)
:[[Utente:Braccobaldo92|Braccobaldo92]] 12:26, 30 lug 2010 (CEST) (Alcune correzioni)
}}
}}
[[Categoria:Schede video]]
[[Categoria:Schede video]]
[[Categoria:Linux]]
68

contributi

Menu di navigazione