From 5fdf5032fb5ec59df55083d8028b4772d4421e99 Mon Sep 17 00:00:00 2001 From: Bernhard Stoeckner Date: Mon, 1 Jul 2024 14:52:22 +0200 Subject: [PATCH] 555.58.02 (cherry picked from commit 1795a8bb20fe09f9939ca3e82d76791f5741e467) --- CHANGELOG.md | 2 ++ README.md | 6 +++--- kernel-open/Kbuild | 2 +- src/common/inc/nvBldVer.h | 20 +++++++++---------- src/common/inc/nvUnixVersion.h | 2 +- .../nvidia/inc/ctrl/ctrl0073/ctrl0073system.h | 10 +++++++--- .../gpu/disp/disp_common_kern_ctrl_minimal.c | 9 ++++++++- version.mk | 2 +- 8 files changed, 33 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bde7e9bab..a75f1432b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Release 555 Entries +### [555.58.02] 2024-07-01 + ### [555.58] 2024-06-27 ### [555.52.04] 2024-06-05 diff --git a/README.md b/README.md index 4a4ef191c..dca8f93ef 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # NVIDIA Linux Open GPU Kernel Module Source This is the source release of the NVIDIA Linux open GPU kernel modules, -version 555.58. +version 555.58.02. ## How to Build @@ -17,7 +17,7 @@ as root: Note that the kernel modules built here must be used with GSP firmware and user-space NVIDIA GPU driver components from a corresponding -555.58 driver release. This can be achieved by installing +555.58.02 driver release. This can be achieved by installing the NVIDIA GPU driver from the .run file using the `--no-kernel-modules` option. E.g., @@ -188,7 +188,7 @@ encountered specific to them. For details on feature support and limitations, see the NVIDIA GPU driver end user README here: -https://us.download.nvidia.com/XFree86/Linux-x86_64/555.58/README/kernel_open.html +https://us.download.nvidia.com/XFree86/Linux-x86_64/555.58.02/README/kernel_open.html For vGPU support, please refer to the README.vgpu packaged in the vGPU Host Package for more details. diff --git a/kernel-open/Kbuild b/kernel-open/Kbuild index a23005ebf..4cb79ddb5 100644 --- a/kernel-open/Kbuild +++ b/kernel-open/Kbuild @@ -72,7 +72,7 @@ EXTRA_CFLAGS += -I$(src)/common/inc EXTRA_CFLAGS += -I$(src) EXTRA_CFLAGS += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-format-extra-args EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DNVRM -EXTRA_CFLAGS += -DNV_VERSION_STRING=\"555.58\" +EXTRA_CFLAGS += -DNV_VERSION_STRING=\"555.58.02\" ifneq ($(SYSSRCHOST1X),) EXTRA_CFLAGS += -I$(SYSSRCHOST1X) diff --git a/src/common/inc/nvBldVer.h b/src/common/inc/nvBldVer.h index 85268e8a2..9195e5411 100644 --- a/src/common/inc/nvBldVer.h +++ b/src/common/inc/nvBldVer.h @@ -36,25 +36,25 @@ // and then checked back in. You cannot make changes to these sections without // corresponding changes to the buildmeister script #ifndef NV_BUILD_BRANCH - #define NV_BUILD_BRANCH r555_00 + #define NV_BUILD_BRANCH r556_09 #endif #ifndef NV_PUBLIC_BRANCH - #define NV_PUBLIC_BRANCH r555_00 + #define NV_PUBLIC_BRANCH r556_09 #endif #if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS) -#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r555/r555_00-164" -#define NV_BUILD_CHANGELIST_NUM (34441657) +#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r555/r556_09-165" +#define NV_BUILD_CHANGELIST_NUM (34455816) #define NV_BUILD_TYPE "Official" -#define NV_BUILD_NAME "rel/gpu_drv/r555/r555_00-164" -#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34441657) +#define NV_BUILD_NAME "rel/gpu_drv/r555/r556_09-165" +#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34455816) #else /* Windows builds */ -#define NV_BUILD_BRANCH_VERSION "r555_00-166" -#define NV_BUILD_CHANGELIST_NUM (34441657) +#define NV_BUILD_BRANCH_VERSION "r556_09-1" +#define NV_BUILD_CHANGELIST_NUM (34444748) #define NV_BUILD_TYPE "Official" -#define NV_BUILD_NAME "556.09" -#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34441657) +#define NV_BUILD_NAME "556.10" +#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34444748) #define NV_BUILD_BRANCH_BASE_VERSION R555 #endif // End buildmeister python edited section diff --git a/src/common/inc/nvUnixVersion.h b/src/common/inc/nvUnixVersion.h index 4dab18aa8..99aa63058 100644 --- a/src/common/inc/nvUnixVersion.h +++ b/src/common/inc/nvUnixVersion.h @@ -4,7 +4,7 @@ #if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS) || defined(NV_VMWARE) || defined(NV_QNX) || defined(NV_INTEGRITY) || \ (defined(RMCFG_FEATURE_PLATFORM_GSP) && RMCFG_FEATURE_PLATFORM_GSP == 1) -#define NV_VERSION_STRING "555.58" +#define NV_VERSION_STRING "555.58.02" #else diff --git a/src/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073system.h b/src/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073system.h index 679b1b4d1..bf98c8897 100644 --- a/src/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073system.h +++ b/src/common/sdk/nvidia/inc/ctrl/ctrl0073/ctrl0073system.h @@ -216,6 +216,9 @@ typedef struct NV0073_CTRL_SYSTEM_GET_SCANLINE_PARAMS { * This parameter specifies the head for which the vblank counter * should be retrieved. This value must be between zero and the * maximum number of heads supported by the subdevice. + * lowLatencyHint + * RM maintains several different vblank counts. When this parameter is + * NV_TRUE, the command may return the low latency count. * verticalBlankCounter * This parameter returns the vblank counter value for the specified * head. If the display mode is not valid or vblank not active then @@ -230,9 +233,10 @@ typedef struct NV0073_CTRL_SYSTEM_GET_SCANLINE_PARAMS { #define NV0073_CTRL_SYSTEM_GET_VBLANK_COUNTER_PARAMS_MESSAGE_ID (0x05U) typedef struct NV0073_CTRL_SYSTEM_GET_VBLANK_COUNTER_PARAMS { - NvU32 subDeviceInstance; - NvU32 head; - NvU32 verticalBlankCounter; + NvU32 subDeviceInstance; + NvU32 head; + NvBool lowLatencyHint; + NvU32 verticalBlankCounter; } NV0073_CTRL_SYSTEM_GET_VBLANK_COUNTER_PARAMS; /* diff --git a/src/nvidia/src/kernel/gpu/disp/disp_common_kern_ctrl_minimal.c b/src/nvidia/src/kernel/gpu/disp/disp_common_kern_ctrl_minimal.c index f8c7e934f..f6c756247 100644 --- a/src/nvidia/src/kernel/gpu/disp/disp_common_kern_ctrl_minimal.c +++ b/src/nvidia/src/kernel/gpu/disp/disp_common_kern_ctrl_minimal.c @@ -329,7 +329,14 @@ dispcmnCtrlCmdSystemGetVblankCounter_IMPL if (IS_GSP_CLIENT(pGpu)) { - pVBCounterParams->verticalBlankCounter = pKernelDisplay->pSharedData->kHeadVblankCount[pKernelHead->PublicId]; + if (pVBCounterParams->lowLatencyHint) + { + pVBCounterParams->verticalBlankCounter = kheadGetVblankLowLatencyCounter_HAL(pKernelHead); + } + else + { + pVBCounterParams->verticalBlankCounter = pKernelDisplay->pSharedData->kHeadVblankCount[pKernelHead->PublicId]; + } } else { diff --git a/version.mk b/version.mk index 77d63001f..b11ae1498 100644 --- a/version.mk +++ b/version.mk @@ -1,4 +1,4 @@ -NVIDIA_VERSION = 555.58 +NVIDIA_VERSION = 555.58.02 # This file. VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))