summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorVi0L02016-08-15 17:42:22 +0200
committerVi0L02016-08-15 17:42:22 +0200
commit392aac083a35ea9c826764ca24a65545889117ac (patch)
tree8a899133fa456554ac6369a54d98c68a6ad2c458
parent9b02db784c586f4651bd16e448a4faf3bc155fa0 (diff)
downloadaur-392aac083a35ea9c826764ca24a65545889117ac.tar.gz
15.9-12: 4.7 kernel support
-rw-r--r--.SRCINFO6
-rw-r--r--4.7-arch-cpu_has_pge-v2.patch70
-rw-r--r--PKGBUILD11
-rw-r--r--catalyst.install4
4 files changed, 83 insertions, 8 deletions
diff --git a/.SRCINFO b/.SRCINFO
index bfe2b358d43..a2b87f25d2e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = catalyst
pkgdesc = AMD/ATI Catalyst drivers for linux. fglrx kernel module only. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED
pkgver = 15.9
- pkgrel = 11
+ pkgrel = 12
url = http://www.amd.com
install = catalyst.install
arch = i686
@@ -12,7 +12,7 @@ pkgbase = catalyst
makedepends = make
makedepends = linux-headers
depends = linux>=3.0
- depends = linux<4.7
+ depends = linux<4.8
depends = catalyst-utils
conflicts = catalyst-test
source = http://www2.ati.com/drivers/linux/amd-catalyst-15.9-linux-installer-15.201.1151-x86.x86_64.zip
@@ -28,6 +28,7 @@ pkgbase = catalyst
source = 4.4-manjaro-xstate.patch
source = grsec_arch.patch
source = 4.6-arch-get_user_pages-page_cache_release.patch
+ source = 4.7-arch-cpu_has_pge-v2.patch
md5sums = d2de2df6946b452c266a3c892e6e46ff
md5sums = fd98b7e486d7fd4cad8de7b95b5b031e
md5sums = 3e1b82bd69774ea808da69c983d6a43b
@@ -41,6 +42,7 @@ pkgbase = catalyst
md5sums = d9bea135ae3e1b3ca87c5bbe6dcf8e72
md5sums = 8941e91fc58cb44ce21ab9bda135754e
md5sums = 11b7c2e0dc4794801005d66b0e7608a3
+ md5sums = 37eef5103a11d8136979463e7bc31091
pkgname = catalyst
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 00000000000..cb86f5aff27
--- /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 c52078bd5bb..03e6b00d7af 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -16,13 +16,13 @@ _kernver=`uname -r`
pkgname=catalyst
pkgver=15.9
-pkgrel=11
+pkgrel=12
_amdver=15.201.1151
pkgdesc="AMD/ATI Catalyst drivers for linux. fglrx kernel module only. Radeons HD 2 3 4 xxx ARE NOT SUPPORTED"
arch=('i686' 'x86_64')
url="http://www.amd.com"
license=('custom')
-depends=('linux>=3.0' 'linux<4.7' 'catalyst-utils')
+depends=('linux>=3.0' 'linux<4.8' 'catalyst-utils')
makedepends=('gcc-libs' 'gcc>4.0.0' 'make' 'linux-headers')
conflicts=('catalyst-test')
install=catalyst.install
@@ -43,7 +43,8 @@ source=(
crimson_i686_xg.patch
4.4-manjaro-xstate.patch
grsec_arch.patch
- 4.6-arch-get_user_pages-page_cache_release.patch)
+ 4.6-arch-get_user_pages-page_cache_release.patch
+ 4.7-arch-cpu_has_pge-v2.patch)
md5sums=('d2de2df6946b452c266a3c892e6e46ff'
'fd98b7e486d7fd4cad8de7b95b5b031e'
@@ -57,7 +58,8 @@ md5sums=('d2de2df6946b452c266a3c892e6e46ff'
'6cdbaf5f71d867d225721a0369413616'
'd9bea135ae3e1b3ca87c5bbe6dcf8e72'
'8941e91fc58cb44ce21ab9bda135754e'
- '11b7c2e0dc4794801005d66b0e7608a3')
+ '11b7c2e0dc4794801005d66b0e7608a3'
+ '37eef5103a11d8136979463e7bc31091')
build() {
@@ -91,6 +93,7 @@ build() {
patch -Np1 -i ../4.4-manjaro-xstate.patch
patch -Np1 -i ../grsec_arch.patch
patch -Np1 -i ../4.6-arch-get_user_pages-page_cache_release.patch
+ patch -Np1 -i ../4.7-arch-cpu_has_pge-v2.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 .
diff --git a/catalyst.install b/catalyst.install
index 6ef72b27bf5..57bf2b10609 100644
--- a/catalyst.install
+++ b/catalyst.install
@@ -1,5 +1,5 @@
-KERNEL_VERSION=4.1.7-rt8-1-rt
-EXTRAMODULES=extramodules-4.1-rt
+KERNEL_VERSION=4.7.0-1-ARCH
+EXTRAMODULES=extramodules-4.7-ARCH
dep_extr_mod(){