Skip to content

Commit 91676d6

Browse files
committed
550.40.07
1 parent bb2dac1 commit 91676d6

File tree

1,411 files changed

+263335
-147927
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,411 files changed

+263335
-147927
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## Release 550 Entries
4+
5+
### [550.40.07] 2024-01-24
6+
7+
#### Fixed
8+
9+
- Set INSTALL_MOD_DIR only if it's not defined, [#570](https://github.com/NVIDIA/open-gpu-kernel-modules/pull/570) by @keelung-yang
10+
311
## Release 545 Entries
412

513
### [545.29.06] 2023-11-22

README.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# NVIDIA Linux Open GPU Kernel Module Source
22

33
This is the source release of the NVIDIA Linux open GPU kernel modules,
4-
version 545.29.06.
4+
version 550.40.07.
55

66

77
## How to Build
@@ -17,7 +17,7 @@ as root:
1717

1818
Note that the kernel modules built here must be used with GSP
1919
firmware and user-space NVIDIA GPU driver components from a corresponding
20-
545.29.06 driver release. This can be achieved by installing
20+
550.40.07 driver release. This can be achieved by installing
2121
the NVIDIA GPU driver from the .run file using the `--no-kernel-modules`
2222
option. E.g.,
2323

@@ -188,7 +188,7 @@ encountered specific to them.
188188
For details on feature support and limitations, see the NVIDIA GPU driver
189189
end user README here:
190190

191-
https://us.download.nvidia.com/XFree86/Linux-x86_64/545.29.06/README/kernel_open.html
191+
https://us.download.nvidia.com/XFree86/Linux-x86_64/550.40.07/README/kernel_open.html
192192

193193
In the below table, if three IDs are listed, the first is the PCI Device
194194
ID, the second is the PCI Subsystem Vendor ID, and the third is the PCI
@@ -683,6 +683,7 @@ Subsystem Device ID.
683683
| NVIDIA A800 40GB Active | 20F6 103C 180A |
684684
| NVIDIA A800 40GB Active | 20F6 10DE 180A |
685685
| NVIDIA A800 40GB Active | 20F6 17AA 180A |
686+
| NVIDIA AX800 | 20FD 10DE 17F8 |
686687
| NVIDIA GeForce GTX 1660 Ti | 2182 |
687688
| NVIDIA GeForce GTX 1660 | 2184 |
688689
| NVIDIA GeForce GTX 1650 SUPER | 2187 |
@@ -836,6 +837,7 @@ Subsystem Device ID.
836837
| NVIDIA RTX A2000 Embedded GPU | 25FA |
837838
| NVIDIA RTX A500 Embedded GPU | 25FB |
838839
| NVIDIA GeForce RTX 4090 | 2684 |
840+
| NVIDIA GeForce RTX 4090 D | 2685 |
839841
| NVIDIA RTX 6000 Ada Generation | 26B1 1028 16A1 |
840842
| NVIDIA RTX 6000 Ada Generation | 26B1 103C 16A1 |
841843
| NVIDIA RTX 6000 Ada Generation | 26B1 10DE 16A1 |
@@ -844,16 +846,22 @@ Subsystem Device ID.
844846
| NVIDIA RTX 5000 Ada Generation | 26B2 103C 17FA |
845847
| NVIDIA RTX 5000 Ada Generation | 26B2 10DE 17FA |
846848
| NVIDIA RTX 5000 Ada Generation | 26B2 17AA 17FA |
849+
| NVIDIA RTX 5880 Ada Generation | 26B3 103C 1934 |
850+
| NVIDIA RTX 5880 Ada Generation | 26B3 10DE 1934 |
851+
| NVIDIA RTX 5880 Ada Generation | 26B3 17AA 1934 |
847852
| NVIDIA L40 | 26B5 10DE 169D |
848853
| NVIDIA L40 | 26B5 10DE 17DA |
849854
| NVIDIA L40S | 26B9 10DE 1851 |
850855
| NVIDIA L40S | 26B9 10DE 18CF |
856+
| NVIDIA L20 | 26BA 10DE 1957 |
851857
| NVIDIA GeForce RTX 4080 | 2704 |
858+
| NVIDIA GeForce RTX 4070 Ti SUPER | 2705 |
852859
| NVIDIA GeForce RTX 4090 Laptop GPU | 2717 |
853860
| NVIDIA RTX 5000 Ada Generation Laptop GPU | 2730 |
854861
| NVIDIA GeForce RTX 4090 Laptop GPU | 2757 |
855862
| NVIDIA RTX 5000 Ada Generation Embedded GPU | 2770 |
856863
| NVIDIA GeForce RTX 4070 Ti | 2782 |
864+
| NVIDIA GeForce RTX 4070 SUPER | 2783 |
857865
| NVIDIA GeForce RTX 4070 | 2786 |
858866
| NVIDIA GeForce RTX 4080 Laptop GPU | 27A0 |
859867
| NVIDIA RTX 4000 SFF Ada Generation | 27B0 1028 16FA |
@@ -868,6 +876,7 @@ Subsystem Device ID.
868876
| NVIDIA RTX 4000 Ada Generation | 27B2 103C 181B |
869877
| NVIDIA RTX 4000 Ada Generation | 27B2 10DE 181B |
870878
| NVIDIA RTX 4000 Ada Generation | 27B2 17AA 181B |
879+
| NVIDIA L2 | 27B6 10DE 1933 |
871880
| NVIDIA L4 | 27B8 10DE 16CA |
872881
| NVIDIA L4 | 27B8 10DE 16EE |
873882
| NVIDIA RTX 4000 Ada Generation Laptop GPU | 27BA |

kernel-open/Kbuild

Lines changed: 14 additions & 102 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,9 @@ $(foreach _module, $(NV_KERNEL_MODULES), \
7070

7171
EXTRA_CFLAGS += -I$(src)/common/inc
7272
EXTRA_CFLAGS += -I$(src)
73-
EXTRA_CFLAGS += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-error -Wno-format-extra-args
73+
EXTRA_CFLAGS += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-format-extra-args
7474
EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DNVRM
75-
EXTRA_CFLAGS += -DNV_VERSION_STRING=\"545.29.06\"
75+
EXTRA_CFLAGS += -DNV_VERSION_STRING=\"550.40.07\"
7676

7777
ifneq ($(SYSSRCHOST1X),)
7878
EXTRA_CFLAGS += -I$(SYSSRCHOST1X)
@@ -134,6 +134,16 @@ ifneq ($(wildcard /proc/sgi_uv),)
134134
EXTRA_CFLAGS += -DNV_CONFIG_X86_UV
135135
endif
136136

137+
ifdef VGX_FORCE_VFIO_PCI_CORE
138+
EXTRA_CFLAGS += -DNV_VGPU_FORCE_VFIO_PCI_CORE
139+
endif
140+
141+
WARNINGS_AS_ERRORS ?=
142+
ifeq ($(WARNINGS_AS_ERRORS),1)
143+
ccflags-y += -Werror
144+
else
145+
ccflags-y += -Wno-error
146+
endif
137147

138148
#
139149
# The conftest.sh script tests various aspects of the target kernel.
@@ -160,6 +170,7 @@ NV_CONFTEST_CMD := /bin/sh $(NV_CONFTEST_SCRIPT) \
160170
NV_CFLAGS_FROM_CONFTEST := $(shell $(NV_CONFTEST_CMD) build_cflags)
161171

162172
NV_CONFTEST_CFLAGS = $(NV_CFLAGS_FROM_CONFTEST) $(EXTRA_CFLAGS) -fno-pie
173+
NV_CONFTEST_CFLAGS += -Wno-error
163174

164175
NV_CONFTEST_COMPILE_TEST_HEADERS := $(obj)/conftest/macros.h
165176
NV_CONFTEST_COMPILE_TEST_HEADERS += $(obj)/conftest/functions.h
@@ -219,106 +230,7 @@ $(obj)/conftest/patches.h: $(NV_CONFTEST_SCRIPT)
219230
@mkdir -p $(obj)/conftest
220231
@$(NV_CONFTEST_CMD) patch_check > $@
221232

222-
223-
# Each of these headers is checked for presence with a test #include; a
224-
# corresponding #define will be generated in conftest/headers.h.
225-
NV_HEADER_PRESENCE_TESTS = \
226-
asm/system.h \
227-
drm/drmP.h \
228-
drm/drm_aperture.h \
229-
drm/drm_auth.h \
230-
drm/drm_gem.h \
231-
drm/drm_crtc.h \
232-
drm/drm_color_mgmt.h \
233-
drm/drm_atomic.h \
234-
drm/drm_atomic_helper.h \
235-
drm/drm_atomic_state_helper.h \
236-
drm/drm_encoder.h \
237-
drm/drm_atomic_uapi.h \
238-
drm/drm_drv.h \
239-
drm/drm_fbdev_generic.h \
240-
drm/drm_framebuffer.h \
241-
drm/drm_connector.h \
242-
drm/drm_probe_helper.h \
243-
drm/drm_blend.h \
244-
drm/drm_fourcc.h \
245-
drm/drm_prime.h \
246-
drm/drm_plane.h \
247-
drm/drm_vblank.h \
248-
drm/drm_file.h \
249-
drm/drm_ioctl.h \
250-
drm/drm_device.h \
251-
drm/drm_mode_config.h \
252-
drm/drm_modeset_lock.h \
253-
dt-bindings/interconnect/tegra_icc_id.h \
254-
generated/autoconf.h \
255-
generated/compile.h \
256-
generated/utsrelease.h \
257-
linux/efi.h \
258-
linux/kconfig.h \
259-
linux/platform/tegra/mc_utils.h \
260-
linux/printk.h \
261-
linux/ratelimit.h \
262-
linux/prio_tree.h \
263-
linux/log2.h \
264-
linux/of.h \
265-
linux/bug.h \
266-
linux/sched.h \
267-
linux/sched/mm.h \
268-
linux/sched/signal.h \
269-
linux/sched/task.h \
270-
linux/sched/task_stack.h \
271-
xen/ioemu.h \
272-
linux/fence.h \
273-
linux/dma-fence.h \
274-
linux/dma-resv.h \
275-
soc/tegra/chip-id.h \
276-
soc/tegra/fuse.h \
277-
soc/tegra/tegra_bpmp.h \
278-
video/nv_internal.h \
279-
linux/platform/tegra/dce/dce-client-ipc.h \
280-
linux/nvhost.h \
281-
linux/nvhost_t194.h \
282-
linux/host1x-next.h \
283-
asm/book3s/64/hash-64k.h \
284-
asm/set_memory.h \
285-
asm/prom.h \
286-
asm/powernv.h \
287-
linux/atomic.h \
288-
asm/barrier.h \
289-
asm/opal-api.h \
290-
sound/hdaudio.h \
291-
asm/pgtable_types.h \
292-
asm/page.h \
293-
linux/stringhash.h \
294-
linux/dma-map-ops.h \
295-
rdma/peer_mem.h \
296-
sound/hda_codec.h \
297-
linux/dma-buf.h \
298-
linux/time.h \
299-
linux/platform_device.h \
300-
linux/mutex.h \
301-
linux/reset.h \
302-
linux/of_platform.h \
303-
linux/of_device.h \
304-
linux/of_gpio.h \
305-
linux/gpio.h \
306-
linux/gpio/consumer.h \
307-
linux/interconnect.h \
308-
linux/pm_runtime.h \
309-
linux/clk.h \
310-
linux/clk-provider.h \
311-
linux/ioasid.h \
312-
linux/stdarg.h \
313-
linux/iosys-map.h \
314-
asm/coco.h \
315-
linux/vfio_pci_core.h \
316-
linux/mdev.h \
317-
soc/tegra/bpmp-abi.h \
318-
soc/tegra/bpmp.h \
319-
linux/sync_file.h \
320-
linux/cc_platform.h \
321-
asm/cpufeature.h
233+
include $(src)/header-presence-tests.mk
322234

323235
# Filename to store the define for the header in $(1); this is only consumed by
324236
# the rule below that concatenates all of these together.

kernel-open/Makefile

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,12 +57,15 @@ else
5757
-e 's/armv[0-7]\w\+/arm/' \
5858
-e 's/aarch64/arm64/' \
5959
-e 's/ppc64le/powerpc/' \
60+
-e 's/riscv64/riscv/' \
6061
)
6162
endif
6263

6364
NV_KERNEL_MODULES ?= $(wildcard nvidia nvidia-uvm nvidia-vgpu-vfio nvidia-modeset nvidia-drm nvidia-peermem)
6465
NV_KERNEL_MODULES := $(filter-out $(NV_EXCLUDE_KERNEL_MODULES), \
6566
$(NV_KERNEL_MODULES))
67+
INSTALL_MOD_DIR ?= kernel/drivers/video
68+
6669
NV_VERBOSE ?=
6770
SPECTRE_V2_RETPOLINE ?= 0
6871

@@ -74,7 +77,7 @@ else
7477
KBUILD_PARAMS += NV_KERNEL_SOURCES=$(KERNEL_SOURCES)
7578
KBUILD_PARAMS += NV_KERNEL_OUTPUT=$(KERNEL_OUTPUT)
7679
KBUILD_PARAMS += NV_KERNEL_MODULES="$(NV_KERNEL_MODULES)"
77-
KBUILD_PARAMS += INSTALL_MOD_DIR=kernel/drivers/video
80+
KBUILD_PARAMS += INSTALL_MOD_DIR="$(INSTALL_MOD_DIR)"
7881
KBUILD_PARAMS += NV_SPECTRE_V2=$(SPECTRE_V2_RETPOLINE)
7982

8083
.PHONY: modules module clean clean_conftest modules_install

kernel-open/common/inc/nv-ioctl-numbers.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: Copyright (c) 2020-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
* SPDX-FileCopyrightText: Copyright (c) 2020-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
33
* SPDX-License-Identifier: MIT
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a
@@ -39,5 +39,6 @@
3939
#define NV_ESC_QUERY_DEVICE_INTR (NV_IOCTL_BASE + 13)
4040
#define NV_ESC_SYS_PARAMS (NV_IOCTL_BASE + 14)
4141
#define NV_ESC_EXPORT_TO_DMABUF_FD (NV_IOCTL_BASE + 17)
42+
#define NV_ESC_WAIT_OPEN_COMPLETE (NV_IOCTL_BASE + 18)
4243

4344
#endif

kernel-open/common/inc/nv-ioctl.h

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: Copyright (c) 2020-2022 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
2+
* SPDX-FileCopyrightText: Copyright (c) 2020-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
33
* SPDX-License-Identifier: MIT
44
*
55
* Permission is hereby granted, free of charge, to any person obtaining a
@@ -142,4 +142,10 @@ typedef struct nv_ioctl_export_to_dma_buf_fd
142142
NvU32 status;
143143
} nv_ioctl_export_to_dma_buf_fd_t;
144144

145+
typedef struct nv_ioctl_wait_open_complete
146+
{
147+
int rc;
148+
NvU32 adapterStatus;
149+
} nv_ioctl_wait_open_complete_t;
150+
145151
#endif

0 commit comments

Comments
 (0)