diff --git a/kernel/drivers/module-fglrx/actions.py b/kernel/drivers/module-fglrx/actions.py
index ffa5251339..d9c8d1a167 100644
--- a/kernel/drivers/module-fglrx/actions.py
+++ b/kernel/drivers/module-fglrx/actions.py
@@ -23,7 +23,6 @@ else:
XDir = "xpic" + ("_64a" if Target == "x86_64" else "")
-
def setup():
shelltools.makedirs("%s/common" % get.workDIR())
shelltools.move("lib", "%s/common/" % get.workDIR())
@@ -50,15 +49,17 @@ def setup():
#shelltools.system("patch -p1 < lano1106_fglrx_intel_iommu.patch")
#shelltools.system("patch -p1 < lano1106_kcl_agp_13_4.patch")
shelltools.system("patch -p1 < makefile_compat.patch")
+ #shelltools.system("patch -p1 < 4.4-manjaro-xstate.patch")
def build():
+ shelltools.export("SHELL", "/bin/sh")
if get.buildTYPE() == "emul32":
return
shelltools.cd(BuildDir)
- shelltools.system("sh make.sh")
+ shelltools.system("sh ./make.sh")
def install():
# Controlcenter binaries
diff --git a/kernel/drivers/module-fglrx/files/4.4-manjaro-xstate.patch b/kernel/drivers/module-fglrx/files/4.4-manjaro-xstate.patch
new file mode 100644
index 0000000000..15a00d547a
--- /dev/null
+++ b/kernel/drivers/module-fglrx/files/4.4-manjaro-xstate.patch
@@ -0,0 +1,22 @@
+--- 15.12/common/lib/modules/fglrx/build_mod/firegl_public.c 2015-12-18 19:47:41.000000000 +0100
++++ b/firegl_public.c 2015-12-19 20:48:13.223261632 +0100
+@@ -6450,12 +6450,15 @@
+ struct fpu *fpu = &tsk->thread.fpu;
+
+ if(static_cpu_has(X86_FEATURE_XSAVE)) {
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(4,2,0)
+- fpu_xsave(fpu);
+- if (!(fpu->state->xsave.xsave_hdr.xstate_bv & XSTATE_FP))
+-#else
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,0)
++ copy_xregs_to_kernel(&fpu->state.xsave);
++ if (!(fpu->state.xsave.header.xfeatures & XFEATURE_MASK_FP))
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0)
+ copy_xregs_to_kernel(&fpu->state.xsave);
+ if (!(fpu->state.xsave.header.xfeatures & XSTATE_FP))
++#else
++ fpu_xsave(fpu);
++ if (!(fpu->state->xsave.xsave_hdr.xstate_bv & XSTATE_FP))
+ #endif
+ return 1;
+ } else if (static_cpu_has(X86_FEATURE_FXSR)) {
diff --git a/kernel/drivers/module-fglrx/pspec.xml b/kernel/drivers/module-fglrx/pspec.xml
index 25fb33591f..bcc34bb48b 100644
--- a/kernel/drivers/module-fglrx/pspec.xml
+++ b/kernel/drivers/module-fglrx/pspec.xml
@@ -11,7 +11,7 @@
ATI
ATI display drivers.
Fglrx is a driver written by AMD(ATI) for ATI graphics cards.Radeons HD 2 3 4 X series are not supported
- http://archive.ubuntu.com/ubuntu/pool/restricted/f/fglrx-installer/fglrx-installer_15.200.orig.tar.gz
+ http://archive.ubuntu.com/ubuntu/pool/restricted/f/fglrx-installer/fglrx-installer_15.201.orig.tar.gz
desktop-files.patch
makefile_compat.patch
@@ -20,9 +20,11 @@
lano1106_fglrx_intel_iommu.patch
lano1106_kcl_agp_13_4.patch
LICENSE.TXT
+ 4.4-manjaro-xstate.patch
kernel-module-headers
+ kernel
@@ -140,7 +142,7 @@
2016-02-04
- 15.20
+ 15.201
Rebuild for kernel-4.4.1
Ertuğrul Erata
ertugrulerata@gmail.com