Nachdem gestern der Ati Catalyst Treiber 10.3 erschienen ist (und seit heute auch downloadbar ist), dachte ich mir, ich könnte die Treiberinstallation auf dem A52JR noch einmal probieren. Nach der Installation des Treibers mit
./ati-driver-installer-10-3-x86.x86_64.run
probierte ich erneut
aticonfig --initial
Das Ergebnis war ernüchternd: Wieder wurde mir gesagt, dass keine unterstützten Karten im Rechner vorhanden waren, eine Konfiguration daher nicht möglich sei. Zur Erinnerung: lspci erkennt die Karte wie folgt:
01:00.0 VGA compatible controller [0300]: ATI Technologies Inc Device [1002:68e0]
Doch heute packte mich ein wenig der Spieltrieb und ich probierte zunächst anhand einer minimalen xorg.conf, ob denn die Karte erkannt wird, wenn ich dem Treiber explizit mitteile, dass er für sie zuständig ist — das besorgt die Zeile ChipID. Über SSH loggte ich mich also am Notebook ein und baute die Konfigurationsdatei auf. Bereits mit einer Section “Screen” und einer Section “Device” erhielt ich ein Bild in der nativen Auflösung des Widescreen-Displays. Die minimale xorg.conf:
Section "Screen"
Identifier "Screen_AUTO_1366x768"
Defaultdepth 24
SubSection "Display"
Modes "1366x768" "1024x768" "1024x600" "800x600"
EndSubSection
EndSection
Section "Device"
Identifier "Card0"
Driver "fglrx"
ChipId 0x68e0
VendorName "ATI"
BusId "PCI:1:0:0"
EndSection
Die vollständige xorg.conf kann hier heruntergeladen werden. Die größte Änderung dürfte sein, dass ich Option "SWCursor" "true" aktiert habe, um nach einem Logout das Fehlen des Zeigers zu vermeiden. Wer diese xorg.conf als Basis für eigene Experimente verwendet, sollte wie ich sich per SSH einloggen, den gdm stoppen und dann remote versuchen, ob sich der Xserver starten lässt: Logdatei und Meldungen in der Konsole, in dem der Start durchgeführt werden, sind aussagekräftig – Oft muss ChipId oder BusId angepasst werden.
Fehlendes Kernelmodul
Leider lässt sich auf meinem 2.6.33.1 das fglrx-Kernelmodul nicht kompilieren. Nach dem Wechsel nach /lib/modules/fglrx/build_mod und Aufruf von ./make.sh mäkelt das Script zunächst über zwei fehlender Header. Nach dem softlinken dieser Header geht es aufgrund geänderter Funktionen auch nicht weiter. Ich werde dieses Problem irgendwann angehen, gebe mich zunächst mit weniger (gar keiner?) Beschleunigung zufrieden.
Nerviges Overlay “Unsupported Hardware”
Im rechten unteren Eck befindet sich ein Overlay “Unsupported Hardware”. Dieses lässt sich nur abschalten, indem man mit dem Hex-Editor an das Treiber-Binary herangeht. Der User “Crypto2600” aus den Ubuntu-Foren hat hierfür ein kleines Script geschrieben, das den Vorgang automatisiert:
#!/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
echo found $x
sed -i "s/$x/\x90\x90\x90\x90\x90/g" $DRIVER
done
Das Ende vom Lied?
Fürs erste läuft die Grafik zufriedenstellend. Das fehlende Kernelmodul rüste ich bei Gelegenheit nach — ich mutmaße einmal, dass die Buildscripte für Lucid bald gepatcht sind, so dass diese Änderung nicht mehr viel Arbeit bedarf. Und vielleicht supported Ati die 5470 ja irgendwann einmall ganz offiziell…
Nachtrag, 6. April 2010: “fglrx” hatte die Lösung. Umgesetzt habe ich sie, indem ich nach dem Download des Patches von http://aur.archlinux.org/packages/catalyst/catalyst/fglrx-2.6.33.patch und Anwenden desselben die Module unterhalb von /lib/modules gebaut habe. Quick and dirty gelang diese mit:
cd /lib/modules/fglrx patch -p5 < /tmp/fglrx-2.6.33.patch cd build_mod ./make.sh cd .. ./make_install.sh
Anschließend lies sich das Modul wie erwartet laden und Hardwarebeschleunigung ist nun aktiv aktiv.
Comments
4 responses to “Linux auf dem Asus A52JR — Teilerfolg mit Mobility Radeon 5470”
Hm, du nutzt Lucid? Der fglrx sollte aber Xorg 7.5 noch nicht unterstützen. Davon abgesehen scheinst du einen Mainline-Kernel installiert zu haben, also werden deine Probleme mit den fehlenden Kernelmodulen wohl daher kommen. Im übrigen wird laut releasenotes deine Grafikkarte vom 10.3er fglrx unterstützt. Eventuell liegt es an o.g. Gründen, dass du die Fehlermeldungen/Overlays bekommst.
Ich benutze Karmic und einen selbst gebauten Vanilla-Kernel. Dass die Graka offiziell unterstützt wird, aber eben nicht als solche erkannt wird, kann daran liegen, dass diese Chipsatzrevision nur bei OEMs verbaut ist. Die PDF-Datei catalyst_103_linux.doc erwähnt die Radeon Mobility HD 5470 noch nicht als unterstützt (nur 4xxx werden dort erwähnt). Durchaus möglich, dass andere READMEs auf die bereits im Treiber enthaltene, aber noch nicht für die breite Masse freigeschaltete Unterstützung für diesen Chipsatz verweisen.
Die ATI Treiber laufen nicht mit 2.6.33. Dazu ist ein manuelles patchen des Treibers notwendig.
./ati-driver-installer-10-3-x86.x86_64.run –extract 10.3
Anschließend in das Verzeichnis 10.3 wechseln und diesen patch ausführen
http://aur.archlinux.org/packages/catalyst/catalyst/fglrx-2.6.33.patch
Klappt bei mir unter Debian squeeze mit 2.6.33.1.
Viel Erfolg!
@Mattias: Sorry, du hast natürlich Recht! Habe das “Mobility” irgendwie überlesen… 😉 Und deine Bemerkung für die Buildscripte für Lucid hat mich vermuten lassen, dass du eben dieses nutzt.
lG