ATI (Italiano)

From ArchWiki
Revision as of 22:03, 28 June 2010 by Simandr (Talk | contribs) (Con KMS abilitato)

Jump to: navigation, search

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Sommario help replacing me
Una panoramica sui driver open source delle schede video ATI/AMD.
Articoli correlati
ATI Catalyst
Intel
NVIDIA
Xorg

I proprietari delle schede video ATI possono scegliere tra i driver proprietari ATI/AMD (Template:Package AUR) e le alternative open source (Template:Package Official o Template:Package Official).

Attualmente, le performance dei driver open source non sono alla pari con i driver proprietari in termini di prestazioni 3D e mancano di alcune caratteristiche, come il supporto TV-out. Tuttavia, offrono un miglior supporto dual-head (xf86-video-ati), un eccellente accelerazione 2D, e forniscono l'accelerazione 3D necessaria ai vari window manager che sfruttano le accelerazioni OpenGL, come Compiz o KWin. Allo stato attuale, i driver ATI Catalyst non sono ufficialmente supportati in Arch Linux.

Se siete incerti, provate in primo luogo i driver open source; essi saranno adatti alla maggior parte dei bisogni e sono generalmente più flessibili e meno problematici. (vedere la tabella delle caratteristiche per i dettagli.) Per una panoramica riservata ai driver proprietari ATI "Catalyst" e la loro configurazione, consultate ATI Catalyst; questo articolo copre solamente i driver open source.

Convenzione dei nomi

La marca ATI Radeon segue uno schema di nomina che collega ogni prodotto ad un settore di mercato. All'interno di questo articolo, i lettori li vedranno nominati sia in base al nome del prodotto (Es. HD 4850, X1900) che in base al nome del codice o core (Es. RV770, R580). Tradizionalmente, una serie del prodotto corrisponderà ad una serie del core (Es. la serie dei prodotti "X1000" include tutti i prodotti X1300, X1600, X1800, e X1900 i quali utilizzano la serie del core "R500" – che includono i core RV515, RV530, R520, e R580).

Per una tabella completa di comparazione tra i nomi dei prodotti ed i relativi core, vedere Wikipedia:Comparison of AMD graphics processing units.

Differenze tra i driver open source

xf86-video-ati (radeon)

  • Funzionano con i chipset Radeon fino a HD 4xxx (ultimi R700 chipsets) così come le serie HD 5xxx (ultimi R800 chipsets).
  • Le schede Radeon della serie X1xxx sono pienamente supportate, stabili, e forniscono una piena accelerazione 2D e 3D.
  • Le schede Radeon dalla serie HD 2xxx alla X4xxx hanno pieno supporto all'accelerazione 2D ed una accellerazione 3D funzionale, ma non supportano tutte le caratteristiche che vengono fornite dai driver proprietari (per esempio, il powersaving è da tempo in fase di test).
  • Supportano DRI1, RandR 1.2/1.3, accelerazione EXA e kernel mode-setting/DRI2 (con le ultime versione del kernel Linux, libdrm e Mesa).
  • Tutte le schede dalla HD 5xxx (R800) alle ultime sono supportate, ma per ora solamente con supporto 2D.
  • Il supporto per HDMI verrà presto implementato in xf86-video-ati sopra AtomBIOS.

xf86-video-radeonhd (radeonhd)

  • Driver per i chipset ATI R500 (Radeon X1000 series) e più recenti.
  • Scritti da Novell grazie alle specifiche che AMD ha rilasciato pubblicamente.
  • Il supporto per RandR 1.2 è in fase di sviluppo. Inoltre supporta HDMI anche per quanto riguarda l'audio (se il vostro hardware lo supporta, ad eccezione dei modeli basati su chipset RV730).

Generalmente, i driver xf86-video-ati offrono prestazioni più cosistenti rispetto ai driver xf86-video-radeonhd e il loro sviluppo è più attivo, per questo dovrebbe essere la vostra prima sceltaso it should be your first choice, non ha importanza quale scheda ATI possediate. I driver xf86-video-radeonhd dovrebberò essere usati come ripiego nel caso incontraste degli errori con i xf86-video-ati.

Nota: xf86-video-ati è riconosciuto come "radeon" da Xorg (in xorg.conf) mentre xf86-video-radeonhd come "radeonhd".

Installazione e configurazione

Installazione

Note: Se sono stati precedentemente installati i driver proprietari, assicurarsi di rimuovere catalyst e riavviare.

Per installare xf86-video-ati :

pacman -S xf86-video-ati libgl ati-dri

Per installare xf86-video-radeonhd :

pacman -S xf86-video-radeonhd libgl ati-dri
Note: Tutte le schede video dalla serie HD3xxx (R600) alle ultime versioni, necessitano dell'installazione del firmware da AUR: [radeon_ucode]
Note: La versione GIT di questi drivers può essere scaricata da AUR

Configurazione

Adesso si potrà scegliere fra creare un xorg.conf o provare ad abilitare la recente funzionalità di autorilevamento di Xorg.

Avviare Xorg senza xorg.conf

Nella maggior parte dei casi, Xorg può rilevare le impostazioni del proprio hardware. Il file di configurazione xorg.conf in /etc/X11 è facoltativo dalla versione Xorg-server 1.5.x.

Assicurarsi di aver installati HAL, mesa, il gruppo xorg e il gruppo xorg-input-drivers:

 pacman -S hal xorg-input-drivers mesa xorg 

e che il demone HAL sia presente nella stringa DAEMONS in /etc/rc.conf e correttamente in esecuzione.

Note: Con KMS (Kernel Mode Setting) abilitato, xorg.conf potrebbe anche non essere necessario. Per ulteriori informazioni su Radeon Kernel mode-setting, consultare qui.

Avviare Xorg con xorg.conf

Note: /etc/X11/xorg.conf non richiede più sezioni specifiche per i dispositivi di input perchè HAL può configurare alcuni se non tutti con l'hotplugging. (Assicurarsi che HAL sia in esecuzione e xorg-input-drivers siano installati.)

In caso si preferisca la configurazione manuale, modificare xorg.conf, assicurandosi che siano presenti le seguenti specifiche nelle rispettive sezioni:

Section "Module"
  Load  "glx"
  Load  "dri"
  Load  "drm"
EndSection

Sezione device per xf86-video-ati :

Section "Device"
 Identifier "name"                     # your alias
 Driver "radeon"
EndSection

Sezione device per xf86-video-radeonhd :

Section "Device"
 Identifier "name"                     # your alias
 Driver "radeonhd"
 Option "AccelMethod" "exa"            # to enable 2D and Xv acceleration on R6xx/R7xx - default AccelMethod shadowfb
 Option "DRI" "on"                     # to enable 2D and Xv acceleration on R6xx/R7xx - default DRI disabled
EndSection
Note: Per migliori prestazioni, provare in fondo, oltre l'opzione "DRI", per RS780M/MN [Radeon HD 3200] usando il driver radeonhd (fino maggio 2009)

La seguente sezione (DRI) non è necessaria (talvolta sconsigliata), ma è possibile utilizzarla in caso di problemi relativi a DRI.

Section "DRI"
 Group        "video"
 Mode         0666
EndSection

Aggiungere solo la sezione Device in xorg.conf dovrebbe andare bene nella maggior parte dei casi. Il suo utilizzo ottimizza le caratteristiche, le prestazioni e il comportamento dei drivers.

Se si utilizzano i drivers opensource, assicurarsi che i drivers catalyst non siano installati contemporaneamente agli -- ati-dri. Altrimenti la versione incorretta di libGL.so verrà installata, il che causerà conflitti nel direct rendering.

Kernel mode-setting (KMS)

KMS abilita la risoluzione originale nel framebuffer e permette l'interscambio istantaneo tra console (tty). KMS abilita inoltre le più recenti tecnologie (come ad esempio DRI2) riducendone eventuali anomalie ed incrementando le prestazioni 3D, anche con il kernel in modalità risparmio.

KMS per le schede video ATI richiede Xorg e il driver opensource Template:Package Official versione 6.12.4 o più recente.

Abilitare KMS sperimentale

Dal kernel26 v.2.6.33, KMS è abilitata di default per le schede ATi.

Avvio rapido

Questo metodo avvierà KMS il più presto possibile durante il boot process (ossia quando initramfs sarà caricato).

  1. Rimuovere qualsiasi opzione Template:Codeline e/o Template:Codeline dalla linea del kernel nel file di configurazione del bootloader (Template:Filename per chi usa GRUB). Usando altri framebuffer drivers (come uvesafb o radeonfb) si provocherebbero conflitti con KMS. Rimuovere qualsiasi altro modulo relativo al framebuffer da Template:Filename.
  2. Aggiungere Template:Codeline alla stringa MODULES in Template:Filename. Dipendendo dal chipset della scheda madre, può essere necessario aggiungere Template:Codeline prima del modulo Template:Codeline. Precedentemente anche il modulo Template:Codeline doveva essere aggiunto alla lista moduli per poter avviarsi in console dopo l'avvio di X, ma ora è compilato nel kernel di default.
  3. Rigenerare initramfs:
    # mkinitcpio -p kernel26
  4. Aggiungere Template:Codeline alle opzioni del kernel nel file di configurazione del bootloader per abilitare KMS.
  5. Riavviare il sistema.

Avvio ritardato

Scegliendo questa modalità, KMS verrà avviato quando i moduli sono stati caricati nel boot process.

  1. Rimuovere qualsiasi opzione Template:Codeline e/o Template:Codeline dalla linea del kernel nel file di configurazione del bootloader (Template:Filename per chi usa GRUB). Usando altri framebuffer drivers (come uvesafb o radeonfb) si provocherebbero conflitti con KMS. Rimuovere qualsiasi altro modulo relativo al framebuffer da Template:Filename.
  2. Aggiungere Template:Codeline alla stringa MODULES in Template:Filename. Dipendendo dal chipset della scheda madre, può essere necessario aggiungere Template:Codeline prima del modulo Template:Codeline. Precedentemente anche il modulo Template:Codeline doveva essere aggiunto alla lista moduli per poter avviarsi in console dopo l'avvio di X, ma ora è compilato nel kernel di default.
  3. Riavviare il sistema.
Tip: Alcuni utenti hanno ottenuto maggiori velocità nel caricamento del modulo udev aggiungendo Template:Codeline a Template:Filename.

Errori e risoluzione dei problemi di KMS

Problemi generici

Se avete problemi di crash al momento del login, quando entrate nel vostro desktop oppure avete dei blocchi quando avviate applicazioni 3D come Template:Codeline, potete provare se l'opzione "PCI=nomsi" aggiunta al boot del kernel risolve i vostri problemi Vedere https://bugzilla.kernel.org/show_bug.cgi?id=15626 for X200m cards.

Disabilitare KMS

Alcuni utenti, disabilitando il kernel mode-setting visualizzano kernel panics, distorte risoluzioni nel framebuffer all'avvio, Xorg che non si avvia, o Xorg che ritorna al Mesa software rasterizer (senza quindi accelerazione 3D).

  1. Aggiungere Template:Codeline (o Template:Codeline, se il primo non dovesse funzionare) alle opzioni del kernel nel file di configurazione del bootloader (Template:Filename per gli utenti GRUB).
  2. Se Template:Codeline era stato aggiunto alla stringa MODULES in Template:Filename per abilitare avvio rapido, rimuoverlo.
  3. Rigenerare initramfs con
    # mkinitcpio -p kernel26
Warning: Gli utenti catalyst avranno probabilmente bisogno di mettere in blacklist il modulo Template:Codeline aggiungendo Template:Codeline alla stringa MODULES in Template:Filename.

Altrimenti, le opzioni del modulo possono essere specificate in un file all'interno della cartella Template:Filename. Se si usa il modulo radeon (Template:Codeline) disabilitare KMS creando un file contenente il codice sopra indicato:

Template:File

Rinominare Template:Filename

Rinominare Template:Filename. Nel caso includa opzioni che vanno in conflitto con KMS, questo forzerà Xorg ad un nuovo e corretto autorilevamento hardware. Dopo averlo rinimoninato, riavviare Xorg.

Ottimizzazione prestazioni

Applicare le seguenti opzioni alla sezione "Device" in /etc/X11/xorg.conf.

Incrementare le prestazioni con xf86-video-ati

In modo predefinito, xf86-video-ati gira la velocità AGP a 1x. In genere è sicuro cambiare questo parametro. In caso di blocchi, ridurre il valore o rimuovere l'intera linea (valori accettabili sono 1, 2, 4, 8).

       Option "AGPMode" "4"

ColorTiling è totalmente sicuro attivarlo e presumibilmente lo sarà di default. Molti utenti hanno ottenuto un incremento di prestazioni abilitandolo su xorg.conf.

       Option "ColorTiling" "on"

Acceleration architecture; questa opzione sarà possibile solo su schede video nuove. Se non si può accedere ad X una volta abilitato, rimuoverlo.

       Option "AccelMethod" "EXA"

Page Flip È generalmente sicuro. Se usato su schede più datate, richiede la disattivazione di EXA. Con i drivers più recenti può tranquillamente essere abilitato insieme a EXA.

       Option "EnablePageFlip" "on" 

AGPFastWrite abilita scritture veloci per schede AGP. Potrebbe creare qualche problema, quindi nel caso, rimuoverlo se non si riesce più ad accedere a X.

       Option "AGPFastWrite" "yes"

EXAVSync Questa opzione cerca di "schivare" certe asimmetrie dell'immagine sul monitor, chiamate tearing, creando una situazione di stallo nel motore finchè il controller del display ha oltrepassato la zona di destinazione. Ciò riduce il tearing con un decremento di prestazioni ed è noto che causa instabilità in alcuni tipi di chips. Molto utile abilitare questa opzione se Xv crea sovrapposizioni su video o desktop con accelerazione 3D. Non è necessario se KMS (quindi l'accelerazione DRI2) è abilitato.

Option "EXAVSync" "yes"

Un esempoi di sezione Device in xorg.conf:

Section "Device"
       Identifier  "My Graphics Card"
       Driver      "radeon"
       Option      "DRI" "on" 
       Option      "DynamicPM" "on"      # Dynamic powersaving.
       Option      "ClockGating" "on"    # Assisting option for powersaving.
       Option      "AccelMethod" "EXA"   # EXA should fit most cases.
       Option      "EXAVSync" "on"       # EXAVSync is explained above.
       Option      "DMAForXv" "on"       # Forced option in order to enable Xv overlay.
       Option      "ScalerWidth" "2048"  # That should fix some very rare bugs.
       Option      "EnablePageFlip" "on" # It will not be enabled on R5xx cards.
       Option      "RenderAccel" "on"    # Optional. It should be enabled by default.
       Option      "AccelDFS" "on"       #Optional. See the man page.
       BusID       "PCI:1:0:0"
EndSection

Consultare il manpage per ulteriori configurazioni. man radeon

Un valido strumento da provare è driconf. Permette di modificare diverse configurazioni, come vsync, anisotropic filtering, texture compression, etc. Con questo utile strumento è anche possibile disabilitare il "Low Impact fallback" necessario ad alcuni programmi (es. Google Earth).

Ottimizzare le prestazioni con xf86-video-radeonhd

TODO

Gestione risparmio energetico

Con KMS abilitato

Con i driver Radeon il risparmio energetico non è attivo automaticamente. Purtroppo il kernel base non offre l'opzione per attivarlo, ed è quindi necessario seguire una delle due opzioni:

1. Provare ad ggiungere radeon.dynpm=1 ai parametri del kernel base in Template:Filename (se si usa GRUB) o in Template:Filename (se si utilizza GRUB2).

2. Usare il kernel del repository [radeon]:

# Per x86_64
[radeon]
Server = http://gtklocker.tiven.org/radeon-repo/x86_64/
# Per i686
[radeon]
Server = http://gtklocker.tiven.org/radeon-repo/i686/

Provare quindi a modificare Template:Filename. Sono disponibili tre diversi profili: low, high, dynpm.

Low mantiene il consumo della GPU su livelli bassi. High la forza a funzionare al massimo delle potenzialità, e dynpm seleziona automaticamente tra low e high, in base all'utilizzo della GPU.

È possibile provare ogni profilo con il comando

# echo profilo > /sys/class/drm/card0/device/power_profile

e quando si trova la configurazione adatta, si può aggiungere il comando sopra riportato in Template:Filename, in modo che venga eseguito all'avvio e rimanga permanente.

Senza KMS

In your xorg.conf file, add 2 lines to "Device" Section:

       Option      "DynamicPM"          "on"
       Option      "ClockGating"        "on"

If the two options are enabled successfully, you will see following lines in /var/log/Xorg.0.log:

       (**) RADEON(0): Option "ClockGating" "on"
       (**) RADEON(0): Option "DynamicPM" "on"
       Static power management enable success
       (II) RADEON(0): Dynamic Clock Gating Enabled
       (II) RADEON(0): Dynamic Power Management Enabled

If you desire low power cost, you can add an extra line to "Device" Section of xorg.conf:

       Option      "ForceLowPowerMode"   "on"

Uscita TV

Fino dall'agosto 2007, è disponibile il supporto per l'uscita TV per tutte le schede Radeon con uscita TV integrata.

Per il momento è qualcosa di un po' limitato, non sempre l'autorilevamento del segnale lavora correttamente e solamente il modo NTSC è funzionante.

Per prima cosa, controllare di avere un'uscita S-video: xrandr dovrebbe restituire qualcosa di simile a

Screen 0: minimum 320x200, current 1024x768, maximum 1280x1200
...
S-video disconnected (normal left inverted right x axis y axis)

Ora bisognerà comunicare a Xorg che è attualmente connesso (assicurarsi che lo sia)

xrandr --output S-video --set load_detection 1

Configurare lo standard tv da usare:

xrandr --output S-video --set tv_standard ntsc

Aggiungere un modo (attualmente l'unica risoluzione disponibile è 800x600):

xrandr --addmode S-video 800x600

Si può propendere per un modo "clone":

xrandr --output S-video --same-as VGA-0 
xrandr --output S-video --mode 800x600

A questo punto si dovrebbe vedere una versione 800x600 del proprio deskyop sulla TV.

Per disabilitare l'output, dare

xrandr --output S-video --off

Potrebbe anche verificarsi che il video viene visualizzato solo sul monitor e non sulla TV. Dove la copertura Xv viene inviata e controllata da XV_CRTC.

Per inviare il segnale di output alla TV, dare

xvattr -a XV_CRTC -v 1
Note: È necessario installare xvattr da AUR per poi eseguire comando.

Per tornare indietro al proprio monitor si può cambiare questo a 0. -1 è usato per intercambi automatici in configurazioni dualhead.

Consultare Enabling TV-Out Statically per informazioni su attivazione uscita TV nel file di configurazione xorg.

Audio su HDMI

Supponendo siano stati installati i drivers xf86-video-radeonhd (note: Nel driver xf86-video-ati l'HDMI sarà supportato presto.) è possibile modificare l'xorg.conf con le seguenti aggiunte per configurare l'HDMI con l'audio:

Section "Device"
  # ...
  Option "Audio" "on"
  Option "HDMI" "all"
EndSection

Riavviare X, e poi verificare che l'audio sia effettivamente transmesso alla TV dal cavo HDMI.

  1. Collegare per prima cosa il PC alla TV con il cavo HDMI.
  2. Usare xrandr per ottenere l'immagine alla TV. Ex: xrandr --output DVI-D_1 --mode 1280x768 --right-of PANEL. Digitare semplicemente xrandr che restituirà una lista di segnali output validi.
  3. Dare aplay -l per una lista di dispositivi audio disponibili, localizzare HDMI e annotare il numero della scheda e il corrispondente numero di dispositivo. Un esempio di cosa si dovrebbe ottenere: card 1: HDMI [HDA ATI HDMI], device 3: ATI HDMI [ATI HDMI]
  4. Provare ad inviare dall'audio al dispositivo: aplay -D plughw:1,3 /usr/share/sounds/alsa/Front_Center.wav. Assicurarsi di cambiare plughw:z,y ed adattare il proprio numero hardware ottenuto con l'ultimo comando. A questo punto si dovrebbe essere in grado di sentire un test audio dalla TV.

A proposito delle RV730 e RV710

xf86-video-radeonhd non supporta ancora l'audio HDMI per questo tipo di chipsets, anche se lo sviluppo è in corso d'opera.

Risoluzione dei problemi (xf86-video-ati & xf86-video-radeonhd)

Rilevo artefatti quando effettuo il login nel mio DE o WM

Se ti sembra di avere artefatti, innanzitutto scegli di effettuare il login nel tuo DE o WM preferito senza xorg.conf in /etc/X11/. La maggior parte delle persone prova a creare un xorg.conf adatto al loro sistema, ma a volte ciò può creare problemi.

Se lo fai, controlla di aver installato e lanciato HAL, e di aver installato il gruppo Template:Package Official.

Warning: È possibile che questi problemi siano legati a KMS. Se questo è il problema, vedi disable KMS.

Sono passato da catalyst a radeonhd o a radeon e qualcosa è andato storto

Innanzitutto, niente panico. Disinstalla catalyst, installa xf86-video-radeonhd o xf86-video-ati e poi riavvia.

Assicurati di non usare il xorg.conf generato dai catalyst. Il tuo xorg.conf originale dovrebbe esser stato salvato e puoi ripristinarlo con:

cp /etc/X11/xorg.conf.original-0 /etc/X11/xorg.conf

Altrimenti, ferma il tuo server grafico se attivo, e in una tty, digita da root:

Xorg -configure
mv xorg.conf.new /etc/X11/xorg.conf

e assicurati di inserire le opzioni richieste.

Se ciò ancora non risolve il problema, devi sapere che apparentemente i catalyst hanno la brutta idea di sostituire i file Xorg con link simbolici che puntano ai loro stessi file. La via più semplice a questo punto è disinstallare tutto ciò che riguarda catalyst (tanto per essere sicuri) e quindi reinstallare xorg, libgl, ati-dri e xf86-video-radeonhd o xf86-video-ati.

Se ciò ancora non dovesse servire, dai uno sguardo nel forum, il tuo problema potrebbe essere legato a problemi di configurazione.

Nota: Quando passi a xf86-video-ati o xf86-video-radeonhd, ricorda che puoi comunque effettuare il login senza xorg.conf (senza problemi nella maggior parte dei casi), dal momento che Xorg è in grado di autoconfigurarsi. Così xorg.conf è un'opzione in più.

Ho installato un driver libero e la mia scheda video è tremendamente lenta

Alcune schede video possono essere installate di base provando ad usare KMS. Puoi controllare se ciò accade nel tuo caso lanciando:

dmesg | egrep "drm|radeon"

Questo comando dovrebbe mostrarti qualcosa come questo, ciò significa che la tua scheda sta provando ad usare KMS:

[drm] radeon default to kernel modesetting.
...
[drm:radeon_driver_load_kms] *ERROR* Failed to initialize radeon, disabling IOCTL

Se la tua scheda non è supportata per KMS (qualunque scheda più vecchia de r100), allora puoi disable KMS. Questo dovrebbe risolvere il problema.

Sto usando il driver open source e l'accelerazione 3D non funziona

Questo problema può essere risolto mediante l'installazione del firmware appropriato per la propria scheda. I vari Firmware si possono ottenere qui; è sufficiente scaricare e salvare il file Template:Filename in Template:Filename.

Un PKGBUILD appropriato esiste anche su AUR: Template:Package AUR. Inoltre, un utente ha ritenuto necessario includere il firmware nel ramdisk iniziale al fine di consentire l'accelerazione hardware (R770, xf86-video-ati, kernel 2.6.33.2). Questo può essere ottenuto con Template:Package AUR.