我有一台配备 Intel CoreI7 4500u 和 AMD Radeon 8600 HD 的 Dell Inspiron 15r 笔记本电脑,最近我安装了带有 XFCE 桌面的 Debian Jessie Linux。
我的问题是这样的:我尝试安装 Fglrx AMD 驱动程序,但是当我启用它时,XServer 将无法工作,日志包含以下消息:
[ 226.609]
X.Org X Server 1.16.4
Release Date: 2014-12-20
[ 226.612] X Protocol Version 11, Revision 0
[ 226.613] Build Operating System: Linux 3.16.0-4-amd64 x86_64 Debian
[ 226.614] Current Operating System: Linux localhost 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt7-1 (2015-03-01) x86_64
[ 226.614] Kernel command line: BOOT_IMAGE=/vmlinuz-3.16.0-4-amd64 root=UUID=5aa12b5b-ac46-4da0-8d99-4b981388ce53 ro quiet
[ 226.616] Build Date: 11 February 2015 12:32:02AM
[ 226.617] xorg-server 2:1.16.4-1 (http://www.debian.org/support)
[ 226.618] Current version of pixman: 0.32.6
[ 226.620] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 226.620] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 226.624] (==) Log file: "/var/log/Xorg.0.log", Time: Fri Apr 3 02:41:21 2015
[ 226.625] (==) Using config file: "/etc/X11/xorg.conf"
[ 226.626] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 226.626] (==) ServerLayout "aticonfig Layout"
[ 226.626] (**) |-->Screen "aticonfig-Screen[0]-0" (0)
[ 226.626] (**) | |-->Monitor "aticonfig-Monitor[0]-0"
[ 226.626] (**) | |-->Device "aticonfig-Device[0]-0"
[ 226.626] (==) Automatically adding devices
[ 226.626] (==) Automatically enabling devices
[ 226.626] (==) Automatically adding GPU devices
[ 226.627] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 226.627] Entry deleted from font path.
[ 226.627] (==) FontPath set to:
/usr/share/fonts/X11/misc,
/usr/share/fonts/X11/100dpi/:unscaled,
/usr/share/fonts/X11/75dpi/:unscaled,
/usr/share/fonts/X11/Type1,
/usr/share/fonts/X11/100dpi,
/usr/share/fonts/X11/75dpi,
built-ins
[ 226.627] (==) ModulePath set to "/usr/lib/xorg/modules"
[ 226.627] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 226.627] (II) Loader magic: 0x7f3350a68d80
[ 226.627] (II) Module ABI versions:
[ 226.627] X.Org ANSI C Emulation: 0.4
[ 226.627] X.Org Video Driver: 18.0
[ 226.627] X.Org XInput driver : 21.0
[ 226.627] X.Org Server Extension : 8.0
[ 226.627] (II) xfree86: Adding drm device (/dev/dri/card0)
[ 226.628] (--) PCI:*(0:0:2:0) 8086:0a16:1028:05ea rev 9, Mem @ 0xc0000000/4194304, 0xb0000000/268435456, I/O @ 0x00005000/64
[ 226.628] (--) PCI: (0:3:0:0) 1002:6660:1028:05ea rev 0, Mem @ 0xa0000000/268435456, 0xc0500000/262144, I/O @ 0x00003000/256, BIOS @ 0x????????/131072
[ 226.628] (II) "glx" will be loaded by default.
[ 226.628] (II) LoadModule: "glx"
[ 226.628] (II) Loading /usr/lib/xorg/modules/linux/libglx.so
[ 226.628] (II) Module glx: vendor="Advanced Micro Devices, Inc."
[ 226.628] compiled for 6.9.0, module version = 1.0.0
[ 226.628] (II) LoadModule: "fglrx"
[ 226.629] (II) Loading /usr/lib/xorg/modules/drivers/fglrx_drv.so
[ 226.648] (II) Module fglrx: vendor="FireGL - AMD Technologies Inc."
[ 226.648] compiled for 1.4.99.906, module version = 14.20.7
[ 226.648] Module class: X.Org Video Driver
[ 226.649] (II) Loading sub module "fglrxdrm"
[ 226.649] (II) LoadModule: "fglrxdrm"
[ 226.649] (II) Loading /usr/lib/xorg/modules/linux/libfglrxdrm.so
[ 226.649] (II) Module fglrxdrm: vendor="FireGL - AMD Technologies Inc."
[ 226.649] compiled for 1.4.99.906, module version = 14.20.7
[ 226.649] (II) AMD Proprietary Linux Driver Version Identifier:14.20.7
[ 226.649] (II) AMD Proprietary Linux Driver Release Identifier: UNSUPPORTED-14.201.1006.1002
[ 226.649] (II) AMD Proprietary Linux Driver Build Date: Sep 2 2014 10:14:55
[ 226.649] (++) using VT number 1
[ 226.649] (--) controlling tty is VT number 1, auto-enabling KeepTty
[ 226.649] (WW) Falling back to old probe method for fglrx
[ 226.652] (II) Loading PCS database from /etc/ati/amdpcsdb /etc/ati/amdpcsdb.default
[ 226.653] ukiDynamicMajor: failed to open /proc/ati/major
[ 226.653] ukiDynamicMajor: failed to open /proc/ati/major
[ 226.653] (--) Chipset Supported AMD Graphics Processor (0x6660) found
[ 226.653] (II) fglrx(0): pEnt->device->identifier=0x7f33527cb380
[ 226.653] (II) fglrx(0): === [xdl_xs116_atiddxPreInit] === begin
[ 226.654] (**) fglrx(0): Depth 24, (--) framebuffer bpp 32
[ 226.654] (II) fglrx(0): Pixel depth = 24 bits stored in 4 bytes (32 bpp pixmaps)
[ 226.654] (==) fglrx(0): Default visual is TrueColor
[ 226.654] (**) fglrx(0): Option "DPMS" "true"
[ 226.654] (==) fglrx(0): RGB weight 888
[ 226.654] (II) fglrx(0): Using 8 bits per RGB
[ 226.654] (==) fglrx(0): Buffer Tiling is ON
[ 226.654] (II) Loading sub module "fglrxdrm"
[ 226.654] (II) LoadModule: "fglrxdrm"
[ 226.654] (II) Loading /usr/lib/xorg/modules/linux/libfglrxdrm.so
[ 226.654] (II) Module fglrxdrm: vendor="FireGL - AMD Technologies Inc."
[ 226.654] compiled for 1.4.99.906, module version = 14.20.7
[ 226.654] ukiDynamicMajor: failed to open /proc/ati/major
[ 226.654] ukiDynamicMajor: failed to open /proc/ati/major
[ 226.654] (**) fglrx(0): NoAccel = NO
[ 226.654] (**) fglrx(0): AMD 2D Acceleration Architecture enabled
[ 226.654] (--) fglrx(0): Chipset: "EXO XT (6660)" (Chipset = 0x6660)
[ 226.654] (--) fglrx(0): (PciSubVendor = 0x1028, PciSubDevice = 0x05ea)
[ 226.654] (==) fglrx(0): board vendor info: third party graphics adapter - NOT original AMD
[ 226.655] (--) fglrx(0): Linear framebuffer (phys) at 0xa0000000
[ 226.655] (--) fglrx(0): MMIO registers at 0xc0500000
[ 226.655] (--) fglrx(0): I/O port at 0x00003000
[ 226.655] (==) fglrx(0): ROM-BIOS at 0x000c0000
[ 226.658] (II) fglrx(0): Invalid ATI BIOS from int10, the adapter is not VGA-enabled
[ 226.658] (EE) fglrx(0): Invalid video BIOS signature!
[ 226.658] (EE) fglrx(0): GetBIOSParameter failed
[ 226.658] (EE) fglrx(0): PreInitAdapter failed
[ 226.658] (EE) fglrx(0): PreInit failed
[ 226.658] (II) fglrx(0): === [xdl_xs116_atiddxPreInit] === end
[ 226.659] (II) UnloadModule: "fglrx"
[ 226.659] (II) UnloadSubModule: "fglrxdrm"
[ 226.659] (II) Unloading fglrxdrm
[ 226.659] (II) UnloadSubModule: "fglrxdrm"
[ 226.659] (EE) Screen(s) found, but none have a usable configuration.
[ 226.659] (EE)
Fatal server error:
[ 226.659] (EE) no screens found(EE)
[ 226.659] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 226.659] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 226.659] (EE)
[ 226.661] (EE) Server terminated with error (1). Closing log file.
所以我删除了工具xorg.conf
生成的文件aticonfig
才能进入桌面。
使用lshw -C Display
我得到这个:
*-display
description: VGA compatible controller
product: Haswell-ULT Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 09
width: 64 bits
clock: 33MHz
capabilities: msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:64 memory:c0000000-c03fffff memory:b0000000-bfffffff ioport:5000(size=64)
*-display UNCLAIMED
description: Display controller
product: Sun XT [Radeon HD 8670A/8670M/8690M]
vendor: Advanced Micro Devices, Inc. [AMD/ATI]
physical id: 0
bus info: pci@0000:03:00.0
version: 00
width: 64 bits
clock: 33MHz
capabilities: pm pciexpress msi bus_master cap_list
configuration: latency=0
resources: memory:a0000000-afffffff memory:c0500000-c053ffff ioport:3000(size=256) memory:c0540000-c055ffff
我的问题是特定于硬件还是软件?它可以解决吗?
答案1
简单的解决方案..不使用AMD的二进制驱动程序,而是使用带有适当的amd-ucode、mesa等的开源xorg-video-ati。
这张相当古老的卡受到开源驱动程序的良好支持
答案2
我通过使用解决了这个问题sudo apt-get install fglrx*
。
然后我遇到了两个新问题:
aticonfig --adapter=all --initial
未检测到我的英特尔高清显卡当我使用 AMD 启动计算机时,鼠标光标变得不可见(已确认为 Debian 测试附带的 XServer 中的错误)。
我还发现AMD混合显卡之间的切换方法很糟糕;相反,我将以下行添加到生成的
xorg.conf
文件中:“设备”部分 标识符“aticonfig-Device[0]-1” 驱动程序“intel” BusID“PCI:0:2:0” EndSection
在本Screen
节中,我使用前面的标识符来使用我的 Intel HD 或标识符aticonfig-Device[0]-0
来使用我的 AMD,如下所示:
英特尔高清显卡:
Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-1"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
AMD显卡
Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-0"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection
然后我只需使用 重新启动灯光显示管理器sudo service lightdm restart
。