ATI: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Zur Navigation springen Zur Suche springen
(update)
Zeile 14: Zeile 14:
 
Die benötigten Pakete heißen  ''xf86-video-ati'' und ''libgl-dri''.  
 
Die benötigten Pakete heißen  ''xf86-video-ati'' und ''libgl-dri''.  
  
'''Achtung:''' Wenn zuvor der proprietäre Treiber installiert war, müssen die Pakete ''fglrx'' (bzw. ''fglrx-beyond'' ect.) und ''fglrx-utils'' entfernt werden!
+
'''Achtung:''' Wenn zuvor der proprietäre Treiber installiert war, müssen die Pakete ''catalyst'' (bzw. ''catalyst-mm'' ect.) und ''catalyst-utils'' entfernt werden! Sollte dies wegen Abhängigkeits Problemen nicht funktionieren sollte, die 'd' Option verwenden. (Pacman -Rd <Paketname>)
  
  pacman -S xf86-video-ati libgl-dri
+
  pacman -S xf86-video-ati libgl
  
  
Zeile 47: Zeile 47:
 
  EndSection
 
  EndSection
  
Damit Direct-Rendering funktionert, darf ''fglrx-utils'' nicht installiert sein. Stattdessen wird ''libgl-dri'' verwendet. Andernfalls wird die falsche libGL.so verwendet. Außerdem muss der User Mitglied der Gruppe ''video'' sein.
+
Damit Direct-Rendering funktionert, darf ''catalyst-utils'' nicht installiert sein. Stattdessen wird ''libgl'' verwendet. Andernfalls wird die falsche libGL.so verwendet. Außerdem muss der User Mitglied der Gruppe ''video'' sein.
  
 
Prüfen ob die 3D-Unterstützung funktioniert (''glxinfo'' ist Bestandteil des Paketes ''mesa''):
 
Prüfen ob die 3D-Unterstützung funktioniert (''glxinfo'' ist Bestandteil des Paketes ''mesa''):
Zeile 86: Zeile 86:
  
  
==Proprietärer ATI Treiber (fglrx)==
+
==Proprietärer ATI Treiber (catalyst; ehemals fglrx)==
 
Eine Liste der Unterstüzten Karten / Chips findet man in den jeweiligen Release-Notes auf der ATI Homepage.
 
Eine Liste der Unterstüzten Karten / Chips findet man in den jeweiligen Release-Notes auf der ATI Homepage.
 +
 +
'''Beachte:''' Seit der Namensänderung von ''fglrx'' in ''catalyst'' heißen die nötigen Pakete ''catalyst'' und ''catalyst-utils''. Das Kernel Modul und der Xorg Treiber heißen aber weiterhin ''fglrx''.
  
 
Die Treiber werden unter der Console installiert.  
 
Die Treiber werden unter der Console installiert.  
Zeile 99: Zeile 101:
 
Nun können die Ati-Treiber installiert werden. (mit Aktualisierung)
 
Nun können die Ati-Treiber installiert werden. (mit Aktualisierung)
  
     # pacman -Sy fglrx
+
     # pacman -Sy catalyst catalyst-utils
  
 
Dann noch die xorg.conf anpassen.
 
Dann noch die xorg.conf anpassen.
Zeile 152: Zeile 154:
 
     EndSection
 
     EndSection
  
Dann abspeichern und noch in die Gruppe video eintragen.
+
Dann abspeichern und den User noch in die Gruppe video eintragen.
  
 
     # gpasswd -a user_name video
 
     # gpasswd -a user_name video
  
 +
Das Kernel Modul laden. (und in die rc.conf eintragen)
 +
 +
# modprobe fglrx
  
 
Dann den XServer starten.
 
Dann den XServer starten.
Zeile 187: Zeile 192:
 
'''''Eigene Erfahrungen:'''''
 
'''''Eigene Erfahrungen:'''''
  
- Der Monitor verliert das signal sobald XOrg startet? Es kann sein das "fglrx" den digitalen Anschluss nicht unterstützt, bei mir hat das benutzen des analogen Kabels geholfen.
+
- Der Monitor verliert das signal sobald XOrg startet? Es kann sein das "catalyst" den digitalen Anschluss nicht unterstützt, bei mir hat das benutzen des analogen Kabels geholfen.
 
>> Er unterstuetzt den digitalen Ausgang - schaltet aber auf den analogen um beim Laden der Treiber. Ich benutze hier beide Ausgaenge als Dual Screen und beide werden hierbei angesprochen.
 
>> Er unterstuetzt den digitalen Ausgang - schaltet aber auf den analogen um beim Laden der Treiber. Ich benutze hier beide Ausgaenge als Dual Screen und beide werden hierbei angesprochen.
  

Version vom 22. November 2007, 23:16 Uhr

Info

Für ATI Grafikkarten gibt es zwei verschieden Treiber. Einen Open-Source und einen proprietären von ATI. Wer sich nicht sicher ist, welchen Treiber er verwenden soll, sollte erstmal den Open-Source probieren. Er erfüllt die meisten Anforderungen und ist im Allgemeinen weniger problematisch.

Der Proprietäre Treiber unterstüzt kein AIGLX. Um Compiz oder Beryl mit dem ATI Treiber zu nutzen muss XGL verwendet werden. Der Open-Source Treiber ist momentan (noch?) nicht so schnell wie der proprietäre. Es fehlen TV-Out und Dual-Link Unterstüzung und evtl. noch weitere Funktionen. Andererseits unterstüzt er AIGLX und hat eine bessere Dual-Head Unterstüzung.

Open Source Treiber

Eine Liste der unterstüzten Karten / Chips gibt es hier: http://dri.freedesktop.org/wiki/ATI


Installation

Die benötigten Pakete heißen xf86-video-ati und libgl-dri.

Achtung: Wenn zuvor der proprietäre Treiber installiert war, müssen die Pakete catalyst (bzw. catalyst-mm ect.) und catalyst-utils entfernt werden! Sollte dies wegen Abhängigkeits Problemen nicht funktionieren sollte, die 'd' Option verwenden. (Pacman -Rd <Paketname>)

pacman -S xf86-video-ati libgl


Konfiguration

Folgendes muss in die xorg.conf:

In die Module Section:

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

In die Device Section:

Section "Device"
 Identifier "name"  # Dein Alias
 Driver "radeon"
 Option "XAANoOffscreenPixmaps" "true" #wird für AIGLX benötigt
EndSection

In die DRI Section:

Section "DRI"
 Group        "video" #nur Mitglieder der Gruppe video
 Mode         0660
EndSection

Damit Direct-Rendering funktionert, darf catalyst-utils nicht installiert sein. Stattdessen wird libgl verwendet. Andernfalls wird die falsche libGL.so verwendet. Außerdem muss der User Mitglied der Gruppe video sein.

Prüfen ob die 3D-Unterstützung funktioniert (glxinfo ist Bestandteil des Paketes mesa):

$ glxinfo | grep direct
direct rendering: Yes


Performance Tuning

Die folgenden Optionen kommen in die Device Section:

Von Haus aus läuft der Open-Source Treiber mit 1x AGP Geschwindigkeit. Im Allgemeinen ist es sicher dies zu ändern. Sollte es Probleme geben, kann man versuchen den Wert zu reduzieren, oder die Option halt nicht verwenden.

Option "AGPMode" "4"

ColorTiling zu aktivieren ist absolut sicher und vermutlich standardmäßig aktiviert. Aber es wurde über einen Performance Zuwachs berichtet, wenn diese Option explizit per xorg.conf aktiviert wird.

Option "ColorTiling" "on"

Beschleuniguns Architektur. Dies wird nur bei neueren Karten funktionieren. Falls die Option aktiviert ist und es Probleme gibt, einfach wieder entfernen.

Option "AccelMethod" "EXA"

Im Allgemeinen ist es sicher Page Flip zu aktivieren. Es wird wohl meist bei älteren Karten verwendet und würde EXA deaktivieren.

Option "EnablePageFlip" "on"

Diese Option kann zu Problemen führen. Sollte dies der Fall sein: entfernen.

Option "AGPFastWrite" "yes"

Die man-page enthät weitere Konfigurations-Optionen.

man radeon

Mit dem Tool driconf kann man auch einige Einstellungen verändern; und ein "disable Low Impact fallback", was von einigen Programmen (z.B. google-earth,...) benötigt wird, ist damit ebenfalls möglich.


Proprietärer ATI Treiber (catalyst; ehemals fglrx)

Eine Liste der Unterstüzten Karten / Chips findet man in den jeweiligen Release-Notes auf der ATI Homepage.

Beachte: Seit der Namensänderung von fglrx in catalyst heißen die nötigen Pakete catalyst und catalyst-utils. Das Kernel Modul und der Xorg Treiber heißen aber weiterhin fglrx.

Die Treiber werden unter der Console installiert. Wenn Der XServer noch läuft, auf die Consolle wechseln (STR+ALT+F1).


XServer beenden

  # /sbin/init 3

Nun können die Ati-Treiber installiert werden. (mit Aktualisierung)

   # pacman -Sy catalyst catalyst-utils

Dann noch die xorg.conf anpassen.

   # nano -w /etc/X11/xorg.conf

Unter Section "Module" müssen die beiden folgenden Module sein.

    Load  "dri"
    Load  "glx"

Das sieht dann z.B. so aus.

   Section "Module"
      Load  "dri"
      Load  "extmod"
      Load  "glx"
      Load  "type1"
      Load  "freetype"
   EndSection

Nun kommen wir zum eigentlichen Teil ändern der Section "Device"

  Section "Device"
     Identifier   "Device[0]"
     Driver       "fglrx"
     VendorName   "ATI"
     BoardName    "RV350 NJ [Radeon 9800 XT]"
     Screen 0
     BusID "3:0:0"
   EndSection

Damit auch die richtige BusID eingetragen ist,

   lspci | grep VGA

Das sieht zB so aus

   03:00.0 VGA compatible controller: ATI Technologies Inc RV350 NJ [Radeon 9800 XT]

also ist die BusID hier 3.0.0. Wenn nicht die richtige BusID eingetragen ist, wird der XServer nicht starten.

Das wir auch 3D-Unterstüzung haben.

  Section "DRI" 
     Group	"video"
     Mode	 0666
  EndSection

Die Composite sollte ausgeschaltet sein.

   Section "Extensions"
      Option  "Composite" "Disabled"
   EndSection

Dann abspeichern und den User noch in die Gruppe video eintragen.

   # gpasswd -a user_name video

Das Kernel Modul laden. (und in die rc.conf eintragen)

# modprobe fglrx

Dann den XServer starten. Unter dem XServer eine Console öffnen und folgendes eingeben:

  # fglrxinfo

Danach sollte der Bildschirm etwa so ausschauen

  [tuxmux@tux ~]$ fglrxinfo
  display: :0.0  screen: 0
  OpenGL vendor string: ATI Technologies Inc.
  OpenGL renderer string: RADEON 9800 XT Generic
  OpenGL version string: 2.0.6174 (8.31.5)

Nachschaun ob man 3D-Unterstüzung hat. (glxinfo ist Bestandteil des Paketes mesa)

   # glxinfo | grep direct
     direct rendering: Yes

Wenn man unter XOrg 7 eine Fehlermeldung von AIGLX bekommt. zB

  (EE) AIGLX error: dlsym for __driCreateNewScreen_20050727 failed (/usr/lib/xorg/modules/dri/fglrx_dri.so: undefined symbol: __driCreateNewScreen_20050727)
  (EE) AIGLX: reverting to software rendering

Dann in der xorg.conf unter Section "ServerLayout"

   Option  "AIGLX"  "off"


Eigene Erfahrungen:

- Der Monitor verliert das signal sobald XOrg startet? Es kann sein das "catalyst" den digitalen Anschluss nicht unterstützt, bei mir hat das benutzen des analogen Kabels geholfen. >> Er unterstuetzt den digitalen Ausgang - schaltet aber auf den analogen um beim Laden der Treiber. Ich benutze hier beide Ausgaenge als Dual Screen und beide werden hierbei angesprochen.