Ubuntu下安装 ATI 3470笔记

来源:岁月联盟 编辑:exp 时间:2012-02-14
作者:凌云
时间:2009年9月27日
参考:ATI Ubuntu Hardy Installation Guide
         
注:完全参考的这篇文章就可以,其中有许多问题的解决办法。
终于ATI驱动又可以用了,上次稀里糊涂就安装好显卡驱动了,也没做记录,还得这次由于编译新内核,导致ATI驱动安装出了问题,google了N多帖子,才终于解决了。
有两种驱动,开源和闭源
目前,闭源的比较好
闭源:Catalyst 
 
 
关于Catalyst Center版本问题
1  ATI Catalyst Center 9.4 works wi th the Lenovo switchable graphics driver.
2 9.8比9.9要好
3 windows下,目前(2009-4-26 03:50)兼容游戏最好的是9.2
4
下载       http://ati.amd.com/support/drivers/linux/linux-radeon.html
 
 
编译前准备
如果是再次安装,那要完全卸载已装软件
彻底删除已装驱动
gwlee@lingyun:/media/source/source/driver_r28$ sudo dpkg --purge fglrx-amdcccle fglrx-modaliases xorg-driver-fglrx xorg-driver-fglrx-dev fglrx-kernel-source
 彻底删除受限驱动
 
sudo apt-get remove xorg-driver-fglrx
sudo apt-get remove fglrx-control
sudo apt-get remove linux-restricted-modules-$(uname -r)
 
 
重新配置xorg
sudo dpkg-reconfigure xserver-xorg
 
 
安装
 
 
选择9.8
1 Install 必要的build tools 和libraries
$ sudo apt-get update
$ sudo apt-get install build-essential cdbs fakeroot dh-make debhelper debconf libstdc++5 dkms linux-headers-$(uname -r)
 
 
# If you are using the x86_64 architecture (64 bit, earlier known as amd64), install ia32-libs as well:
$ sudo apt-get install ia32-libs 
2 生成deb包
gwlee@lingyun:~/test/driver_t400_r28/ati$ sh ati-driver-installer-9-8-x86.x86_64.run --buildpkg Ubuntu/hardy
 
 
3 dpkg安装
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo dpkg -i fglrx-kernel-source_8.640-0ubuntu1_i386.deb xorg-driver-fglrx_8.640-0ubuntu1_i386.deb fglrx-amdcccle_8.640-0ubuntu1_i386.deb
 
 
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo dpkg -i fglrx-modaliases_8.640-0ubuntu1_i386.deb
 
 
4 Add driver to kernel module blacklist
$ sudo gedit /etc/default/linux-restricted-modules-common
 
 
 
File: /etc/default/linux-restricted-modules-common
DISABLED_MODULES="fglrx"
Add "fglrx" to the line "DISABLED_MODULES"
 
解释
after the modification above, the "Restricted Driver Manager" will signal "ATI accelerated graphics driver" not enabled (unticked). This is perfectly correct. At the end of the installation procedure it will signal in Status: "in use" (green light), but NOT enabled. It simply means that the fglrx module contained in the linux-restricted-modules package is not enabled, but another fglrx module (9.8) is in use.
 
 
注释掉"blacklist fglrx",如果以下文件存在
sudo gedit /etc/modprobe.d/blacklist-local
sudo gedit /etc/modprobe.d/blacklist-restricted
 
 
配置xorg
 
 
run方式安装的ati驱动的卸载方法
官方说明:
 
 
Uninstalling the ATI Linux Proprietary Driver Uninstalling the ATI Linux Proprietary Driver is dependent on the mode of the initial installation. Automatic or Custom Driver Installations If the ATI Proprietary Linux Driver was installed using either the Automatic or Custom options, then do the following: 1 Launch the Terminal Application/Window and navigate to the /usr/share/ati folder 2 With superuser permissions, enter the command "sh ./fglrx-uninstall.sh" You have now successfully uninstalled the ATI Linux Proprietary Driver
 
 
 
 
 
 
问题: 安装完,但不能被识别,显示红色的“Not in use”。不能启动3D效果。窗体移动还有些延迟。
分析:查看Xorg启动日志:/var/log/Xorg.0.org,发现有下面几个问题:
(II) LoadModule: "fglrxdrm"
(II) Loading /usr/lib/xorg/modules/linux//libfglrxdrm.so
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is -1, (No such device or address)
(WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
(WW) fglrx(0): could not detect X server version (query_status=-1)
(WW) fglrx(0): * DRI initialization failed!                  *
(WW) fglrx(0): * (maybe driver kernel module missing or bad) *
(WW) fglrx(0): * 2D acceleraton available (MMIO)             *
(WW) fglrx(0): * no 3D acceleration available  
(WW) fglrx(0): Textured Video not supported without DRI enabled.
(EE) fglrx(0): atiddxDriScreenInit failed, GPS not been initialized.
(EE) fglrx(0): XMM failed to open CMMQS connection.
(II) fglrx(0): XMM failed to initialize!
[glesx] __glESXExtensionInit: No GL ES2.0 capable screen found!
(II) AIGLX: Screen 0 is not DRI capable
这显示drm,DRI,XMM几个模块不能正确加载。
参考1 :TI Ubuntu Hardy Installation Guide提到:
Check for AGP and DRI errors in /var/log/Xorg.0.log like these are:
(EE) fglrx(0): [agp] unable to acquire AGP, error -1023
(EE) fglrx(0): cannot init AGP
(EE) fglrx(0): atiddxDriScreenInit failed, GPS not been initialized.
(WW) fglrx(0): * DRI initialization failed! *
If you have Intel 8285P and E7205 chipsets and AGP not detected then
 you have to remove the i82875p_edac module and restart a some others:
rmmod i82875p_edac
rmmod fglrx
rmmod intel-agp
rmmod agpgart
modprobe agpgart
modprobe intel-agp
modprobe fglrx
参考2:initramfs scripts hard-coded to load i915; blocks loading non-intel drm modules
 
 
 用户A:Running Ubuntu 9.10 with kernel 2.6.30? I won't even ask how you got as far as you did. ;) But here is what I think the problem is:
   Looks like the drm kernel module is loaded. See this message in BootDmesg.txt: "[drm] Initialized drm 1.1.0 20060810". Therefore the fglrx kernel module fails to load later on with "[fglrx:firegl_init_module] *ERROR* firegl_stub_register failed". Without the fglrx module loaded, you won't get DRI.
用户B:You need to unload the drm kernel module before fglrx can be loaded.
really, i just enabled fglrx in jockey.
drm was in use by i915. i did
sudo modprobe -r i915
sudo modprobe -r drm
modprobe fglrx
结果and restarted X. now moving windows is smooth, and i can enable compiz.
 
 
解决方案:
这说明是内核加载相关模块时出现问题。
先卸载相关模块,再重新加载,注意加载顺序
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo rmmod intel_agp_ich9m
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo rmmod fglrx
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo rmmod agpgart
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo modprobe agpgart
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo modprobe intel-agp-ich9m
gwlee@lingyun:~/test/driver_t400_r28/ati$ sudo modprobe fglrx
 
 
 
 
结果:
Xorg.0.org还有以下问题,不过没影响!
(WW) fglrx(0): could not detect X server version (query_status=-1)