До сих пор не сталкивался с продуктами этой компании, посему нахожусь в замешательстве. Проблема должна решаться тривиально, поэтому с интересом выслушаю опытных в этой сфере людей.
Есть Дебиан/тестинг. Есть встроенный в материнскую плату видеочип ATi Radeon HD1250.
zhan@zLaptop:~$ sudo hwinfo --gfxcard
27: PCI 105.0: 0300 VGA compatible controller (VGA)
[Created at pci.318]
UDI: /org/freedesktop/Hal/devices/pci_1002_791f
Unique ID: ul7N.1DXFkHvi+p4
Parent ID: vSkL.HjQnVRFuoa8
SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:05.0
SysFS BusID: 0000:01:05.0
Hardware Class: graphics card
Model: "ATI RS690M [Radeon X1200 Series]"
Vendor: pci 0x1002 "ATI Technologies Inc"
Device: pci 0x791f "RS690M [Radeon X1200 Series]"
SubVendor: pci 0x1462 "Micro-Star International Co., Ltd."
SubDevice: pci 0x1022
Driver: "radeon"
Driver Modules: "drm"
Memory Range: 0xf0000000-0xf7ffffff (rw,prefetchable)
Memory Range: 0xfe9f0000-0xfe9fffff (rw,non-prefetchable)
I/O Ports: 0xd000-0xdfff (rw)
Memory Range: 0xfe800000-0xfe8fffff (rw,non-prefetchable)
IRQ: 18 (25106 events)
I/O Ports: 0x3c0-0x3df (rw)
Module Alias: "pci:v00001002d0000791Fsv00001462sd00001022bc03sc00i00"
Driver Info #0:
Driver Status: radeon is active
Driver Activation Cmd: "modprobe radeon"
Config Status: cfg=new, avail=yes, need=no, active=unknown
Attached to: #9 (PCI bridge)
Primary display adapter: #27
1) Первое очевидное решение: m-a a-i fglrx-source прошло успешно (версия пакета fglrx-source: 1:10-9-3).
Однако на попытку загрузки модуль отвечал тем, что не может найти поддерживаемого устройства.
2) Затем решил попробовать установить драйвера с оффсайта через --buildpkg. Версия 9.3.
сборка заканчивается ошибкой. Лог:
zhan@zLaptop:~$ cat /var/cache/modass/fglrx-kernel-src.buildlog.2.6.32-5-686.1297073440
dh_testroot
rm -f configure-stamp
rm -f fglrx.ko fglrx.mod.c *.o libfglrx_ip.a
rm -f .version .*.o.flags .*.o.d .*.o.cmd .*.ko.cmd
rm -rf .tmp_versions
rm -rf patch
dh_clean
rm /usr/src/modules/fglrx/debian/control
rm /usr/src/modules/fglrx/debian/dirs
if [ -f /usr/src/modules/fglrx/debian/control.template ]; then \
cat /usr/src/modules/fglrx/debian/control.template > /usr/src/modules/fglrx/debian/control; \
fi
if [ -f /usr/src/modules/fglrx/debian/postinst ]; then \
mv /usr/src/modules/fglrx/debian/postinst /usr/src/modules/fglrx/debian/fglrx-kernel-2.6.32-5-686.postinst; \
fi
dh_testdir
touch configure-stamp
dh_testdir
/usr/bin/make -C /lib/modules/2.6.32-5-686/build SUBDIRS=/usr/src/modules/fglrx modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.32-5-686'
CC [M] /usr/src/modules/fglrx/firegl_public.o
In file included from /usr/src/modules/fglrx/firegl_public.c:169:
/usr/src/modules/fglrx/firegl_public.h:164:1: warning: "PM_EVENT_SUSPEND" redefined
In file included from /usr/src/linux-headers-2.6.32-5-common/arch/x86/include/asm/apic.h:6,
from /usr/src/linux-headers-2.6.32-5-common/arch/x86/include/asm/smp.h:13,
from /usr/src/linux-headers-2.6.32-5-common/include/linux/smp.h:36,
from /usr/src/linux-headers-2.6.32-5-common/include/linux/topology.h:33,
from /usr/src/linux-headers-2.6.32-5-common/include/linux/gfp.h:7,
from /usr/src/linux-headers-2.6.32-5-common/include/linux/kmod.h:22,
from /usr/src/linux-headers-2.6.32-5-common/include/linux/module.h:13,
from /usr/src/modules/fglrx/firegl_public.c:91:
/usr/src/linux-headers-2.6.32-5-common/include/linux/pm.h:284:1: warning: this is the location of the previous definition
In file included from /usr/src/modules/fglrx/drmP.h:86,
from /usr/src/modules/fglrx/drm_proc.h:41,
from /usr/src/modules/fglrx/firegl_public.c:431:
/usr/src/modules/fglrx/drm_os_linux.h:45: error: conflicting types for ‘irqreturn_t’
/usr/src/linux-headers-2.6.32-5-common/include/linux/irqreturn.h:16: error: previous declaration of ‘irqreturn_t’ was here
In file included from /usr/src/modules/fglrx/firegl_public.c:431:
/usr/src/modules/fglrx/drm_proc.h: In function ‘FGLDRM__vma_info’:
/usr/src/modules/fglrx/drm_proc.h:497: warning: format ‘%08lx’ expects type ‘long unsigned int’, but argument 5 has type ‘phys_addr_t’
/usr/src/modules/fglrx/firegl_public.c: In function ‘KCL_GetEffectiveUid’:
/usr/src/modules/fglrx/firegl_public.c:1405: error: ‘struct task_struct’ has no member named ‘euid’
/usr/src/modules/fglrx/firegl_public.c: In function ‘KCL_PosixSecurityCapSetIPCLock’:
/usr/src/modules/fglrx/firegl_public.c:1779: error: ‘struct task_struct’ has no member named ‘cap_effective’
/usr/src/modules/fglrx/firegl_public.c:1783: error: ‘struct task_struct’ has no member named ‘cap_effective’
/usr/src/modules/fglrx/firegl_public.c: In function ‘KCL_InstallInterruptHandler’:
/usr/src/modules/fglrx/firegl_public.c:2661: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
/usr/src/modules/fglrx/firegl_public.c: In function ‘KCL_MEM_VM_GetRegionPhysAddrStr’:
/usr/src/modules/fglrx/firegl_public.c:3223: warning: return makes pointer from integer without a cast
/usr/src/modules/fglrx/firegl_public.c:3224: warning: return makes pointer from integer without a cast
/usr/src/modules/fglrx/firegl_public.c:3225: warning: return makes pointer from integer without a cast
/usr/src/modules/fglrx/firegl_public.c:3227: warning: return makes pointer from integer without a cast
/usr/src/modules/fglrx/firegl_public.c: In function ‘KAS_Ih_Execute’:
/usr/src/modules/fglrx/firegl_public.c:4202: warning: ‘return’ with no value, in function returning non-void
make[4]: *** [/usr/src/modules/fglrx/firegl_public.o] Ошибка 1
make[3]: *** [_module_/usr/src/modules/fglrx] Ошибка 2
make[2]: *** [sub-make] Ошибка 2
make[1]: *** [all] Ошибка 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.32-5-686'
make: *** [build] Ошибка 2
Какие есть идеи? Куда пилить? Имеет смысл смотреть РадеонХД?