From nobody Mon May 05 13:36:16 2025 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4ZrjGm70ZPz5vWbZ; Mon, 05 May 2025 13:36:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZrjGm6ShFz3x4r; Mon, 05 May 2025 13:36:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746452176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JnleoY8/pjKU0vCc1neKFB4iwk1TaaKbNpFOSJ0XV1A=; b=b5PF51e6fI7Ya82XSDe503K34Y/qmGTLG1uIgIiEvhm6RU2nYkNOBfXyqu8pMU4UXkM+fE 0gk0oG3CnHJUHjz6J4OPqgbzeqhIkiCQG3bbqDttuvJ7UrvRFcpSZ1pe7tTBNgOV+ncdpk 0LiKMqOZfQPb9ztNdxzhGlBNnI8oEMoB7j6n9rlvJiUTGyHlAsrfqQTTRnGJnI6a045jS4 Lj6xiHYpk6x2Nz0cUWGPI6EnAcf2QTpglnaajo8xPVrlr6sGnH/4zwm4LbvYvnY6NLJ/Ex dv4ZDDWJDTxj97N9V0C1YUuDF8GbYyJnouiq1BNbBcqSMhhFEU8wP80GgKYqAA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1746452176; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=JnleoY8/pjKU0vCc1neKFB4iwk1TaaKbNpFOSJ0XV1A=; b=ylGLKo0wIzOblUj5MS2s1pFTsQ2O2cGSVOYzaFsnfRxfaQpCdvltzSrEAJA8+DWXEewR56 lEXbn4i5dqzssps/c0Ky8/Jk10s43fiaibBfqccfnKIfC/i5VQgZsjWFgBJAuPyAI2vvaW 749JvHX5/FmT6orO4fFl7UBtjktWsXxZRDf7LMyyf4Ha7597+lSN2q6HmTQh4XL5F+qIBr 4mnR/rukVJG8td9uBs986JmqNyvbUL7FsKSd2kNNPvkqdFUfRpExHseaqOELdii+/Cl2nA K97qhPPiX+Y2MkwNG9J1bUtbHzm+oTX6zU4LnnZUrNn2S4bkaBCMmlkm0vdCNQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1746452176; a=rsa-sha256; cv=none; b=Tz5xLxwUZ+V3/79+M9ib/BADIWWJo9K+Bah/j/3+cBAVz4KYvx2qEponP76oyov4zCg744 ba1kq+DQ2TpD/fYi8OYWykJcXsMn38wCQAW9OrjCo9ONBdlefUUHlGtKBeICG3e7lJQxv2 RZfyO8hsqITEZ2XKyqLpbU0nXfsg2G4fROE0dUbrIozj47MPgiBFg8ca253HjpkbElo7PQ vSkK1qv+qot0jzejoguSsHMawaAeU6aGKuf+9pVT6g5RBuM6I38vf9lxO8Qh8URt7Dfv7H qA6GbQrd3q0ig8hePu+0mMnEmewgbRdxE7jQjKiqSOrKCZx4AE06UzsioGbLyw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4ZrjGm5z9Xz1Sy; Mon, 05 May 2025 13:36:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 545DaGW7069123; Mon, 5 May 2025 13:36:16 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 545DaGte069120; Mon, 5 May 2025 13:36:16 GMT (envelope-from git) Date: Mon, 5 May 2025 13:36:16 GMT Message-Id: <202505051336.545DaGte069120@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Austin Shafer Subject: git: 637e9e68f1a2 - main - x11/nvidia-driver: Fix too aggressive disabling of GSP firmware List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: ashafer X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 637e9e68f1a2ce587e5107b0fd296abd16f061a0 Auto-Submitted: auto-generated The branch main has been updated by ashafer: URL: https://cgit.FreeBSD.org/ports/commit/?id=637e9e68f1a2ce587e5107b0fd296abd16f061a0 commit 637e9e68f1a2ce587e5107b0fd296abd16f061a0 Author: Tomoaki AOKI AuthorDate: 2025-05-05 13:31:25 +0000 Commit: Austin Shafer CommitDate: 2025-05-05 13:34:16 +0000 x11/nvidia-driver: Fix too aggressive disabling of GSP firmware Currently, GSP on recent (Turing and later) nvidia GPU is disabled as of suspend/resume issues (Differential Revision: D49828). After D49828 lands, in Forums thread "Xorg won't start with officially supported NVIDIA 5070 GPU?" [1], x11/nvidia-driver doesn't work but building directly from upstream tarball (570.133 and 570.144) is reported to work for the reporter. After some testing on reporter's side with our request, reverting back D49828 is reported to make x11/nvidia-driver working again. This update changes the way disabling GSP firmware by default to allow overriding via tunable hw.nvidia.registry.EnableGpuFirmware. [1] https://forums.freebsd.org/threads/xorg-wont-start-with-officially-supported-nvidia-5070-gpu.97659/ Reported by: foacs (displayed name on forums.freebsd.org) Approved by: ashafer, kbowling (mentor) Differential Revision: https://reviews.freebsd.org/D50053 --- x11/nvidia-driver/Makefile | 4 ++-- .../extra-gsp-patch-src-common-inc-nv_firmware_registry.h.in | 11 +++++++++++ x11/nvidia-driver/files/extra-gsp-patch-src-nvidia_subr.c.in | 11 ----------- x11/nvidia-driver/files/pkg-message.in | 9 ++++++--- 4 files changed, 19 insertions(+), 16 deletions(-) diff --git a/x11/nvidia-driver/Makefile b/x11/nvidia-driver/Makefile index 2f19923c04e8..787e9ec80534 100644 --- a/x11/nvidia-driver/Makefile +++ b/x11/nvidia-driver/Makefile @@ -14,7 +14,7 @@ PORTNAME?= nvidia-driver DISTVERSION?= ${NVIDIA_DISTVERSION} # Always try to set PORTREVISION as it can be overridden by the slave ports -PORTREVISION?= 3 +PORTREVISION?= 4 CATEGORIES= x11 MASTER_SITES= NVIDIA/XFree86/FreeBSD-${ARCH_SUFX}/${DISTVERSION} DISTNAME= NVIDIA-FreeBSD-${ARCH_SUFX}-${DISTVERSION} @@ -83,7 +83,7 @@ SUB_PATCHES+= extra-patch-src-nvidia_subr.c # Temporarily disable GSP firmware as it is known to cause # issues with suspend/resume .if ${NVVERSION} >= 565.00000 -SUB_PATCHES+= extra-gsp-patch-src-nvidia_subr.c +SUB_PATCHES+= extra-gsp-patch-src-common-inc-nv_firmware_registry.h .endif DOCSDIR= ${PREFIX}/share/doc/NVIDIA_GLX-1.0 diff --git a/x11/nvidia-driver/files/extra-gsp-patch-src-common-inc-nv_firmware_registry.h.in b/x11/nvidia-driver/files/extra-gsp-patch-src-common-inc-nv_firmware_registry.h.in new file mode 100644 index 000000000000..923d326df49a --- /dev/null +++ b/x11/nvidia-driver/files/extra-gsp-patch-src-common-inc-nv_firmware_registry.h.in @@ -0,0 +1,11 @@ +--- src/common/inc/nv-firmware-registry.h.orig ++++ src/common/inc/nv-firmware-registry.h +@@ -62,7 +62,7 @@ + #define NV_REG_ENABLE_GPU_FIRMWARE_POLICY_MASK 0x000000F0 + #define NV_REG_ENABLE_GPU_FIRMWARE_POLICY_ALLOW_FALLBACK 0x00000010 + +-#define NV_REG_ENABLE_GPU_FIRMWARE_DEFAULT_VALUE 0x00000012 ++#define NV_REG_ENABLE_GPU_FIRMWARE_DEFAULT_VALUE 0x00000000 + + // + // Registry key that when enabled, will send GPU firmware logs diff --git a/x11/nvidia-driver/files/extra-gsp-patch-src-nvidia_subr.c.in b/x11/nvidia-driver/files/extra-gsp-patch-src-nvidia_subr.c.in deleted file mode 100644 index 1f09b6c683a3..000000000000 --- a/x11/nvidia-driver/files/extra-gsp-patch-src-nvidia_subr.c.in +++ /dev/null @@ -1,11 +0,0 @@ ---- src/nvidia/nvidia_subr.c.orig 2025-04-14 16:14:13 UTC -+++ src/nvidia/nvidia_subr.c -@@ -32,7 +32,7 @@ nv_cap_t *nvidia_caps_root = NULL; - nv_state_t nvidia_ctl_state; - nv_cap_t *nvidia_caps_root = NULL; - --const NvBool nv_is_rm_firmware_supported_os = NV_TRUE; -+const NvBool nv_is_rm_firmware_supported_os = NV_FALSE; - - static struct callout snapshot_timer; - static struct mtx snapshot_timer_mutex; diff --git a/x11/nvidia-driver/files/pkg-message.in b/x11/nvidia-driver/files/pkg-message.in index d73c5f09d6a9..ae2810196b97 100644 --- a/x11/nvidia-driver/files/pkg-message.in +++ b/x11/nvidia-driver/files/pkg-message.in @@ -32,9 +32,12 @@ If X.org cannot start and reports in /var/log/Xorg.0.log while actually you have ``options SYSVSHM'' enabled in kernel, the sysctl ``kern.ipc.shmall'' should be increased. -In certain 570 versions GSP firmware is known to cause issues with -suspend/resume. To disable GSP firmware add -hw.nvidia.registry.EnableGpuFirmware=0 to your loader.conf. +Because in certain 570 versions GSP firmware is known to cause issues +with suspend/resume, thus, disabled by default for now. +On the other hand, some GPUs are known NOT to work without GSP +firmware support. +To enable GSP firmware add hw.nvidia.registry.EnableGpuFirmware=1 +to your loader.conf. https://download.nvidia.com/XFree86/FreeBSD-x86_64/560.31.02/README/gsp.html