summaryrefslogtreecommitdiff
path: root/system
diff options
context:
space:
mode:
Diffstat (limited to 'system')
-rw-r--r--system/nvidia-legacy390-kernel/README10
-rw-r--r--system/nvidia-legacy390-kernel/nvidia-fix-linux-5.19.patch29
-rw-r--r--system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-5.18.patch152
-rw-r--r--system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild9
-rw-r--r--system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.info10
5 files changed, 10 insertions, 200 deletions
diff --git a/system/nvidia-legacy390-kernel/README b/system/nvidia-legacy390-kernel/README
index 9b9edc3be0..a4d06f73b9 100644
--- a/system/nvidia-legacy390-kernel/README
+++ b/system/nvidia-legacy390-kernel/README
@@ -3,19 +3,15 @@ driver. You also need the nvidia-driver package from SlackBuilds.org.
To build the package for a kernel different from the running one,
start the script setting the KERNEL variable as in
- KERNEL=4.6.3 ./nvidia-legacy470-kernel.SlackBuild
+ KERNEL=4.6.3 ./nvidia-legacy390-kernel.SlackBuild
A default config file is placed at
/usr/share/X11/xorg.conf.d/10-nvidia.conf
to make sure that X loads the nvidia module. If you need to make
-changes, move that file to /etc/X11/xorg.conf.d/ and edit the copy.
+changes, copy that file to /etc/X11/xorg.conf.d/ and edit the copy.
You do not need this file at all if you have a proper and complete
-xorg.conf.
+/etc/X11/xorg.conf.
The xf86-video-nouveau-blacklist package from /extra is required.
The Nvidia 390.xx series will be supported through December 2022.
-
-NOTE FOR -CURRENT: The script now includes a patch for the 5.18 kernel
-(BIG thanks to Archlinux for this one). It is NOT necessary to remove
-it for earlier kernels.
diff --git a/system/nvidia-legacy390-kernel/nvidia-fix-linux-5.19.patch b/system/nvidia-legacy390-kernel/nvidia-fix-linux-5.19.patch
deleted file mode 100644
index 50f46efc2a..0000000000
--- a/system/nvidia-legacy390-kernel/nvidia-fix-linux-5.19.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From cc4acfadcd71ee07c8d1b29411620a79451780b9 Mon Sep 17 00:00:00 2001
-From: Joan Bruguera <joanbrugueram@gmail.com>
-Date: Wed, 13 Apr 2022 21:21:13 +0200
-Subject: [PATCH] Buildfix NVIDIA 470.129.06 for Linux 5.19-rc1
-
----
- nvidia-drm/nvidia-dma-resv-helper.h | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/nvidia-drm/nvidia-dma-resv-helper.h b/nvidia-drm/nvidia-dma-resv-helper.h
-index ad8800d..65ea1f8 100644
---- a/nvidia-drm/nvidia-dma-resv-helper.h
-+++ b/nvidia-drm/nvidia-dma-resv-helper.h
-@@ -39,6 +39,15 @@
- #include <linux/reservation.h>
- #endif
-
-+#include <linux/version.h>
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 19, 0))
-+// Rel. commit "dma-buf: specify usage while adding fences to dma_resv obj v7" (Christian König, 9 Nov 2021)
-+static inline void dma_resv_add_excl_fence(struct dma_resv *obj, struct dma_fence *fence)
-+{
-+ dma_resv_add_fence(obj, fence, DMA_RESV_USAGE_WRITE);
-+}
-+#endif
-+
- #include <nvidia-dma-fence-helper.h>
-
- #if defined(NV_LINUX_DMA_RESV_H_PRESENT)
diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-5.18.patch b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-5.18.patch
deleted file mode 100644
index 70ebf15f22..0000000000
--- a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-5.18.patch
+++ /dev/null
@@ -1,152 +0,0 @@
-diff --git a/kernel/common/inc/nv.h b/kernel/common/inc/nv.h
-index def0551..f7db7ed 100644
---- a/kernel/common/inc/nv.h
-+++ b/kernel/common/inc/nv.h
-@@ -12,6 +12,11 @@
- #ifndef _NV_H_
- #define _NV_H_
-
-+#include <linux/version.h>
-+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0))
-+#include <pci-dma-compat.h>
-+#endif
-+
- #include <nvlimits.h>
- #include <nvtypes.h>
- #include <nvCpuUuid.h>
-diff --git a/kernel/common/inc/pci-dma-compat.h b/kernel/common/inc/pci-dma-compat.h
-new file mode 100644
-index 0000000..4e94d4e
---- /dev/null
-+++ b/kernel/common/inc/pci-dma-compat.h
-@@ -0,0 +1,130 @@
-+/* SPDX-License-Identifier: GPL-2.0 */
-+/* include this file if the platform implements the dma_ DMA Mapping API
-+ * and wants to provide the pci_ DMA Mapping API in terms of it */
-+
-+#ifndef _ASM_GENERIC_PCI_DMA_COMPAT_H
-+#define _ASM_GENERIC_PCI_DMA_COMPAT_H
-+
-+#include <linux/dma-mapping.h>
-+#include <linux/pci.h>
-+
-+/* This defines the direction arg to the DMA mapping routines. */
-+#define PCI_DMA_BIDIRECTIONAL DMA_BIDIRECTIONAL
-+#define PCI_DMA_TODEVICE DMA_TO_DEVICE
-+#define PCI_DMA_FROMDEVICE DMA_FROM_DEVICE
-+#define PCI_DMA_NONE DMA_NONE
-+
-+static inline void *
-+pci_alloc_consistent(struct pci_dev *hwdev, size_t size,
-+ dma_addr_t *dma_handle)
-+{
-+ return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
-+}
-+
-+static inline void *
-+pci_zalloc_consistent(struct pci_dev *hwdev, size_t size,
-+ dma_addr_t *dma_handle)
-+{
-+ return dma_alloc_coherent(&hwdev->dev, size, dma_handle, GFP_ATOMIC);
-+}
-+
-+static inline void
-+pci_free_consistent(struct pci_dev *hwdev, size_t size,
-+ void *vaddr, dma_addr_t dma_handle)
-+{
-+ dma_free_coherent(&hwdev->dev, size, vaddr, dma_handle);
-+}
-+
-+static inline dma_addr_t
-+pci_map_single(struct pci_dev *hwdev, void *ptr, size_t size, int direction)
-+{
-+ return dma_map_single(&hwdev->dev, ptr, size, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_unmap_single(struct pci_dev *hwdev, dma_addr_t dma_addr,
-+ size_t size, int direction)
-+{
-+ dma_unmap_single(&hwdev->dev, dma_addr, size, (enum dma_data_direction)direction);
-+}
-+
-+static inline dma_addr_t
-+pci_map_page(struct pci_dev *hwdev, struct page *page,
-+ unsigned long offset, size_t size, int direction)
-+{
-+ return dma_map_page(&hwdev->dev, page, offset, size, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_unmap_page(struct pci_dev *hwdev, dma_addr_t dma_address,
-+ size_t size, int direction)
-+{
-+ dma_unmap_page(&hwdev->dev, dma_address, size, (enum dma_data_direction)direction);
-+}
-+
-+static inline int
-+pci_map_sg(struct pci_dev *hwdev, struct scatterlist *sg,
-+ int nents, int direction)
-+{
-+ return dma_map_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_unmap_sg(struct pci_dev *hwdev, struct scatterlist *sg,
-+ int nents, int direction)
-+{
-+ dma_unmap_sg(&hwdev->dev, sg, nents, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_dma_sync_single_for_cpu(struct pci_dev *hwdev, dma_addr_t dma_handle,
-+ size_t size, int direction)
-+{
-+ dma_sync_single_for_cpu(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_dma_sync_single_for_device(struct pci_dev *hwdev, dma_addr_t dma_handle,
-+ size_t size, int direction)
-+{
-+ dma_sync_single_for_device(&hwdev->dev, dma_handle, size, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_dma_sync_sg_for_cpu(struct pci_dev *hwdev, struct scatterlist *sg,
-+ int nelems, int direction)
-+{
-+ dma_sync_sg_for_cpu(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
-+}
-+
-+static inline void
-+pci_dma_sync_sg_for_device(struct pci_dev *hwdev, struct scatterlist *sg,
-+ int nelems, int direction)
-+{
-+ dma_sync_sg_for_device(&hwdev->dev, sg, nelems, (enum dma_data_direction)direction);
-+}
-+
-+static inline int
-+pci_dma_mapping_error(struct pci_dev *pdev, dma_addr_t dma_addr)
-+{
-+ return dma_mapping_error(&pdev->dev, dma_addr);
-+}
-+
-+#ifdef CONFIG_PCI
-+static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
-+{
-+ return dma_set_mask(&dev->dev, mask);
-+}
-+
-+static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
-+{
-+ return dma_set_coherent_mask(&dev->dev, mask);
-+}
-+#else
-+static inline int pci_set_dma_mask(struct pci_dev *dev, u64 mask)
-+{ return -EIO; }
-+static inline int pci_set_consistent_dma_mask(struct pci_dev *dev, u64 mask)
-+{ return -EIO; }
-+#endif
-+
-+#endif
diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
index adc90a7581..2e13a4be04 100644
--- a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
+++ b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
@@ -28,8 +28,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nvidia-legacy390-kernel
-VERSION=${VERSION:-390.151}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-390.154}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -83,14 +83,9 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Patch for 5.18 kernel (Thanks to archlinux for this one)
-patch -p1 < $CWD/nvidia-legacy390-kernel-5.18.patch
-
(
unset ARCH
cd kernel || exit 1
-# Patch for 5.19 kernel
- patch -p1 < $CWD/nvidia-fix-linux-5.19.patch
# CC=${CC:-gcc} suppresses an otherwise harmless "compiler mismatch"
# message. If you custom-build your kernel with clang,
# then pass CC=clang to this script.
diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.info b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.info
index 891869d5b1..ea06e248b2 100644
--- a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.info
+++ b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.info
@@ -1,10 +1,10 @@
PRGNAM="nvidia-legacy390-kernel"
-VERSION="390.151"
+VERSION="390.154"
HOMEPAGE="http://www.nvidia.com"
-DOWNLOAD="https://download.nvidia.com/XFree86/Linux-x86/390.151/NVIDIA-Linux-x86-390.151.run"
-MD5SUM="fe68121d6846dc23ceec22ff005cc478"
-DOWNLOAD_x86_64="https://download.nvidia.com/XFree86/Linux-x86_64/390.151/NVIDIA-Linux-x86_64-390.151.run"
-MD5SUM_x86_64="4f545ea0f8da13b387f3c16d0a57b446"
+DOWNLOAD="https://download.nvidia.com/XFree86/Linux-x86/390.154/NVIDIA-Linux-x86-390.154.run"
+MD5SUM="6166b031a618a7a2ef824abdae075610"
+DOWNLOAD_x86_64="https://download.nvidia.com/XFree86/Linux-x86_64/390.154/NVIDIA-Linux-x86_64-390.154.run"
+MD5SUM_x86_64="1050874ea7f8f20f5b8dbd89bdb64229"
REQUIRES=""
MAINTAINER="Lenard Spencer"
EMAIL="lenardrspencer@gmai.com"