From 95f4516a1d0851fe036df42a55fa176c7fb15fdf Mon Sep 17 00:00:00 2001 From: Willy Sudiarto Raharjo Date: Thu, 20 Oct 2022 15:27:49 +0700 Subject: system/nvidia-legacy390-kernel: Add patch for Linux Kernel 6.0. Signed-off-by: Willy Sudiarto Raharjo --- .../nvidia-legacy390-kernel-6.0.patch | 46 ++++++++++++++++++++++ .../nvidia-legacy390-kernel.SlackBuild | 6 ++- 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-6.0.patch diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-6.0.patch b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-6.0.patch new file mode 100644 index 0000000000..a8cf8d7c2b --- /dev/null +++ b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel-6.0.patch @@ -0,0 +1,46 @@ +From 17bed78791d6f311c83ff1794d085b18c9f89730 Mon Sep 17 00:00:00 2001 +From: Joan Bruguera +Date: Wed, 3 Aug 2022 00:56:57 +0200 +Subject: [PATCH] Tentative fix for NVIDIA 470.141.03 driver for Linux 6.0-rc1 + +--- + nvidia-drm/nvidia-drm-helper.c | 5 +++++ + nvidia/nv-acpi.c | 5 ++++- + nvidia/nv.c | 3 ++- + 3 files changed, 11 insertions(+), 2 deletions(-) + +diff --git a/nvidia-drm/nvidia-drm-helper.c b/nvidia-drm/nvidia-drm-helper.c +index 3831180..fa03d51 100644 +--- a/nvidia-drm/nvidia-drm-helper.c ++++ b/nvidia-drm/nvidia-drm-helper.c +@@ -41,6 +41,11 @@ + #include + #endif + ++// Add header which is no longer indirectly referenced as of Linux 6.0-rc1 ++#if defined(NV_DRM_DRM_FRAMEBUFFER_H_PRESENT) ++#include ++#endif ++ + static void __nv_drm_framebuffer_put(struct drm_framebuffer *fb) + { + #if defined(NV_DRM_FRAMEBUFFER_GET_PRESENT) +diff --git a/nvidia/nv-acpi.c b/nvidia/nv-acpi.c +index 2b7b988..76c36fa 100644 +--- a/nvidia/nv-acpi.c ++++ b/nvidia/nv-acpi.c +@@ -16,7 +16,10 @@ + + #include + +-#if defined(NV_LINUX_ACPI_EVENTS_SUPPORTED) ++#include ++// Rel.commit "ACPI: bus: Drop unused list heads from struct acpi_device" (Rafael J. Wysocki, 4 Jun 2022) ++// Disable ACPI support due to more GPL stuff (acpi_dev_for_each_child is only GPL-exported) ++#if defined(NV_LINUX_ACPI_EVENTS_SUPPORTED) && (LINUX_VERSION_CODE < KERNEL_VERSION(6, 0, 0)) + static NV_STATUS nv_acpi_extract_integer (const union acpi_object *, void *, NvU32, NvU32 *); + static NV_STATUS nv_acpi_extract_buffer (const union acpi_object *, void *, NvU32, NvU32 *); + static NV_STATUS nv_acpi_extract_package (const union acpi_object *, void *, NvU32, NvU32 *); +-- +2.37.1 + diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild index 2e13a4be04..7048ed1d63 100644 --- a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild +++ b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild @@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd) PRGNAM=nvidia-legacy390-kernel VERSION=${VERSION:-390.154} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -86,6 +86,10 @@ find -L . \ ( unset ARCH cd kernel || exit 1 + +# Patch for 6.0 kernel: +patch -p1 < $CWD/nvidia-legacy390-kernel-6.0.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. -- cgit v1.2.3-80-g2a13