summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorVi0L02016-08-15 17:35:36 +0200
committerVi0L02016-08-15 17:35:36 +0200
commit60b9564f290e764b068facc8fa013db49bcc881d (patch)
tree55aa0a6827da0413eaa0b978e0aabb29501cc992
parentc9925b8af0b785766a823cb9b8fa13dd8ed85c3c (diff)
downloadaur-60b9564f290e764b068facc8fa013db49bcc881d.tar.gz
15.9-13: 4.7 kernel support
-rw-r--r--.SRCINFO6
-rw-r--r--4.7-arch-cpu_has_pge-v2.patch70
-rw-r--r--PKGBUILD11
3 files changed, 81 insertions, 6 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4f8791c59ca5..42242cd47c6d 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = catalyst-total
pkgdesc = AMD/ATI Catalyst drivers for linux. catalyst-dkms + catalyst-utils + lib32-catalyst-utils + experimental powerXpress suppport. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED
pkgver = 15.9
- pkgrel = 12
+ pkgrel = 13
url = http://www.amd.com
install = catalyst-total.install
arch = i686
@@ -9,7 +9,7 @@ pkgbase = catalyst-total
license = custom
depends = dkms
depends = linux>=3.0
- depends = linux<4.7
+ depends = linux<4.8
depends = linux-headers
depends = xorg-server>=1.7.0
depends = xorg-server<1.18.0
@@ -81,6 +81,7 @@ pkgbase = catalyst-total
source = 4.6-arch-get_user_pages-page_cache_release.patch
source = dkms.conf
source = makesh-dont-check-gcc-version.patch
+ source = 4.7-arch-cpu_has_pge-v2.patch
md5sums = d2de2df6946b452c266a3c892e6e46ff
md5sums = af7fb8ee4fc96fd54c5b483e33dc71c4
md5sums = bdafe749e046bfddee2d1c5e90eabd83
@@ -107,6 +108,7 @@ pkgbase = catalyst-total
md5sums = 11b7c2e0dc4794801005d66b0e7608a3
md5sums = 23d569abfdd7de433d76e003e4b3ccf9
md5sums = 10829e3b992b3e80a6e78c8e27748703
+ md5sums = 37eef5103a11d8136979463e7bc31091
pkgname = catalyst-total
diff --git a/4.7-arch-cpu_has_pge-v2.patch b/4.7-arch-cpu_has_pge-v2.patch
new file mode 100644
index 000000000000..cb86f5aff276
--- /dev/null
+++ b/4.7-arch-cpu_has_pge-v2.patch
@@ -0,0 +1,70 @@
+diff -uNr 16.8/common/lib/modules/fglrx/build_mod/firegl_public.c 16.8b/common/lib/modules/fglrx/build_mod/firegl_public.c
+--- 16.8/common/lib/modules/fglrx/build_mod/firegl_public.c 2015-12-18 19:47:41.000000000 +0100
++++ 16.8b/common/lib/modules/fglrx/build_mod/firegl_public.c 2016-08-15 15:09:37.228538907 +0200
+@@ -4518,7 +4518,11 @@
+ write_cr0(cr0);
+ wbinvd();
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ if (boot_cpu_has(X86_FEATURE_PGE))
++#else
+ if (cpu_has_pge)
++#endif
+ {
+ cr4 = READ_CR4();
+ WRITE_CR4(cr4 & ~X86_CR4_PGE);
+@@ -4532,7 +4536,11 @@
+ wbinvd();
+ __flush_tlb();
+ write_cr0(cr0 & 0xbfffffff);
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ if (boot_cpu_has(X86_FEATURE_PGE))
++#else
+ if (cpu_has_pge)
++#endif
+ {
+ WRITE_CR4(cr4);
+ }
+@@ -4559,7 +4567,11 @@
+ write_cr0(cr0);
+ wbinvd();
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ if (boot_cpu_has(X86_FEATURE_PGE))
++#else
+ if (cpu_has_pge)
++#endif
+ {
+ cr4 = READ_CR4();
+ WRITE_CR4(cr4 & ~X86_CR4_PGE);
+@@ -4572,7 +4584,11 @@
+ wbinvd();
+ __flush_tlb();
+ write_cr0(cr0 & 0xbfffffff);
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++ if (boot_cpu_has(X86_FEATURE_PGE))
++#else
+ if (cpu_has_pge)
++#endif
+ {
+ WRITE_CR4(cr4);
+ }
+diff -uNr 16.8/common/lib/modules/fglrx/build_mod/firegl_public.h 16.8b/common/lib/modules/fglrx/build_mod/firegl_public.h
+--- 16.8/common/lib/modules/fglrx/build_mod/firegl_public.h 2015-12-18 19:47:41.000000000 +0100
++++ 16.8b/common/lib/modules/fglrx/build_mod/firegl_public.h 2016-08-15 15:09:05.815141238 +0200
+@@ -650,9 +650,15 @@
+ #define cpu_has_pat test_bit(X86_FEATURE_PAT, (void *) &boot_cpu_data.x86_capability)
+ #endif
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,7,0)
++#ifndef boot_cpu_has(X86_FEATURE_PGE)
++#define boot_cpu_has(X86_FEATURE_PGE) test_bit(X86_FEATURE_PGE, &boot_cpu_data.x86_capability)
++#endif
++#else
+ #ifndef cpu_has_pge
+ #define cpu_has_pge test_bit(X86_FEATURE_PGE, &boot_cpu_data.x86_capability)
+ #endif
++#endif
+
+ /* 2.6.29 defines pgprot_writecombine as a macro which resolves to a
+ * GPL-only function with the same name. So we always use our own
diff --git a/PKGBUILD b/PKGBUILD
index 27b552f1e23a..9611bc8bedf8 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -27,7 +27,7 @@
pkgname=catalyst-total
pkgver=15.9
-pkgrel=12
+pkgrel=13
# _betano=1.0
_amdver=15.201.1151
pkgdesc="AMD/ATI Catalyst drivers for linux. catalyst-dkms + catalyst-utils + lib32-catalyst-utils + experimental powerXpress suppport. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED"
@@ -35,7 +35,7 @@ arch=('i686' 'x86_64')
url="http://www.amd.com"
license=('custom')
options=('staticlibs' 'libtool' '!strip' '!upx')
-depends=('dkms' 'linux>=3.0' 'linux<4.7' 'linux-headers' 'xorg-server>=1.7.0' 'xorg-server<1.18.0' 'libxrandr' 'libsm' 'fontconfig' 'libxcursor' 'libxi' 'gcc-libs' 'gcc>4.0.0' 'make' 'patch' 'libxinerama' 'mesa>=10.1.0-4')
+depends=('dkms' 'linux>=3.0' 'linux<4.8' 'linux-headers' 'xorg-server>=1.7.0' 'xorg-server<1.18.0' 'libxrandr' 'libsm' 'fontconfig' 'libxcursor' 'libxi' 'gcc-libs' 'gcc>4.0.0' 'make' 'patch' 'libxinerama' 'mesa>=10.1.0-4')
optdepends=('qt4: to run ATi Catalyst Control Center (amdcccle)'
'libxxf86vm: to run ATi Catalyst Control Center (amdcccle)'
'opencl-headers: headers necessary for OpenCL development'
@@ -93,7 +93,8 @@ source=(
grsec_arch.patch
4.6-arch-get_user_pages-page_cache_release.patch
dkms.conf
- makesh-dont-check-gcc-version.patch)
+ makesh-dont-check-gcc-version.patch
+ 4.7-arch-cpu_has_pge-v2.patch)
md5sums=('d2de2df6946b452c266a3c892e6e46ff'
'af7fb8ee4fc96fd54c5b483e33dc71c4'
@@ -120,7 +121,8 @@ md5sums=('d2de2df6946b452c266a3c892e6e46ff'
'8941e91fc58cb44ce21ab9bda135754e'
'11b7c2e0dc4794801005d66b0e7608a3'
'23d569abfdd7de433d76e003e4b3ccf9'
- '10829e3b992b3e80a6e78c8e27748703')
+ '10829e3b992b3e80a6e78c8e27748703'
+ '37eef5103a11d8136979463e7bc31091')
build() {
@@ -310,6 +312,7 @@ package() {
patch -Np1 -i ../grsec_arch.patch
patch -Np1 -i ../4.6-arch-get_user_pages-page_cache_release.patch
patch -Np1 -i ../makesh-dont-check-gcc-version.patch
+ patch -Np1 -i ../4.7-arch-cpu_has_pge-v2.patch
# Prepare modules source files
install -dm755 ${pkgdir}/usr/src/fglrx-${pkgver}/2.6.x