Commit 7d82aba9 authored by Anke's avatar Anke

nvidia & catalyst updates, dkms-nvidia hardcoded version again, to correct install errors

parent 985e60f2
Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
---
--- 12.1/common/lib/modules/fglrx/build_mod/firegl_public.c
+++ 12.1/common/lib/modules/fglrx/build_mod/firegl_public.c
@@ -5797,10 +5797,16 @@ void ATI_API_CALL KCL_fpu_begin(void)
#ifdef CONFIG_X86_64
kernel_fpu_begin();
#else
+#ifndef TS_USEDFPU
+ preempt_disable();
+ if (__thread_has_fpu(current))
+ __save_init_fpu(current);
+#else
struct thread_info *cur_task = current_thread_info();
preempt_disable();
if (cur_task->status & TS_USEDFPU)
__save_init_fpu(cur_task->task);
+#endif
else
clts();
#endif
......@@ -6,8 +6,9 @@
_kernver="3.0.35-2-lts"
pkgname=catalyst-lts
pkgver=12.6
pkgver=12.8
pkgrel=1
_amdver=8.982
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only"
arch=('i686' 'x86_64')
url="http://www.ati.amd.com"
......@@ -18,11 +19,11 @@ makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-lts-headers')
conflicts=('catalyst-test' 'nvidia' 'xf86-video-ati' 'xf86-video-radeonhd' 'ati-dri')
install=catalyst.install
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.run
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.zip
ati_make.sh
makefile_compat.patch)
md5sums=('6bd4f0875202390ed7122696db29be77'
md5sums=('41c5478322b13be6909eeb46412a3aa0'
'660396540b0ceaff71d6155c986734de'
'3e1b82bd69774ea808da69c983d6a43b')
......@@ -35,7 +36,7 @@ build() {
msg "Unpacking archive ..."
/bin/sh ./amd-driver-installer-${pkgver/./-}-x86.x86_64.run --extract archive_files
/bin/sh ./amd-driver-installer-${_amdver}-x86.x86_64.run --extract archive_files
if [ "${CARCH}" = "x86_64" ]; then
......
......@@ -5,11 +5,12 @@
pkgname=catalyst-utils
# Edit chakra-hardware-detection/hooks/hwdetect_7_graphics on version jump from 1x.x
pkgver=12.6
pkgver=12.8
pkgrel=1
_amdver=8.982
pkgdesc="AMD/ATI Catalyst drivers utilities and libraries."
arch=('i686' 'x86_64')
url="http://www.ati.amd.com"
url="http://www.amd.com/us/Pages/AMDHomePage.aspx"
license=('custom')
depends=('xorg-server>=1.11.0' 'xorg-server<1.13.0' 'netkit-bsd-finger' 'libxrandr' 'libsm' 'fontconfig' 'libxcursor' 'libxi' 'gcc-libs' 'libxinerama')
optdepends=('qt: to run ATi Catalyst Control Center (amdcccle)'
......@@ -19,20 +20,20 @@ provides=('libgl' "libatical=${pkgver}")
install=${pkgname}.install
source=(
http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.run
http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.zip
catalyst.sh
amdcccle.desktop
atieventsd.sh
hw_ati_legacy_hwdb)
md5sums=('6bd4f0875202390ed7122696db29be77'
md5sums=('41c5478322b13be6909eeb46412a3aa0'
'bdafe749e046bfddee2d1c5e90eabd83'
'4efa8414a8fe9eeb50da38b5522ef81d'
'f729bf913613f49b0b9759c246058a87'
'e88b99bb50f38bc96c880407b36b45a8')
build() {
## Unpack archive
/bin/sh ./amd-driver-installer-${pkgver/./-}-x86.x86_64.run --extract archive_files
/bin/sh ./amd-driver-installer-${_amdver}-x86.x86_64.run --extract archive_files
}
package() {
......@@ -43,6 +44,7 @@ package() {
install -m755 -d "${pkgdir}/etc/profile.d"
install -m755 -d "${pkgdir}/etc/acpi/events"
install -m755 -d "${pkgdir}/etc/security/console.apps"
install -m755 -d "${pkgdir}/etc/OpenCL/vendors" # since 11.11
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/dri"
install -m755 -d "${pkgdir}/usr/lib/xorg/modules/drivers"
......@@ -119,13 +121,9 @@ package() {
ln -snf /usr/lib/xorg/modules/dri/fglrx_dri.so ${pkgdir}/usr/lib/dri/fglrx_dri.so
ln -snf libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/libfglrx_dm.so.1"
ln -snf libfglrx_dm.so.1.0 "${pkgdir}/usr/lib/libfglrx_dm.so"
#ln -sf libfglrx_pp.so.1.0 "${pkgdir}/usr/lib/libfglrx_pp.so.1"
#ln -sf libfglrx_tvout.so.1.0 "${pkgdir}/usr/lib/libfglrx_tvout.so.1"
#ln -sf libfglrx_gamma.so.1.0 "${pkgdir}/usr/lib/libfglrx_gamma.so.1"
#ln -sf libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so.1" #before 11.4
#ln -sf libGL.so.1.2 "${pkgdir}/usr/lib/libGL.so" #before 11.4
ln -snf libatiuki.so.1.0 "${pkgdir}/usr/lib/libatiuki.so.1"
ln -snf libatiuki.so.1.0 "${pkgdir}/usr/lib/libatiuki.so"
ln -snf libOpenCL.so.1 "${pkgdir}/usr/lib/libOpenCL.so" # since 11.11
cd "${srcdir}"/archive_files/common
......@@ -137,7 +135,7 @@ package() {
# *.h removed in 11.3...
#install -m644 usr/X11R6/include/X11/extensions/*.h "${pkgdir}/usr/include/X11/extensions/" || return 1
install -m644 usr/X11R6/bin/amdupdaterandrconfig "${pkgdir}/usr/bin/" || return 1
install -m755 usr/X11R6/bin/amdupdaterandrconfig "${pkgdir}/usr/bin/" || return 1
install -m644 usr/include/GL/*.h "${pkgdir}/usr/include/GL/" || return 1
install -m755 usr/sbin/*.sh "${pkgdir}/usr/sbin/" || return 1
install -m644 usr/share/ati/amdcccle/* "${pkgdir}/usr/share/ati/amdcccle/" || return 1
......@@ -158,7 +156,22 @@ package() {
# License
install -m644 "${srcdir}/archive_files/LICENSE.TXT" "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1
# since 11.11 : opencl files
if [ "${CARCH}" = "i686" ]; then
cd "${srcdir}/archive_files/arch/x86" || return 1
_arc=32
elif [ "${CARCH}" = "x86_64" ]; then
cd "${srcdir}/archive_files/arch/x86_64" || return 1
_arc=64
fi
# since 11.11: amd's vendor file for it's opencl library
install -m644 etc/OpenCL/vendors/amdocl${_arc}.icd "${pkgdir}/etc/OpenCL/vendors/" || return 1
# since 11.11: clinfo binary
install -m755 usr/bin/clinfo "${pkgdir}/usr/bin/" || return 1
# hwdb
install -m644 "${srcdir}/hw_ati_legacy_hwdb" "${pkgdir}/usr/share/applications/hw_ati_legacy_hwdb"
}
Signed-off-by: Gianluca Gennari <gennarone@gmail.com>
---
--- 12.1/common/lib/modules/fglrx/build_mod/firegl_public.c
+++ 12.1/common/lib/modules/fglrx/build_mod/firegl_public.c
@@ -5797,10 +5797,16 @@ void ATI_API_CALL KCL_fpu_begin(void)
#ifdef CONFIG_X86_64
kernel_fpu_begin();
#else
+#ifndef TS_USEDFPU
+ preempt_disable();
+ if (__thread_has_fpu(current))
+ __save_init_fpu(current);
+#else
struct thread_info *cur_task = current_thread_info();
preempt_disable();
if (cur_task->status & TS_USEDFPU)
__save_init_fpu(cur_task->task);
+#endif
else
clts();
#endif
--- a/common/lib/modules/fglrx/build_mod/firegl_public.c 2012-05-26 18:33:25.044695179 +0200
+++ b/common/lib/modules/fglrx/build_mod/firegl_public.c 2012-05-26 18:28:39.692699095 +0200
@@ -188,6 +188,12 @@
#include <linux/swap.h>
#include "asm/i387.h"
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)
+#ifdef CONFIG_X86_32
+#include "asm/fpu-internal.h"
+#endif
+#endif
+
#include "firegl_public.h"
#include "kcl_osconfig.h"
#include "kcl_io.h"
@@ -4154,7 +4160,11 @@ static int kasInitExecutionLevels(unsign
{
unsigned int p;
KCL_DEBUG5(FN_FIREGL_KAS, "%d\n", level_init);
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)
+ for_each_possible_cpu(p)
+#else
for_each_cpu_mask(p, cpu_possible_map)
+#endif
{
KCL_DEBUG1(FN_FIREGL_KAS,"Setting initial execution level for CPU # %d\n", p);
preempt_disable();
--- a/common/lib/modules/fglrx/build_mod/kcl_ioctl.c 2012-05-26 19:11:03.402987821 +0200
+++ b/common/lib/modules/fglrx/build_mod/kcl_ioctl.c 2012-05-26 19:13:00.273986422 +0200
@@ -217,6 +217,10 @@
* \param size [in] Number of bytes to allocate
* \return Pointer to allocated memory
*/
+#ifndef CONFIG_X86_X32
+DEFINE_PER_CPU(unsigned long, old_rsp);
+#endif
+
void* ATI_API_CALL KCL_IOCTL_AllocUserSpace32(long size)
{
void __user *ret = COMPAT_ALLOC_USER_SPACE(size);
\ No newline at end of file
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# maintainer: Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
_kernver="3.4.6-1-CHAKRA"
pkgname=(catalyst chd-catalyst)
pkgver=12.6
pkgrel=3
pkgver=12.8
pkgrel=1
_amdver=8.982
arch=('i686' 'x86_64')
url="http://www.ati.amd.com"
license=('custom')
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-headers' 'linux>=3.4' 'linux<=3.5')
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.run
source=(http://www2.ati.com/drivers/linux/amd-driver-installer-${pkgver/./-}-x86.x86_64.zip
ati_make.sh
makefile_compat.patch
3.2.8.patch
catalyst/3.4.patch
fglrx_supported
switchlibglx
switchlibGL)
md5sums=('6bd4f0875202390ed7122696db29be77'
md5sums=('41c5478322b13be6909eeb46412a3aa0'
'660396540b0ceaff71d6155c986734de'
'3e1b82bd69774ea808da69c983d6a43b'
'32c8142c73dcfed5db426f494feda9e3'
'7b229c6e48ee3f1af0d97059b9fa5cfe'
'8bd182de340d6ed8b2dfcedfd3e5a389'
'99032d919ede27884b5c3e87ab110a96'
'8bd182de340d6ed8b2dfcedfd3e5a389'
'99032d919ede27884b5c3e87ab110a96'
'99032d919ede27884b5c3e87ab110a96')
build() {
......@@ -40,7 +37,7 @@ build() {
msg "Unpacking archive ..."
/bin/sh ./amd-driver-installer-${pkgver/./-}-x86.x86_64.run --extract archive_files
/bin/sh ./amd-driver-installer-${_amdver}-x86.x86_64.run --extract archive_files
if [ "${CARCH}" = "x86_64" ]; then
......@@ -60,9 +57,6 @@ build() {
# works only in combination with ati_make.sh script
patch -p1 -i ../makefile_compat.patch
#patch -p1 -i ../3.2.8.patch
patch -p1 -i ../3.4.patch
cd "${srcdir}/archive_files/common/lib/modules/fglrx/build_mod"
cp "${srcdir}/archive_files/arch/${_archdir}/lib/modules/fglrx/build_mod/libfglrx_ip.a" .
cp 2.6.x/Makefile .
......
......@@ -24,8 +24,5 @@ post_upgrade() {
post_remove() {
EXTRAMODULES=extramodules-3.4-CHAKRA
depmod $(cat /lib/modules/$EXTRAMODULES/version)
echo "----------------------------------------------------------------"
echo "Don't forget to remove fglrx from MODULES array of /etc/rc.conf"
echo "----------------------------------------------------------------"
}
......@@ -6,10 +6,10 @@
pkgname=dkms-nvidia
_pkgname=nvidia
pkgver=304.32
pkgver=304.37
pkgrel=1
pkgdesc="NVIDIA dynamic kernel module (DKMS) drivers for kernel26."
arch=(i686 x86_64)
arch=('i686' 'x86_64')
url="http://www.nvidia.com/"
license=('custom')
depends=('dkms')
......@@ -27,11 +27,11 @@ elif [ "$CARCH" = "x86_64" ]; then
_arch='x86_64'
_pkg="NVIDIA-Linux-${_arch}-${pkgver}-no-compat32"
source=("http://us.download.nvidia.com/XFree86/Linux-${_arch}/${pkgver}/${_pkg}.run")
md5sums=('e6d9d1f73196d5f7ea110fef59bd466e')
md5sums=('65fce562c0df3def06012db9ff6bafa1')
fi
source[1]="dkms.conf"
md5sums[1]='d75545122b9edb649ca0d9e4bd42b92c'
md5sums[1]='4bedd2faa7a64e4e61a530f3f1d63ff6'
build() {
cd $srcdir
......
PACKAGE_NAME="nvidia"
PACKAGE_VERSION="302.17"
PACKAGE_VERSION="304.37"
MAKE[0]="make SYSSRC=${kernel_source_dir} module"
CLEAN="make -f Makefile.kbuild clean"
BUILT_MODULE_NAME[0]="nvidia"
......
......@@ -3,11 +3,10 @@ post_install()
DKMS=`which dkms 2>/dev/null`
echo ">>> DKMS: Module add, build, and install "
_pkgver="${1%-*}"
$DKMS add -m nvidia -v "$_pkgver"
$DKMS build -m nvidia -v "$_pkgver"
$DKMS install -m nvidia -v "$_pkgver"
$DKMS add -m nvidia -v '304.37'
$DKMS build -m nvidia -v '304.37'
$DKMS install -m nvidia -v '304.37'
/sbin/depmod -a
}
......@@ -27,8 +26,11 @@ pre_remove()
DKMS=`which dkms 2>/dev/null`
echo ">>> DKMS: Module uninstall "
_pkgver="${1%-*}"
$DKMS remove -m nvidia -v $_pkgver --all
line=`$DKMS status -m nvidia`
if echo "$line" | grep -E 'added|built|installed'; then
version=`echo "$line" | sed "s/nvidia,\([^,]*\)[,:].*/\1/;t;d"`
$DKMS remove -m nvidia -v $version --all
fi
}
......
......@@ -8,12 +8,12 @@ _extramodules=extramodules-`pacman -Q linux-lts | cut -c11-13 | sed 's/linux-lts
_kver="$(cat /lib/modules/${_extramodules}/version)"
pkgname=nvidia-lts
pkgver=304.32
pkgver=304.37
pkgrel=1
pkgdesc="NVIDIA drivers for linux."
arch=('i686' 'x86_64')
url="http://www.nvidia.com/"
depends=('linux-lts' "nvidia-utils=${pkgver}")
depends=('linux-lts>=3.0' 'linux-lts<3.1' "nvidia-utils=${pkgver}")
makedepends=('linux-lts-headers')
conflicts=('nvidia-96xx-lts' 'nvidia-173xx-lts')
license=('custom')
......@@ -28,7 +28,7 @@ elif [ "$CARCH" = "x86_64" ]; then
_ARCH='x86_64'
_pkg="NVIDIA-Linux-${_ARCH}-${pkgver}-no-compat32"
source=("http://us.download.nvidia.com/XFree86/Linux-${_ARCH}/${pkgver}/${_pkg}.run")
md5sums=('e6d9d1f73196d5f7ea110fef59bd466e')
md5sums=('65fce562c0df3def06012db9ff6bafa1')
fi
build() {
......
......@@ -11,7 +11,7 @@ pkgname=nvidia-utils-bumblebee
# pacman --print --print-format $1 -S nvidia-utils | grep nvidia-utils
#}
pkgver=304.32
pkgver=304.37
pkgrel=1
pkgdesc="NVIDIA drivers utilities and libraries. Repacked and installed in different folder to be used simultaneously with libgl."
arch=('i686' 'x86_64')
......@@ -32,7 +32,7 @@ elif [ "$CARCH" = "x86_64" ]; then
_carch='x86_64'
_pkg="NVIDIA-Linux-${_carch}-${pkgver}-no-compat32"
source=("ftp://download.nvidia.com/XFree86/Linux-${_carch}/${pkgver}/${_pkg}.run")
md5sums=('e6d9d1f73196d5f7ea110fef59bd466e')
md5sums=('65fce562c0df3def06012db9ff6bafa1')
fi
create_links() {
......
......@@ -6,7 +6,7 @@
pkgbase=nvidia-utils
pkgname=('nvidia-utils' 'opencl-nvidia' 'libcl' 'nvidia-settings')
# Edit chakra-hardware-detection/hooks/hwdetect_7_graphics on version jump from 3xx.xx
pkgver=304.32
pkgver=304.37
pkgrel=1
arch=('i686' 'x86_64')
url="http://www.nvidia.com/"
......@@ -22,7 +22,7 @@ options=('!strip')
[ "$CARCH" = "x86_64" ] && {
ARCH='x86_64'
_pkg="NVIDIA-Linux-${ARCH}-${pkgver}-no-compat32"
md5sums=('780561a808dffbfc74be84547733f30f')
md5sums=('65fce562c0df3def06012db9ff6bafa1')
}
source=("ftp://download.nvidia.com/XFree86/Linux-${ARCH}/${pkgver}/${_pkg}.run"
......@@ -46,7 +46,7 @@ build() {
package_libcl() {
pkgdesc="OpenCL library and ICD loader from NVIDIA"
pkgver=1.1.9.3
pkgver=1.1.9.4
cd "${srcdir}/${_pkg}"
......@@ -65,9 +65,6 @@ package_opencl-nvidia() {
# OpenCL
install -D -m644 nvidia.icd "${pkgdir}/etc/OpenCL/vendors/nvidia.icd"
install -D -m755 "libnvidia-compiler.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-compiler.so.${pkgver}"
# CUDA
install -D -m755 "libcuda.so.${pkgver}" "${pkgdir}/usr/lib/libcuda.so.${pkgver}"
install -D -m755 "libnvcuvid.so.${pkgver}" "${pkgdir}/usr/lib/libnvcuvid.so.${pkgver}"
create_links
}
......@@ -102,7 +99,9 @@ package_nvidia-utils() {
install -D -m755 "libnvidia-cfg.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-cfg.so.${pkgver}"
install -D -m755 "libnvidia-ml.so.${pkgver}" "${pkgdir}/usr/lib/libnvidia-ml.so.${pkgver}"
# CUDA
install -D -m755 "libcuda.so.${pkgver}" "${pkgdir}/usr/lib/libcuda.so.${pkgver}"
install -D -m755 "libnvcuvid.so.${pkgver}" "${pkgdir}/usr/lib/libnvcuvid.so.${pkgver}"
# nvidia-xconfig
install -D -m755 nvidia-xconfig "${pkgdir}/usr/bin/nvidia-xconfig"
install -D -m644 nvidia-xconfig.1.gz "${pkgdir}/usr/share/man/man1/nvidia-xconfig.1.gz"
......
......@@ -7,7 +7,7 @@ _extramodules=extramodules-3.4-CHAKRA
_kver="$(cat /lib/modules/${_extramodules}/version)"
pkgname=('nvidia' 'chd-nvidia')
pkgver=304.32
pkgver=304.37
pkgrel=1
arch=('i686' 'x86_64')
url="http://www.nvidia.com/"
......@@ -25,7 +25,7 @@ elif [ "$CARCH" = "x86_64" ]; then
_ARCH='x86_64'
_pkg="NVIDIA-Linux-${_ARCH}-${pkgver}-no-compat32"
source+=("ftp://download.nvidia.com/XFree86/Linux-${_ARCH}/${pkgver}/${_pkg}.run")
md5sums+=('e6d9d1f73196d5f7ea110fef59bd466e')
md5sums+=('65fce562c0df3def06012db9ff6bafa1')
fi
build() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment