diff options
-rw-r--r-- | .SRCINFO | 16 | ||||
-rw-r--r-- | PKGBUILD | 17 | ||||
-rw-r--r-- | drm-driver-legacy.patch | 20 |
3 files changed, 39 insertions, 14 deletions
@@ -1,7 +1,7 @@ pkgbase = nvidia-304xx-lqx pkgdesc = NVIDIA 304xx drivers for linux-lqx. - pkgver = 304.134 - pkgrel = 2 + pkgver = 304.135 + pkgrel = 1 url = http://www.nvidia.com/ install = nvidia-304xx-lqx.install arch = i686 @@ -12,16 +12,18 @@ pkgbase = nvidia-304xx-lqx depends = linux-lqx>=4.9 depends = linux-lqx<4.10 depends = nvidia-304xx-libgl - depends = nvidia-304xx-utils=304.134 + depends = nvidia-304xx-utils=304.135 conflicts = nvidia-lqx conflicts = nvidia-340xx-lqx options = !strip source = disable-mtrr.patch + source = drm-driver-legacy.patch md5sums = c4becf1145a139cc0121be9ad340bcd8 - source_i686 = ftp://download.nvidia.com/XFree86/Linux-x86/304.134/NVIDIA-Linux-x86-304.134.run - md5sums_i686 = 9abd7e9272382bd0e6939c3a367cc1a6 - source_x86_64 = ftp://download.nvidia.com/XFree86/Linux-x86_64/304.134/NVIDIA-Linux-x86_64-304.134-no-compat32.run - md5sums_x86_64 = 2ecfa6bd145f673264f7977e0366e259 + md5sums = a5328715e210e36e5d9bbed0f9e55223 + source_i686 = ftp://download.nvidia.com/XFree86/Linux-x86/304.135/NVIDIA-Linux-x86-304.135.run + md5sums_i686 = 0e2082ae8490b135eb306befe6db56e1 + source_x86_64 = ftp://download.nvidia.com/XFree86/Linux-x86_64/304.135/NVIDIA-Linux-x86_64-304.135-no-compat32.run + md5sums_x86_64 = 8ee9bd0b020508bca9953181811422fa pkgname = nvidia-304xx-lqx @@ -3,9 +3,9 @@ # Contributor: Felix Yan <felixonmars@gmail.com> pkgname=nvidia-304xx-lqx -pkgver=304.134 +pkgver=304.135 _extramodules=extramodules-4.9-lqx -pkgrel=2 +pkgrel=1 _pkgdesc="NVIDIA 304xx drivers for linux-lqx." pkgdesc="$_pkgdesc" arch=('i686' 'x86_64') @@ -16,12 +16,14 @@ conflicts=('nvidia-lqx' 'nvidia-340xx-lqx') license=('custom') install=nvidia-304xx-lqx.install options=(!strip) -source=('disable-mtrr.patch') +source=('disable-mtrr.patch' + 'drm-driver-legacy.patch') source_i686=("ftp://download.nvidia.com/XFree86/Linux-x86/${pkgver}/NVIDIA-Linux-x86-${pkgver}.run") source_x86_64=("ftp://download.nvidia.com/XFree86/Linux-x86_64/${pkgver}/NVIDIA-Linux-x86_64-${pkgver}-no-compat32.run") -md5sums=('c4becf1145a139cc0121be9ad340bcd8') -md5sums_i686=('9abd7e9272382bd0e6939c3a367cc1a6') -md5sums_x86_64=('2ecfa6bd145f673264f7977e0366e259') +md5sums=('c4becf1145a139cc0121be9ad340bcd8' + 'a5328715e210e36e5d9bbed0f9e55223') +md5sums_i686=('0e2082ae8490b135eb306befe6db56e1') +md5sums_x86_64=('8ee9bd0b020508bca9953181811422fa') [[ "$CARCH" = "i686" ]] && _pkg="NVIDIA-Linux-x86-${pkgver}" [[ "$CARCH" = "x86_64" ]] && _pkg="NVIDIA-Linux-x86_64-${pkgver}-no-compat32" @@ -33,7 +35,8 @@ prepare() { # patches here # FS#47092 - (cd kernel; patch -p1 --no-backup-if-mismatch -i "$srcdir"/disable-mtrr.patch) + #(cd kernel; patch -p1 --no-backup-if-mismatch -i "$srcdir"/disable-mtrr.patch) + (cd kernel; patch -p1 --no-backup-if-mismatch -i "$srcdir"/drm-driver-legacy.patch) } diff --git a/drm-driver-legacy.patch b/drm-driver-legacy.patch new file mode 100644 index 000000000000..32ac75ca4dfa --- /dev/null +++ b/drm-driver-legacy.patch @@ -0,0 +1,20 @@ +Author: Luca Boccassi <luca.boccassi@gmail.com> +Description: Fix kernel module load on 4.9 and greater + From kernel 4.9 and newer (commit fa5386459f06) non-modesetting drivers have + to use the DRM flag DRIVER_LEGACY. Without this flag the kernel module does + not load correctly. + +--- a/nv-drm.c ++++ b/nv-drm.c +@@ -71,7 +71,11 @@ + }; + + static struct drm_driver nv_drm_driver = { ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 9, 0) + .driver_features = 0, ++#else ++ .driver_features = DRIVER_LEGACY, ++#endif + .load = nv_drm_load, + .unload = nv_drm_unload, + .fops = &nv_drm_fops, |