ATI: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Weltio (Diskussion | Beiträge)
Weltio (Diskussion | Beiträge)
Zeile 95: Zeile 95:


===Fehlerbehebung===
===Fehlerbehebung===
Steht in /var/log/Xorg.0.log
Steht in der /var/log/Xorg.0.log
(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
so liegt das daran, dass kein acpid-Daemon läuft. Diesen durch
pacman -Sy acpid
installieren und in das Daemon-Array der ''/etc/rc.conf'' eintragen.
 
Bei
  (WW) Warning, couldn't open module fgl.renamed.libdri
  (WW) Warning, couldn't open module fgl.renamed.libdri
  (EE) Failed to load module "fgl.renamed.libdri" (module does not exist, 0)
  (EE) Failed to load module "fgl.renamed.libdri" (module does not exist, 0)

Version vom 25. April 2009, 18:08 Uhr

Für den Betrieb von ATI-Grafikkarten unter Linux, gibt es die Möglichkeit der Benutzung, eines proprietären (Catalyst) und zwei freien Treiber (ati, radeonhd). Die Treiber unterscheiden sich in ihrem Funktionsumfang, wobei die freien Treiber in den meisten Fällen ausreichen sollten.

Open-Source-Treiber

Installation

Achtung: Falls der proprietäre Treiber installiert war, müssen die Pakete catalyst und catalyst-utils zuerst entfernt werden! Sollte dies wegen Abhängigkeitsproblemen nicht funktionieren, kann die Option 'd' verwendet werden. (pacman -Rd catalyst catalyst-utils)

Für xf86-video-ati:

pacman -Sy xf86-video-ati

Für xf86-video-radeonhd:

pacman -Sy xf86-video-radeonhd

Konfiguration

Die Datei xorg.conf muss folgendermaßen editiert werden:

Module Section

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

Device Section

Für xf86-video-ati:

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

Für xf86-video-radeonhd:

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

DRI Section

Section "DRI"
 Group        "video"
 Mode         0660
EndSection

Der Benutzer muss in der Gruppe video sein, um die 3D-Unterstützung, falls unterstützt, zu verwenden.

TV-Out

Derzeit unterstützt nur radeon TV-Out. (Getestet auf: Mobility Radeon 9700)

Um die TV-Out Unterstützung auf Karten der Radeon HDxxxx Reihe (r6xx-r7xx) zu aktivieren, muss

Option "ATOMTvOut" "TRUE"

in Section "Device" in der Datei xorg.conf eingefügt werden.

Der Ausgang wird mittels xrandr konfiguriert:

xrandr --output S-video --set load_detection 1
xrandr --addmode S-video 800x600
xrandr --output S-video --set tv_standard pal

Aktiviert wird der Ausgang mit:

xrandr --output S-video --mode 800x600

Ausgeschaltet wird der Ausgang mit:

xrandr --output S-video --off

Leider kann der Inhalt eines XVideo-Bereichs (z.B. DVD-Wiedergabefenster) nur entweder auf dem PC selbst oder aber auf dem TV-Gerät ausgegeben werden. Das Umschalten geschieht mit xvattr, welches man aus dem AUR installieren kann.

  • Video-Ausgabe auf TV
xvattr -a XV_CRTC -v 1
  • Video-Ausgabe auf PC
xvattr -a XV_CRTC -v 0

Alternativ zur Nutzung von xvattr kann man auch den Desktop erweitern und dann das Video Fenster auf den Fernseher verschieben. So kann man den PC auch während der Video-Wiedergabe weiterbenutzen. Das wird dann ebenfalls mit xrandr gemacht. Zum Beispiel so:

xrandr --output S-video --right-of LVDS 

Das erweitert den Desktop auf der rechten Seite. Man kann dann also Fenster rechts aus dem Bild schieben und sie erscheinen dann auf dem Fernseher. Es kann auch sein, dass man statt LVDS VGA-0 oder VGA nehmen muss. Das kann man herausfinden indem man sich die Ausgabe von xrandr -q anschaut.

Damit das ganze funktioniert muss man in der xorg.conf in der Screen Section die maximale virtuelle Auflösung (Monitor + TV) angeben. Das sieht dann z.B. so aus:

Section "Screen"
       Identifier "Default Screen"
       Device     "ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]"
       Monitor    "LCD-Display"
       DefaultDepth     24
       SubSection "Display"
               Depth     24
               Modes    "1280x800"
               Virtual   2080 800
       EndSubSection
EndSection

Die Werte für Virtual ergeben sich aus der Auflösung des Monitors (hier 1280x800) und der des TV-Ausgangs (hier 800x600). Also 2080 = 1280 + 800 und da in diesem Fall die Vertikale Auflösung des TV-Ausgangs (600) kleiner ist als die des Monitors (800) und der Desktop nach rechts erweitert wird, reicht eine maximale virtuelle Vertikale Auflösung von 800.

Fehlerbehebung

Steht in der /var/log/Xorg.0.log

(WW) Warning, couldn't open module fgl.renamed.libdri
(EE) Failed to load module "fgl.renamed.libdri" (module does not exist, 0)

ist es hilfreich, die Zeile

Load "FGL.renamed.libdri"

auszukommentieren

Für die Behebung dieses Fehlers:

(EE) Failed to load /usr/lib/xorg/modules/extensions//libdri.so
(EE) Failed to load module "dri" (loader failed, 7)
(EE) RADEONHD(0): RHDDRIVersionCheck: symbol DRIQueryVersion not available.(libdri.a is too old)
(WW) RADEONHD(0): RHDDRIPreInit: Version check failed. Disabling DRI.

muss man den xorg-server neuinstallieren.

pacman -Sy xorg-server

Proprietärer Treiber

Achtung: Falls der freie Treiber xf86-video-ati installiert war, müssen die Pakete libgl und xf86-video-ati zuerst entfernt werden! Sollte dies wegen Abhängigkeitsproblemen nicht funktionieren, kann die Option 'd' verwendet werden. (pacman -Rd libgl xf86-video-ati)

Zu beachten ist, dass obwohl das Treiberpaket catalyst heißt, der Treiber und das nötige Kernelmodul fglrx heißen.

Konfiguration

Die Datei xorg.conf muss folgendermaßen editiert werden: Bei den Xorg.conf's welche mit "aticonfig --initial" erstellt wurden hilft es die "BusID" auszukommentieren (# vor der Zeile setzen, also #BusID "deine-Bus-ID").

Module Section

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

Device Section

Section "Device"
 Identifier   "Device"
 Driver       "fglrx"
EndSection

DRI Section

Section "DRI" 
 Group	"video"
 Mode	 0660
EndSection

Der Benutzer muss in der Gruppe video sein.

Fehlerbehebung

Wenn X nicht startet und die Fehlermeldung zurückgibt, dass die eingestellte 8-Bit-Farbtiefe von fglrx nicht unterstützt werde, muss man die „Screen“-Sektion um folgenden Eintrag erweitern.

DefaultDepth     24

Nun sollte X starten.

Links

Radeon Framebuffer (radeonfb)