ati: Updated to 8.34.8 and added patch for kernel 2.6.20.

This commit is contained in:
Jose V Beneyto 2007-03-23 00:34:00 +01:00
parent a5e39a9525
commit edd008c05c
5 changed files with 174 additions and 57 deletions

View File

@ -1,6 +1,7 @@
drwxr-xr-x root/root etc/
drwxr-xr-x root/root etc/ati/
-r-xr-xr-x root/root etc/ati/authatieventsd.sh
-rw-r--r-- root/root etc/ati/control
-r--r--r-- root/root etc/ati/fglrxprofiles.csv
-r--r--r-- root/root etc/ati/fglrxrc
drwxr-xr-x root/root etc/rc.d/
@ -14,43 +15,45 @@ drwxr-xr-x root/root lib/modules/<kernel-version>/kernel/drivers/char/
drwxr-xr-x root/root lib/modules/<kernel-version>/kernel/drivers/char/drm/
-rw-r--r-- root/root lib/modules/<kernel-version>/kernel/drivers/char/drm/fglrx.ko
drwxr-xr-x root/root usr/
drwxr-xr-x root/root usr/X11R6/
drwxr-xr-x root/root usr/X11R6/bin/
-rwxr-xr-x root/root usr/X11R6/bin/aticonfig
-rwxr-xr-x root/root usr/X11R6/bin/fgl_glxgears
-rwxr-xr-x root/root usr/X11R6/bin/fglrx_xgamma
-rwxr-xr-x root/root usr/X11R6/bin/fglrxinfo
-rwxr-xr-x root/root usr/X11R6/bin/fireglcontrolpanel
drwxr-xr-x root/root usr/X11R6/include/
drwxr-xr-x root/root usr/X11R6/include/X11/
drwxr-xr-x root/root usr/X11R6/include/X11/extensions/
-r--r--r-- root/root usr/X11R6/include/X11/extensions/fglrx_gamma.h
drwxr-xr-x root/root usr/X11R6/lib/
-rwxr-xr-x root/root usr/X11R6/lib/libGL_so_1_2_ati
-rw-r--r-- root/root usr/X11R6/lib/libatixutil.a
-rw-r--r-- root/root usr/X11R6/lib/libfglrx_dm.a
-rwxr-xr-x root/root usr/X11R6/lib/libfglrx_dm.so.1.0
-rw-r--r-- root/root usr/X11R6/lib/libfglrx_gamma.a
-rwxr-xr-x root/root usr/X11R6/lib/libfglrx_gamma.so.1.0
-rw-r--r-- root/root usr/X11R6/lib/libfglrx_pp.a
-rwxr-xr-x root/root usr/X11R6/lib/libfglrx_pp.so.1.0
-rw-r--r-- root/root usr/X11R6/lib/libfglrx_tvout.a
-rwxr-xr-x root/root usr/X11R6/lib/libfglrx_tvout.so.1.0
drwxr-xr-x root/root usr/X11R6/lib/modules/
drwxr-xr-x root/root usr/X11R6/lib/modules/dri/
-rwxr-xr-x root/root usr/X11R6/lib/modules/dri/atiogl_a_dri.so
-rwxr-xr-x root/root usr/X11R6/lib/modules/dri/fglrx_dri.so
drwxr-xr-x root/root usr/X11R6/lib/modules/drivers/
-rwxr-xr-x root/root usr/X11R6/lib/modules/drivers/fglrx_drv.so
drwxr-xr-x root/root usr/X11R6/lib/modules/linux/
-rwxr-xr-x root/root usr/X11R6/lib/modules/linux/libfglrxdrm.so
drwxr-xr-x root/root usr/bin/
-rwxr-xr-x root/root usr/bin/aticonfig
-rwxr-xr-x root/root usr/bin/fgl_glxgears
-rwxr-xr-x root/root usr/bin/fglrx_xgamma
-rwxr-xr-x root/root usr/bin/fglrxinfo
drwxr-xr-x root/root usr/include/
drwxr-xr-x root/root usr/include/GL/
-r--r--r-- root/root usr/include/GL/glATI.h
-r--r--r-- root/root usr/include/GL/glxATI.h
drwxr-xr-x root/root usr/include/X11/
drwxr-xr-x root/root usr/include/X11/extensions/
-r--r--r-- root/root usr/include/X11/extensions/fglrx_gamma.h
drwxr-xr-x root/root usr/lib/
drwxr-xr-x root/root usr/lib/dri/
-rwxr-xr-x root/root usr/lib/dri/fglrx_dri.so
-rwxrwxr-x root/root usr/lib/libGL_so_1_2_ati
-rwxrwxr-x root/root usr/lib/libatixutil.a
-rwxrwxr-x root/root usr/lib/libfglrx_dm.a
-rwxrwxr-x root/root usr/lib/libfglrx_dm.so.1.0
-rwxrwxr-x root/root usr/lib/libfglrx_gamma.a
lrwxrwxrwx root/root usr/lib/libfglrx_gamma.so.1 -> /usr/lib/libfglrx_gamma.so.1.0
-rwxrwxr-x root/root usr/lib/libfglrx_gamma.so.1.0
-rwxrwxr-x root/root usr/lib/libfglrx_pp.a
lrwxrwxrwx root/root usr/lib/libfglrx_pp.so.1 -> /usr/lib/libfglrx_pp.so.1.0
-rwxrwxr-x root/root usr/lib/libfglrx_pp.so.1.0
-rwxrwxr-x root/root usr/lib/libfglrx_tvout.a
-rwxrwxr-x root/root usr/lib/libfglrx_tvout.so.1.0
drwxr-xr-x root/root usr/lib/xorg/
drwxr-xr-x root/root usr/lib/xorg/modules/
drwxr-xr-x root/root usr/lib/xorg/modules/drivers/
-rwxr-xr-x root/root usr/lib/xorg/modules/drivers/fglrx_drv.so
drwxr-xr-x root/root usr/lib/xorg/modules/linux/
-rwxr-xr-x root/root usr/lib/xorg/modules/linux/libfglrxdrm.so
drwxr-xr-x root/root usr/man/
drwxr-xr-x root/root usr/man/man8/
-r--r--r-- root/root usr/man/man8/atieventsd.8.gz
drwxr-xr-x root/root usr/sbin/
-rwxr-xr-x root/root usr/sbin/atieventsd
-rwxr-xr-x root/root usr/sbin/atigetsysteminfo.sh
drwxr-xr-x root/root usr/share/
drwxr-xr-x root/root usr/share/icons/
-rw-r--r-- root/root usr/share/icons/ati.xpm

View File

@ -1,2 +1,3 @@
5fbd42d666d467a904acbaeb600c1d5a ati-driver-installer-8.33.6-x86.x86_64.run
44eda48613542b955a63bd6af2ccc6ce ati-driver-installer-8.34.8-x86.x86_64.run
e4d8a8b28ae298b673c492c34799d515 atieventsd.sh
70aebbb4d8e139ec6c65c88f20276f32 kernel-2.6.20.patch

View File

@ -5,29 +5,57 @@
# Depends on: mesa3d, gl-select
name=ati
version=8.33.6
release=2
version=8.34.8
release=1
source=(http://www2.ati.com/drivers/linux/$name-driver-installer-$version-x86.x86_64.run \
atieventsd.sh)
kernel-2.6.20.patch \
atieventsd.sh)
build() {
march=x86
xversion=x690
sh $name-driver-installer-$version-x86.x86_64.run --extract $SRC/tmp
cd $SRC/tmp/common/lib/modules/fglrx/build_mod
ln -s $SRC/tmp/arch/$march/lib/modules/fglrx/build_mod/libfglrx_ip.a.GCC* .
sh make.sh
march=x86
xversion=x710
chmod +x $name-driver-installer-$version-x86.x86_64.run
./$name-driver-installer-$version-x86.x86_64.run --extract $SRC/tmp
# patch
cd $SRC/tmp
patch -Np0 -i $SRC/kernel-2.6.20.patch
# make
cd $SRC/tmp/common/lib/modules/fglrx/build_mod
ln -s $SRC/tmp/arch/$march/lib/modules/fglrx/build_mod/libfglrx_ip.a.GCC* .
sed -i 's|/usr/X11R6|/usr|g' make.sh
chmod +x make.sh
./make.sh
# install kernel module
install -d $PKG/lib/modules/`uname -r`/kernel/drivers/char/drm
install -m 644 $SRC/tmp/common/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko \
$PKG/lib/modules/`uname -r`/kernel/drivers/char/drm
install -d $PKG/usr/{X11R6,include,share}
cp -r $SRC/tmp/arch/$march/usr $PKG
cp -r $SRC/tmp/common/usr/{X11R6,include,share/man} $PKG/usr
cp -r $SRC/tmp/$xversion/usr/X11R6 $PKG/usr
install -d $PKG/etc/{ati,rc.d}
cp -r $SRC/tmp/common/etc/ati/* $PKG/etc/ati
rm -f $PKG/etc/ati/logo*
install -m 755 $SRC/atieventsd.sh $PKG/etc/rc.d/atieventsd
# required for use opt/gl-select
mv $PKG/usr/X11R6/lib/libGL.so.1.2 $PKG/usr/X11R6/lib/libGL_so_1_2_ati
install -m 644 $SRC/tmp/common/lib/modules/fglrx/build_mod/2.6.x/fglrx.ko \
$PKG/lib/modules/`uname -r`/kernel/drivers/char/drm
# install xorg
install -d $PKG/usr/{bin,sbin}
install -m 0755 $SRC/tmp/arch/$march/usr/X11R6/bin/* $PKG/usr/bin
install -m 0755 $SRC/tmp/arch/$march/usr/sbin/* $PKG/usr/sbin
install -d $PKG/usr/lib/{dri,xorg/modules}
install -m 0755 $SRC/tmp/arch/$march/usr/X11R6/lib/modules/dri/* \
$PKG/usr/lib/dri
rm -rf $SRC/tmp/arch/$march/usr/X11R6/lib/modules
install -m 0775 $SRC/tmp/arch/$march/usr/X11R6/lib/* $PKG/usr/lib
install -d $PKG/etc
mv $SRC/tmp/common/etc/ati $PKG/etc/
rm -f $PKG/etc/ati/logo*
mv $SRC/tmp/common/usr/X11R6/include $PKG/usr/
cp -a $SRC/tmp/common/usr/include/* $PKG/usr/include/
install -m 0755 $SRC/tmp/common/usr/sbin/atigetsysteminfo.sh $PKG/usr/sbin
mv $SRC/tmp/common/usr/share/man $PKG/usr/
mv $SRC/tmp/$xversion/usr/X11R6/lib/modules/* $PKG/usr/lib/xorg/modules/
# tune installation
ln -sf /usr/lib/libfglrx_pp.so.1.0 $PKG/usr/lib/libfglrx_pp.so.1
ln -sf /usr/lib/libfglrx_gamma.so.1.0 $PKG/usr/lib/libfglrx_gamma.so.1
install -D -m 0755 $SRC/atieventsd.sh $PKG/etc/rc.d/atieventsd
install -D -m 0644 $SRC/tmp/common/usr/share/icons/ati.xpm \
$PKG/usr/share/icons/ati.xpm
# required for use xorg-gl-select
mv -v $PKG/usr/lib/libGL.so.1.2 $PKG/usr/lib/libGL_so_1_2_ati
}

View File

@ -1,5 +1,5 @@
README for ati 8.33.6
README for ati 8.34.8
@ -22,15 +22,15 @@ Also to configure your X server you can execute ati configurator like this:
POST-REMOVE
Use opt/gl-select from ports to revert to the x11 gl/glx libraries
Use opt/gl-select from ports to revert to the xorg gl/glx libraries
and extensions like so:
# gl-select x11
# gl-select xorg
When UPGRADING/DOWNGRADING the ati-driver port (where the version changes),
use gl-select to revert to x11 and then re-select ati in order to
use gl-select to revert to xorg and then re-select ati in order to
refresh the libGLcore and libGL symlinks, like so:
# prt-get update ati
# gl-select x11; gl-select ati
# gl-select xorg; gl-select ati

85
ati/kernel-2.6.20.patch Normal file
View File

@ -0,0 +1,85 @@
--- common/lib/modules/fglrx/build_mod/firegl_public.c 2006-12-18 10:58:15.000000000 -0500
+++ common/lib/modules/fglrx/build_mod/firegl_public.c 2006-12-18 11:14:04.000000000 -0500
@@ -181,6 +181,70 @@
int errno;
#endif // __ia64__
+#if defined(__i386__)
+#define __syscall_return(type, res) \
+do { \
+ if ((unsigned long)(res) >= (unsigned long)(-(128 + 1))) { \
+ errno = -(res); \
+ res = -1; \
+ } \
+ return (type) (res); \
+} while (0)
+#define _syscall2(type,name,type1,arg1,type2,arg2) \
+type name(type1 arg1,type2 arg2) \
+{ \
+long __res; \
+__asm__ volatile ("push %%ebx ; movl %2,%%ebx ; int $0x80 ; pop %%ebx" \
+ : "=a" (__res) \
+ : "0" (__NR_##name),"ri" ((long)(arg1)),"c" ((long)(arg2)) \
+ : "memory"); \
+__syscall_return(type,__res); \
+}
+
+#define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
+type name(type1 arg1,type2 arg2,type3 arg3) \
+{ \
+long __res; \
+__asm__ volatile ("push %%ebx ; movl %2,%%ebx ; int $0x80 ; pop %%ebx" \
+ : "=a" (__res) \
+ : "0" (__NR_##name),"ri" ((long)(arg1)),"c" ((long)(arg2)), \
+ "d" ((long)(arg3)) : "memory"); \
+__syscall_return(type,__res); \
+}
+#elif defined(__x86_64__)
+#define __syscall_clobber "r11","rcx","memory"
+#define __syscall "syscall"
+
+#define __syscall_return(type, res) \
+do { \
+ if ((unsigned long)(res) >= (unsigned long)(-127)) { \
+ errno = -(res); \
+ res = -1; \
+ } \
+ return (type) (res); \
+} while (0)
+#define _syscall2(type,name,type1,arg1,type2,arg2) \
+type name(type1 arg1,type2 arg2) \
+{ \
+long __res; \
+__asm__ volatile (__syscall \
+ : "=a" (__res) \
+ : "0" (__NR_##name),"D" ((long)(arg1)),"S" ((long)(arg2)) : __syscall_clobber ); \
+__syscall_return(type,__res); \
+}
+
+#define _syscall3(type,name,type1,arg1,type2,arg2,type3,arg3) \
+type name(type1 arg1,type2 arg2,type3 arg3) \
+{ \
+long __res; \
+__asm__ volatile (__syscall \
+ : "=a" (__res) \
+ : "0" (__NR_##name),"D" ((long)(arg1)),"S" ((long)(arg2)), \
+ "d" ((long)(arg3)) : __syscall_clobber); \
+__syscall_return(type,__res); \
+}
+#endif
+
// int mlock(const void *addr, size_t len);
_syscall2(int, mlock, const void *, addr, size_t, len )
// int munlock(const void *addr, size_t len);
--- common/lib/modules/fglrx/build_mod/firegl_public.c-orig 2007-01-21 23:09:10.027497362 -0600
+++ common/lib/modules/fglrx/build_mod/firegl_public.c 2007-01-21 23:09:25.219179776 -0600
@@ -5256,7 +5256,7 @@
kasThread_t* thread_obj = (kasThread_t*)hThread;
init_MUTEX(&(thread_obj->sleep_finished));
init_waitqueue_head(&(thread_obj->wq_head));
- INIT_WORK(&(thread_obj->work), routine, pcontext);
+ INIT_WORK(&(thread_obj->work), routine);
schedule_work(&(thread_obj->work));
return 1;
}