[nvidia-470xx-kmod/f36] Added patch for the Linux kernel 6.2 support.
by Vitaly Zaitsev
commit 3d0ab73b68223a05a160cc58a36c1eb408450791
Author: Vitaly Zaitsev <vitaly(a)easycoding.org>
Date: Sat Feb 25 10:53:22 2023 +0100
Added patch for the Linux kernel 6.2 support.
nvidia-470xx-kmod.spec | 8 +-
nvidia-470xx-linux-6.2-build-fixes.patch | 145 +++++++++++++++++++++++++++++++
2 files changed, 152 insertions(+), 1 deletion(-)
---
diff --git a/nvidia-470xx-kmod.spec b/nvidia-470xx-kmod.spec
index be89c0e..67d45fd 100644
--- a/nvidia-470xx-kmod.spec
+++ b/nvidia-470xx-kmod.spec
@@ -12,7 +12,7 @@ Name: nvidia-470xx-kmod
Epoch: 3
Version: 470.161.03
# Taken over by kmodtool
-Release: 1%{?dist}
+Release: 2%{?dist}
License: Redistributable, no modification permitted
Summary: NVIDIA 470xx display driver kernel module
@@ -20,6 +20,8 @@ URL: https://www.nvidia.com/
Source11: nvidia-470xx-kmodtool-excludekernel-filterfile
+Patch20: nvidia-470xx-linux-6.2-build-fixes.patch
+
# needed for plague to make sure it builds for i586 and i686
ExclusiveArch: x86_64
@@ -42,6 +44,7 @@ kmodtool --target %{_target_cpu} --repo rpmfusion --kmodname %{name} --filterf
%setup -T -c
tar --use-compress-program xz -xf %{_datadir}/%{name}-%{version}/%{name}-%{version}-%{_target_cpu}.tar.xz
# patch loop
+%patch20 -p1
for kernel_version in %{?kernel_versions} ; do
cp -a kernel _kmod_build_${kernel_version%%___*}
@@ -73,6 +76,9 @@ done
%{?akmod_install}
%changelog
+* Sat Feb 25 2023 Vitaly Zaitsev <vitaly(a)easycoding.org> - 3:470.161.03-2
+- Added patch for the Linux kernel 6.2 support.
+
* Tue Nov 29 2022 Vitaly Zaitsev <vitaly(a)easycoding.org> - 3:470.161.03-1
- Updated to version 470.161.03.
diff --git a/nvidia-470xx-linux-6.2-build-fixes.patch b/nvidia-470xx-linux-6.2-build-fixes.patch
new file mode 100644
index 0000000..bb85492
--- /dev/null
+++ b/nvidia-470xx-linux-6.2-build-fixes.patch
@@ -0,0 +1,145 @@
+From 5db7eb5a62003bbe04f3f07d089fcf5445b34a29 Mon Sep 17 00:00:00 2001
+From: Joan Bruguera <joanbrugueram(a)gmail.com>
+Date: Sun, 25 Dec 2022 22:05:14 +0000
+Subject: [PATCH] Tentative fix for NVIDIA 470.161.03 driver for Linux 6.2-rc1
+
+---
+ kernel/nvidia-drm/nvidia-drm-connector.c | 22 ++++++++++++++++++++++
+ kernel/nvidia-drm/nvidia-drm-drv.c | 4 ++++
+ kernel/nvidia/nv-acpi.c | 19 ++++++++++++++++---
+ 3 files changed, 42 insertions(+), 3 deletions(-)
+
+diff --git a/kernel/nvidia-drm/nvidia-drm-connector.c b/kernel/nvidia-drm/nvidia-drm-connector.c
+index 6fbcd63..a5ab9e9 100644
+--- a/kernel/nvidia-drm/nvidia-drm-connector.c
++++ b/kernel/nvidia-drm/nvidia-drm-connector.c
+@@ -20,6 +20,8 @@
+ * DEALINGS IN THE SOFTWARE.
+ */
+
++#include <linux/version.h>
++#include <drm/drm_edid.h>
+ #include "nvidia-drm-conftest.h" /* NV_DRM_ATOMIC_MODESET_AVAILABLE */
+
+ #if defined(NV_DRM_ATOMIC_MODESET_AVAILABLE)
+@@ -98,6 +100,7 @@ __nv_drm_detect_encoder(struct NvKmsKapiDynamicDisplayParams *pDetectParams,
+ break;
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 2, 0)
+ if (connector->override_edid) {
+ const struct drm_property_blob *edid = connector->edid_blob_ptr;
+
+@@ -110,6 +113,25 @@ __nv_drm_detect_encoder(struct NvKmsKapiDynamicDisplayParams *pDetectParams,
+ sizeof(pDetectParams->edid.buffer));
+ }
+ }
++#else
++ // Rel. commit "drm/edid: detach debugfs EDID override from EDID property update" (Jani Nikula, 24 Oct 2022)
++ // NOTE: HUGE HACK!
++ mutex_lock(&connector->edid_override_mutex);
++ if (connector->edid_override) {
++ const struct edid *edid = drm_edid_raw(connector->edid_override);
++ size_t edid_length = EDID_LENGTH * (edid->extensions + 1);
++ if (edid_length <= sizeof(pDetectParams->edid.buffer)) {
++ memcpy(pDetectParams->edid.buffer, edid, edid_length);
++ pDetectParams->edid.bufferSize = edid_length;
++ pDetectParams->overrideEdid = NV_TRUE;
++ } else {
++ WARN_ON(edid_length >
++ sizeof(pDetectParams->edid.buffer));
++ }
++ }
++ mutex_unlock(&connector->edid_override_mutex);
++
++#endif
+
+ if (!nvKms->getDynamicDisplayInfo(nv_dev->pDevice, pDetectParams)) {
+ NV_DRM_DEV_LOG_ERR(
+diff --git a/kernel/nvidia-drm/nvidia-drm-drv.c b/kernel/nvidia-drm/nvidia-drm-drv.c
+index 6d007b1..d08ab4c 100644
+--- a/kernel/nvidia-drm/nvidia-drm-drv.c
++++ b/kernel/nvidia-drm/nvidia-drm-drv.c
+@@ -20,6 +20,7 @@
+ * DEALINGS IN THE SOFTWARE.
+ */
+
++#include <linux/version.h>
+ #include "nvidia-drm-conftest.h" /* NV_DRM_AVAILABLE and NV_DRM_DRM_GEM_H_PRESENT */
+
+ #include "nvidia-drm-priv.h"
+@@ -240,9 +241,12 @@ nv_drm_init_mode_config(struct nv_drm_device *nv_dev,
+ dev->mode_config.preferred_depth = 24;
+ dev->mode_config.prefer_shadow = 1;
+
++// Rel. commit "drm: Remove drm_mode_config::fb_base" (Zack Rusin, 18 Oct 2022)
++#if defined(CONFIG_FB) && LINUX_VERSION_CODE < KERNEL_VERSION(6, 2, 0)
+ /* Currently unused. Update when needed. */
+
+ dev->mode_config.fb_base = 0;
++#endif
+
+ #if defined(NV_DRM_CRTC_STATE_HAS_ASYNC_FLIP) || \
+ defined(NV_DRM_CRTC_STATE_HAS_PAGEFLIP_FLAGS)
+diff --git a/kernel/nvidia/nv-acpi.c b/kernel/nvidia/nv-acpi.c
+index 07501eb..1fdf71c 100644
+--- a/kernel/nvidia/nv-acpi.c
++++ b/kernel/nvidia/nv-acpi.c
+@@ -8,6 +8,7 @@
+ * _NVRM_COPYRIGHT_END_
+ */
+
++#include <linux/version.h>
+ #define __NO_VERSION__
+
+ #include "os-interface.h"
+@@ -24,7 +25,10 @@ static NV_STATUS nv_acpi_extract_object (const union acpi_object *, void *, N
+
+ static int nv_acpi_add (struct acpi_device *);
+
+-#if !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
++// Rel. commit "ACPI: make remove callback of ACPI driver void" (Dawei Li, 14 Nov 2022)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 2, 0))
++static void nv_acpi_remove_one_arg_void(struct acpi_device *device);
++#elif !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
+ static int nv_acpi_remove_two_args(struct acpi_device *device, int type);
+ #else
+ static int nv_acpi_remove_one_arg(struct acpi_device *device);
+@@ -80,7 +84,10 @@ static const struct acpi_driver nv_acpi_driver_template = {
+ .ids = nv_video_device_ids,
+ .ops = {
+ .add = nv_acpi_add,
+-#if !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
++// Rel. commit "ACPI: make remove callback of ACPI driver void" (Dawei Li, 14 Nov 2022)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 2, 0))
++ .remove = nv_acpi_remove_one_arg_void,
++#elif !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
+ .remove = nv_acpi_remove_two_args,
+ #else
+ .remove = nv_acpi_remove_one_arg,
+@@ -342,7 +349,10 @@ static int nv_acpi_add(struct acpi_device *device)
+ return 0;
+ }
+
+-#if !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
++// Rel. commit "ACPI: make remove callback of ACPI driver void" (Dawei Li, 14 Nov 2022)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 2, 0))
++static void nv_acpi_remove_one_arg_void(struct acpi_device *device)
++#elif !defined(NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT) || (NV_ACPI_DEVICE_OPS_REMOVE_ARGUMENT_COUNT == 2)
+ static int nv_acpi_remove_two_args(struct acpi_device *device, int type)
+ #else
+ static int nv_acpi_remove_one_arg(struct acpi_device *device)
+@@ -396,7 +406,10 @@ static int nv_acpi_remove_one_arg(struct acpi_device *device)
+ device->driver_data = NULL;
+ }
+
++// Rel. commit "ACPI: make remove callback of ACPI driver void" (Dawei Li, 14 Nov 2022)
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(6, 2, 0))
+ return status;
++#endif
+ }
+
+ /*
+--
+2.39.0
+
1 year, 9 months
[mesa-freeworld/f37] Update to 22.3.6 and sync changed with Fedora
by Thorsten Leemhuis
commit 8539cb20878765bc8870d3003d3325ea44dea7a7
Author: Thorsten Leemhuis <linux(a)leemhuis.info>
Date: Thu Feb 23 14:47:30 2023 +0100
Update to 22.3.6 and sync changed with Fedora
Signed-off-by: Thorsten Leemhuis <linux(a)leemhuis.info>
.gitignore | 1 +
...able-Y-tiling-for-render-targets-properly.patch | 31 ----------------------
mesa-freeworld.spec | 8 +++---
sources | 2 +-
4 files changed, 6 insertions(+), 36 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index df44162..3bee83d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/mesa-22.3.3.tar.xz
/mesa-22.3.4.tar.xz
/mesa-22.3.5.tar.xz
+/mesa-22.3.6.tar.xz
diff --git a/mesa-freeworld.spec b/mesa-freeworld.spec
index a5e19e1..2ea1bc0 100644
--- a/mesa-freeworld.spec
+++ b/mesa-freeworld.spec
@@ -56,7 +56,7 @@ algorithms and decoding only VC1 algorithm.
Name: %{srcname}-freeworld
Summary: Mesa graphics libraries
-%global ver 22.3.5
+%global ver 22.3.6
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
Release: 1%{?dist}
License: MIT
@@ -70,9 +70,6 @@ Source1: Mesa-MLAA-License-Clarification-Email.txt
Source2: org.mesa3d.vaapi.freeworld.metainfo.xml
Source3: org.mesa3d.vdpau.freeworld.metainfo.xml
-# fix crocus gnome-shell/webrtc captures
-Patch1: 0001-crocus-disable-Y-tiling-for-render-targets-properly.patch
-
BuildRequires: meson >= 0.61.4
BuildRequires: gcc
BuildRequires: gcc-c++
@@ -295,6 +292,9 @@ rm -fr %{buildroot}%{_libdir}/libVkLayer_MESA_device_select.so
%license docs/license.rst
%endif
%changelog
+* Thu Feb 23 2023 Thorsten Leemhuis <fedora(a)leemhuis.info> - 22.3.6-1
+- Update to 22.3.6 and sync changed with Fedora
+
* Thu Feb 09 2023 Thorsten Leemhuis <fedora(a)leemhuis.info> - 22.3.5-1
- Update to 22.3.5
diff --git a/sources b/sources
index 7fa75aa..948d598 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mesa-22.3.5.tar.xz) = a4cad9b7e6501678fac279bd88a37e522633c7128afa8df04982f469c930e3557bb1d05b4b0f5ae16704d8d04e50c90a7489943a48861df17dd947704c329b85
+SHA512 (mesa-22.3.6.tar.xz) = 506fc69ace128504fe45b7ca0b6b1d1d2a33837d74bff7ae7310fef5100b162136ca77ee6a50745a5bda270d0b8cb1ee99ecc19190eddd83cc78039bd02b1bb7
1 year, 9 months
[mesa-freeworld] Update to 23.0.0
by Thorsten Leemhuis
commit 53b5a30d7c423bdd0731fb50dde190d68a9bbcc9
Author: Thorsten Leemhuis <linux(a)leemhuis.info>
Date: Thu Feb 23 13:01:28 2023 +0100
Update to 23.0.0
Signed-off-by: Thorsten Leemhuis <linux(a)leemhuis.info>
.gitignore | 1 +
mesa-freeworld.spec | 7 +++++--
sources | 2 +-
3 files changed, 7 insertions(+), 3 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 8c23bed..4b09fd8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/mesa-22.3.3.tar.xz
/mesa-23.0.0-rc3.tar.xz
/mesa-23.0.0-rc4.tar.xz
+/mesa-23.0.0.tar.xz
diff --git a/mesa-freeworld.spec b/mesa-freeworld.spec
index f436c14..e5c0da0 100644
--- a/mesa-freeworld.spec
+++ b/mesa-freeworld.spec
@@ -56,9 +56,9 @@ algorithms and decoding only VC1 algorithm.
Name: %{srcname}-freeworld
Summary: Mesa graphics libraries
-%global ver 23.0.0-rc4
+%global ver 23.0.0
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
-Release: 2%{?dist}
+Release: 1%{?dist}
License: MIT
URL: http://www.mesa3d.org
@@ -286,6 +286,9 @@ rm -fr %{buildroot}%{_libdir}/libVkLayer_MESA_device_select.so
%license docs/license.rst
%endif
%changelog
+* Thu Feb 23 2023 Thorsten Leemhuis <fedora(a)leemhuis.info> - 23.0.0
+- Update to 23.0.0
+
* Thu Feb 16 2023 Luya Tshimbalanga <luya(a)fedoraproject.org> - 23.0.0~rc4-2
- Remove trailed .1 in release tag
diff --git a/sources b/sources
index ac58731..dfd7094 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (mesa-23.0.0-rc4.tar.xz) = 463dad021bffd1b6cae8eb540ea0f51da8753e5f5295f5d1ab6398ed6eb140ccef7ba62b458c099cc19a26d6dcb4b620280893425572fae75fe7e880d8e3a403
+SHA512 (mesa-23.0.0.tar.xz) = 127e2759a2a31cacd65a0891719ab7bb4a9188844022b4bccaebbedce9c550b9ccb160ad519178ea0d851c4bcb8f0f56febda248ed2ba82b5ddf804855e4694b
1 year, 9 months