From a91fc10bdcff1fa7059f6d8a7dcf55a43fc3024a Mon Sep 17 00:00:00 2001 From: Maneet Singh Date: Thu, 20 Oct 2022 14:38:07 -0700 Subject: [PATCH] 520.61.07 --- CHANGELOG.md | 2 ++ README.md | 12 ++++++++---- kernel-open/Kbuild | 2 +- src/common/inc/nvBldVer.h | 16 ++++++++-------- src/common/inc/nvUnixVersion.h | 2 +- src/nvidia/generated/g_nv_name_released.h | 5 +++++ .../kernel/gpu/fsp/arch/hopper/kern_fsp_gh100.c | 4 ++-- src/nvidia/src/kernel/gpu/fsp/kern_fsp.c | 4 ++-- version.mk | 2 +- 9 files changed, 30 insertions(+), 19 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 306fa0a48..357be9f6c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ ## Release 520 Entries +### [520.61.07] 2022-10-20 + ### [520.61.05] 2022-10-10 #### Added diff --git a/README.md b/README.md index d53fd2d5b..957b7c583 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 520.61.05. +version 520.61.07. ## How to Build @@ -17,7 +17,7 @@ as root: Note that the kernel modules built here must be used with gsp.bin firmware and user-space NVIDIA GPU driver components from a corresponding -520.61.05 driver release. This can be achieved by installing +520.61.07 driver release. This can be achieved by installing the NVIDIA GPU driver from the .run file using the `--no-kernel-modules` option. E.g., @@ -167,7 +167,7 @@ for the target kernel. ## Compatible GPUs The open-gpu-kernel-modules can be used on any Turing or later GPU -(see the table below). However, in the 520.61.05 release, +(see the table below). However, in the 520.61.07 release, GeForce and Workstation support is still considered alpha-quality. To enable use of the open kernel modules on GeForce and Workstation GPUs, @@ -175,7 +175,7 @@ set the "NVreg_OpenRmEnableUnsupportedGpus" nvidia.ko kernel module parameter to 1. For more details, see the NVIDIA GPU driver end user README here: -https://us.download.nvidia.com/XFree86/Linux-x86_64/520.61.05/README/kernel_open.html +https://us.download.nvidia.com/XFree86/Linux-x86_64/520.61.07/README/kernel_open.html In the below table, if three IDs are listed, the first is the PCI Device ID, the second is the PCI Subsystem Vendor ID, and the third is the PCI @@ -685,6 +685,7 @@ Subsystem Device ID. | NVIDIA GeForce RTX 3090 Ti | 2203 | | NVIDIA GeForce RTX 3090 | 2204 | | NVIDIA GeForce RTX 3080 | 2206 | +| NVIDIA GeForce RTX 3070 Ti | 2207 | | NVIDIA GeForce RTX 3080 Ti | 2208 | | NVIDIA GeForce RTX 3080 | 220A | | NVIDIA CMP 90HX | 220D | @@ -709,6 +710,7 @@ Subsystem Device ID. | NVIDIA A10 | 2236 10DE 1482 | | NVIDIA A10G | 2237 10DE 152F | | NVIDIA A10M | 2238 10DE 1677 | +| NVIDIA H100 PCIe | 2331 10DE 1626 | | NVIDIA GeForce RTX 3060 Ti | 2414 | | NVIDIA GeForce RTX 3080 Ti Laptop GPU | 2420 | | NVIDIA RTX A5500 Laptop GPU | 2438 | @@ -736,6 +738,7 @@ Subsystem Device ID. | NVIDIA RTX A3000 12GB Laptop GPU | 24B9 | | NVIDIA RTX A4500 Laptop GPU | 24BA | | NVIDIA RTX A3000 12GB Laptop GPU | 24BB | +| NVIDIA GeForce RTX 3060 Ti | 24C9 | | NVIDIA GeForce RTX 3080 Laptop GPU | 24DC | | NVIDIA GeForce RTX 3070 Laptop GPU | 24DD | | NVIDIA GeForce RTX 3070 Ti Laptop GPU | 24E0 | @@ -751,6 +754,7 @@ Subsystem Device ID. | NVIDIA RTX A2000 | 2531 103C 151D | | NVIDIA RTX A2000 | 2531 10DE 151D | | NVIDIA RTX A2000 | 2531 17AA 151D | +| NVIDIA GeForce RTX 3060 | 2544 | | NVIDIA GeForce RTX 3060 Laptop GPU | 2560 | | NVIDIA GeForce RTX 3050 Ti Laptop GPU | 2563 | | NVIDIA RTX A2000 12GB | 2571 1028 1611 | diff --git a/kernel-open/Kbuild b/kernel-open/Kbuild index 320e8ea8f..87e3ed4c6 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 -MD $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-error -Wno-format-extra-args EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DNVRM -EXTRA_CFLAGS += -DNV_VERSION_STRING=\"520.61.05\" +EXTRA_CFLAGS += -DNV_VERSION_STRING=\"520.61.07\" EXTRA_CFLAGS += -Wno-unused-function diff --git a/src/common/inc/nvBldVer.h b/src/common/inc/nvBldVer.h index 374e29e89..1d6ddcd0a 100644 --- a/src/common/inc/nvBldVer.h +++ b/src/common/inc/nvBldVer.h @@ -43,18 +43,18 @@ #endif #if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS) -#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r520/r521_82-338" -#define NV_BUILD_CHANGELIST_NUM (31864828) +#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r520/r521_82-340" +#define NV_BUILD_CHANGELIST_NUM (31943649) #define NV_BUILD_TYPE "Official" -#define NV_BUILD_NAME "rel/gpu_drv/r520/r521_82-338" -#define NV_LAST_OFFICIAL_CHANGELIST_NUM (31864828) +#define NV_BUILD_NAME "rel/gpu_drv/r520/r521_82-340" +#define NV_LAST_OFFICIAL_CHANGELIST_NUM (31943649) #else /* Windows builds */ -#define NV_BUILD_BRANCH_VERSION "r521_82-4" -#define NV_BUILD_CHANGELIST_NUM (31858738) +#define NV_BUILD_BRANCH_VERSION "r521_82-7" +#define NV_BUILD_CHANGELIST_NUM (31933671) #define NV_BUILD_TYPE "Official" -#define NV_BUILD_NAME "522.06" -#define NV_LAST_OFFICIAL_CHANGELIST_NUM (31858738) +#define NV_BUILD_NAME "522.33" +#define NV_LAST_OFFICIAL_CHANGELIST_NUM (31933671) #define NV_BUILD_BRANCH_BASE_VERSION R520 #endif // End buildmeister python edited section diff --git a/src/common/inc/nvUnixVersion.h b/src/common/inc/nvUnixVersion.h index 05c53fa3b..00989010d 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 "520.61.05" +#define NV_VERSION_STRING "520.61.07" #else diff --git a/src/nvidia/generated/g_nv_name_released.h b/src/nvidia/generated/g_nv_name_released.h index 048f225b6..29cd17bfe 100644 --- a/src/nvidia/generated/g_nv_name_released.h +++ b/src/nvidia/generated/g_nv_name_released.h @@ -849,6 +849,7 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x2203, 0x0000, 0x0000, "NVIDIA GeForce RTX 3090 Ti" }, { 0x2204, 0x0000, 0x0000, "NVIDIA GeForce RTX 3090" }, { 0x2206, 0x0000, 0x0000, "NVIDIA GeForce RTX 3080" }, + { 0x2207, 0x0000, 0x0000, "NVIDIA GeForce RTX 3070 Ti" }, { 0x2208, 0x0000, 0x0000, "NVIDIA GeForce RTX 3080 Ti" }, { 0x220A, 0x0000, 0x0000, "NVIDIA GeForce RTX 3080" }, { 0x220D, 0x0000, 0x0000, "NVIDIA CMP 90HX" }, @@ -873,6 +874,7 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x2236, 0x1482, 0x10de, "NVIDIA A10" }, { 0x2237, 0x152f, 0x10de, "NVIDIA A10G" }, { 0x2238, 0x1677, 0x10de, "NVIDIA A10M" }, + { 0x2331, 0x1626, 0x10de, "NVIDIA H100 PCIe" }, { 0x2414, 0x0000, 0x0000, "NVIDIA GeForce RTX 3060 Ti" }, { 0x2420, 0x0000, 0x0000, "NVIDIA GeForce RTX 3080 Ti Laptop GPU" }, { 0x2438, 0x0000, 0x0000, "NVIDIA RTX A5500 Laptop GPU" }, @@ -900,6 +902,7 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x24B9, 0x0000, 0x0000, "NVIDIA RTX A3000 12GB Laptop GPU" }, { 0x24BA, 0x0000, 0x0000, "NVIDIA RTX A4500 Laptop GPU" }, { 0x24BB, 0x0000, 0x0000, "NVIDIA RTX A3000 12GB Laptop GPU" }, + { 0x24C9, 0x0000, 0x0000, "NVIDIA GeForce RTX 3060 Ti" }, { 0x24DC, 0x0000, 0x0000, "NVIDIA GeForce RTX 3080 Laptop GPU" }, { 0x24DD, 0x0000, 0x0000, "NVIDIA GeForce RTX 3070 Laptop GPU" }, { 0x24E0, 0x0000, 0x0000, "NVIDIA GeForce RTX 3070 Ti Laptop GPU" }, @@ -915,6 +918,7 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x2531, 0x151d, 0x103c, "NVIDIA RTX A2000" }, { 0x2531, 0x151d, 0x10de, "NVIDIA RTX A2000" }, { 0x2531, 0x151d, 0x17aa, "NVIDIA RTX A2000" }, + { 0x2544, 0x0000, 0x0000, "NVIDIA GeForce RTX 3060" }, { 0x2560, 0x0000, 0x0000, "NVIDIA GeForce RTX 3060 Laptop GPU" }, { 0x2563, 0x0000, 0x0000, "NVIDIA GeForce RTX 3050 Ti Laptop GPU" }, { 0x2571, 0x1611, 0x1028, "NVIDIA RTX A2000 12GB" }, @@ -944,6 +948,7 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x25E5, 0x0000, 0x0000, "NVIDIA GeForce RTX 3050 Laptop GPU" }, { 0x25F9, 0x0000, 0x0000, "NVIDIA RTX A1000 Embedded GPU" }, { 0x25FA, 0x0000, 0x0000, "NVIDIA RTX A2000 Embedded GPU" }, + { 0x2684, 0x0000, 0x0000, "NVIDIA GeForce RTX 4090" }, { 0x13BD, 0x11cc, 0x10DE, "GRID M10-0B" }, { 0x13BD, 0x11cd, 0x10DE, "GRID M10-1B" }, { 0x13BD, 0x11ce, 0x10DE, "GRID M10-0Q" }, diff --git a/src/nvidia/src/kernel/gpu/fsp/arch/hopper/kern_fsp_gh100.c b/src/nvidia/src/kernel/gpu/fsp/arch/hopper/kern_fsp_gh100.c index f3e542916..bd8bbec19 100644 --- a/src/nvidia/src/kernel/gpu/fsp/arch/hopper/kern_fsp_gh100.c +++ b/src/nvidia/src/kernel/gpu/fsp/arch/hopper/kern_fsp_gh100.c @@ -874,7 +874,7 @@ _kfspCheckGspBootStatus // In Inst_in_sys mode GSP-FMC will write status to NV_PGSP_MAILBOX(0). if (kfspCheckGspSecureScratch_HAL(pGpu, pKernelFsp)) { - gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, 0); + gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, GPU_TIMEOUT_FLAGS_OSTIMER | GPU_TIMEOUT_FLAGS_BYPASS_THREAD_STATE); while(FLD_TEST_DRF_NUM(_PGSP, _MAILBOX, _DATA, GSP_INST_IN_SYS_COMPLETION_STATUS_IN_PROGRESS , GPU_REG_RD32(pGpu, NV_PGSP_MAILBOX(0)))) { status = gpuCheckTimeout(pGpu, &timeout); @@ -896,7 +896,7 @@ _kfspCheckGspBootStatus } // Ensure priv lockdown is released before polling interrupts - gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, 0); + gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, GPU_TIMEOUT_FLAGS_OSTIMER | GPU_TIMEOUT_FLAGS_BYPASS_THREAD_STATE); do { if (flcnIsRiscvLockdownReleased_HAL(pGpu, pFlcn)) diff --git a/src/nvidia/src/kernel/gpu/fsp/kern_fsp.c b/src/nvidia/src/kernel/gpu/fsp/kern_fsp.c index 1d37587dd..62c2d6809 100644 --- a/src/nvidia/src/kernel/gpu/fsp/kern_fsp.c +++ b/src/nvidia/src/kernel/gpu/fsp/kern_fsp.c @@ -249,7 +249,7 @@ kfspPollForQueueEmpty_IMPL { RMTIMEOUT timeout; - gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, 0); + gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, GPU_TIMEOUT_FLAGS_OSTIMER | GPU_TIMEOUT_FLAGS_BYPASS_THREAD_STATE); while (!kfspIsQueueEmpty(pGpu, pKernelFsp)) { @@ -315,7 +315,7 @@ kfspPollForResponse_IMPL NV_STATUS status = NV_OK; // Poll for message queue to wait for FSP's reply - gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, 0); + gpuSetTimeout(pGpu, GPU_TIMEOUT_DEFAULT, &timeout, GPU_TIMEOUT_FLAGS_OSTIMER | GPU_TIMEOUT_FLAGS_BYPASS_THREAD_STATE); while (kfspIsMsgQueueEmpty(pGpu, pKernelFsp)) { if (gpuCheckTimeout(pGpu, &timeout) == NV_ERR_TIMEOUT) diff --git a/version.mk b/version.mk index cad40b17d..c0eaaa5ab 100644 --- a/version.mk +++ b/version.mk @@ -1,4 +1,4 @@ -NVIDIA_VERSION = 520.61.05 +NVIDIA_VERSION = 520.61.07 # This file. VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))