From 65d4de0bdb028ad23b988be4a7ae60cd6bf63f6fd7c3f0013a168eab02f29782 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 17:10:11 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main nvidia-open-driver-G06-signed revision 8f4ff98d1a3f5147a2e152b16a6d3c28 --- .gitattributes | 23 + _constraints | 13 + group-source-files.pl | 101 ++++ json-to-pci-id-list.py | 53 ++ kmp-filelist | 18 + kmp-post.sh | 29 ++ kmp-postun.sh | 4 + modprobe.nvidia.install | 42 ++ my-find-supplements | 45 ++ nvidia-open-driver-G06-signed.changes | 606 +++++++++++++++++++++++ nvidia-open-driver-G06-signed.spec | 185 +++++++ open-gpu-kernel-modules-550.54.14.tar.gz | 3 + pci_ids-550.54.14 | 31 ++ pci_ids-unsupported | 200 ++++++++ pci_ids-unsupported-550.54.14 | 200 ++++++++ persistent-nvidia-id-string.patch | 15 + pesign-copy-sources | 3 + pesign-spec-macros | 1 + preamble | 6 + 19 files changed, 1578 insertions(+) create mode 100644 .gitattributes create mode 100644 _constraints create mode 100644 group-source-files.pl create mode 100644 json-to-pci-id-list.py create mode 100644 kmp-filelist create mode 100644 kmp-post.sh create mode 100644 kmp-postun.sh create mode 100644 modprobe.nvidia.install create mode 100644 my-find-supplements create mode 100644 nvidia-open-driver-G06-signed.changes create mode 100644 nvidia-open-driver-G06-signed.spec create mode 100644 open-gpu-kernel-modules-550.54.14.tar.gz create mode 100644 pci_ids-550.54.14 create mode 100644 pci_ids-unsupported create mode 100644 pci_ids-unsupported-550.54.14 create mode 100644 persistent-nvidia-id-string.patch create mode 100644 pesign-copy-sources create mode 100644 pesign-spec-macros create mode 100644 preamble diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..4fb0aa9 --- /dev/null +++ b/_constraints @@ -0,0 +1,13 @@ + + + + aarch64 + x86_64 + + + + 8 + + + + diff --git a/group-source-files.pl b/group-source-files.pl new file mode 100644 index 0000000..17305af --- /dev/null +++ b/group-source-files.pl @@ -0,0 +1,101 @@ +#!/usr/bin/perl + +use File::Spec; +use Getopt::Long; +use strict; + +&main(); +sub main +{ + my($dev_output, $ndev_output, $loc) = ("-", "-", "."); + &Getopt::Long::Configure(qw(bundling)); + &GetOptions( + "D=s" => \$dev_output, + "N=s" => \$ndev_output, + "L=s" => \$loc, + ); + + my($dev, $ndev) = &scan($loc); + &output($dev, $ndev, $dev_output, $ndev_output); +} + +sub scan +{ + # Normalize file path, mainly to strip away the ending forward slash, + # or any double forward slashes. + my $loc = File::Spec->canonpath(shift @_); + # We cannot use an absolute path (e.g. /usr/src/linux-5.14.21-150500.41) + # during find because it's under build root, but rpm wants one later. + my $abs_loc = rpm_path($loc); + my(@dev, @ndev); + + foreach $_ (`find "$loc"`) + { + chomp $_; + if (-d $_ && !-l $_) { + # Generate directory list later. + next; + } + my $is_devel = + m{^\Q$loc\E.*/Kconfig} || + m{^\Q$loc\E.*/Kbuild} || + m{^\Q$loc\E.*/Makefile} || + m{^\Q$loc\E/arch/[^/]+/boot/dts/include/dt-bindings\b} || + m{^\Q$loc\E/arch/[^/]+/include\b} || + m{^\Q$loc\E/arch/.*/module\.lds\b} || + m{^\Q$loc\E/arch/arm/[^/]+/include/mach\b} || + m{^\Q$loc\E/arch/arm/[^/]+/include/plat\b} || + m{^\Q$loc\E/arch/[^/]+/scripts\b} || + m{^\Q$loc\E/arch/[^/]+/tools\b} || + m{^\Q$loc\E/include/[^/]+\b} || + m{^\Q$loc\E/scripts\b}; + my $abs_path = rpm_path($_); + $is_devel ? push(@dev, $abs_path) : push(@ndev, $abs_path); + } + + push(@dev, &calc_dirs($abs_loc, \@dev)); + push(@ndev, &calc_dirs($abs_loc, \@ndev)); + return (\@dev, \@ndev); +} + +sub calc_dirs +{ + my($base, $files) = @_; + my %dirs; + + foreach my $file (@$files) { + my ($volume,$path,$basename) = File::Spec->splitpath($file); + my @dirs = File::Spec->splitdir($path); + do { + # Always create $path from catdir() to avoid ending forward slash + $path = File::Spec->catdir(@dirs); + $dirs{$path} = 1; + pop @dirs; + } while ($path ne $base); + # This loop also makes sure that $base itself is included. + } + + return map { "\%dir $_" } keys %dirs; +} + +sub output +{ + my($dev, $ndev, $dev_out, $ndev_out) = @_; + local *FH; + + open(FH, "> $dev_out") || warn "Error writing to $dev_out: $!"; + print FH join("\n", @$dev), "\n"; + close FH; + + open(FH, "> $ndev_out") || warn "Error writing to $ndev_out: $!"; + print FH join("\n", @$ndev), "\n"; + close FH; +} + +sub rpm_path +{ + my $path = shift @_; + # Always prepend forward slash and let canonpath take care of + # duplicate forward slashes. + return File::Spec->canonpath("/$path"); +} diff --git a/json-to-pci-id-list.py b/json-to-pci-id-list.py new file mode 100644 index 0000000..f9ae15b --- /dev/null +++ b/json-to-pci-id-list.py @@ -0,0 +1,53 @@ +#!/usr/bin/env python3 + # Copyright (c) 2022 Tamara Schmitz . + # + # This program is free software: you can redistribute it and/or modify + # it under the terms of the GNU General Public License as published by + # the Free Software Foundation, version 3. + # + # This program is distributed in the hope that it will be useful, but + # WITHOUT ANY WARRANTY; without even the implied warranty of + # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + # General Public License for more details. + # + # You should have received a copy of the GNU General Public License + # along with this program. If not, see . + # + +import argparse +import json + +# arg parsing +parser = argparse.ArgumentParser(description="Parse an NVIDIA supported devices\ + JSON and convert it to a pci id list.") +parser.add_argument("INPUT_JSON", + help="The JSON file to be parsed", + type=argparse.FileType('r') + ) +parser.add_argument("OUTPUT_PCI_ID_LIST", + help="The output file to save to", + type=argparse.FileType('w') + ) +parser.add_argument("--skiplegacy", help="Skip GPUs that are in a legacy branch", + action="store_true") +parser.add_argument("--kernelopen", help="Only select GPUs that are supported by\ + the Open GPU kernel modules", + action="store_true") +args = parser.parse_args() + +# json parsing +json = json.load(args.INPUT_JSON) +pci_id_list = {} +for chip in json["chips"]: + if args.skiplegacy and "legacybranch" in chip: + continue + if args.kernelopen and \ + ("features" not in chip or "kernelopen" not in chip["features"]): + continue + if "devid" in chip and "name" in chip: + pci_id_list[chip["devid"]] = chip["name"] + +# write to file +for devid, name in sorted(pci_id_list.items(), key=lambda i: i[0]): + # there are no duplicates since a dictionary's key is unique + args.OUTPUT_PCI_ID_LIST.write("%s %s\n" % (devid, name)) diff --git a/kmp-filelist b/kmp-filelist new file mode 100644 index 0000000..c0df5b2 --- /dev/null +++ b/kmp-filelist @@ -0,0 +1,18 @@ +%defattr (-,root,root) +%dir %{kernel_module_directory}/%2-%1 +%dir %{kernel_module_directory}/%2-%1/updates +%{kernel_module_directory}/%2-%1/updates/nvidia*.ko +%if 0%{?suse_version} >= 1550 +%dir /usr/lib/modprobe.d +%config /usr/lib/modprobe.d/59-nvidia-%1.conf +%config /usr/lib/modprobe.d/61-nvidia-%1.conf +%dir /usr/lib/dracut +%dir /usr/lib/dracut/dracut.conf.d +/usr/lib/dracut/dracut.conf.d/60-nvidia-%1.conf +%else +%dir %{_sysconfdir}/modprobe.d +%config %{_sysconfdir}/modprobe.d/59-nvidia-%1.conf +%config %{_sysconfdir}/modprobe.d/61-nvidia-%1.conf +%dir /etc/dracut.conf.d +/etc/dracut.conf.d/60-nvidia-%1.conf +%endif diff --git a/kmp-post.sh b/kmp-post.sh new file mode 100644 index 0000000..e5a48ac --- /dev/null +++ b/kmp-post.sh @@ -0,0 +1,29 @@ +flavor=%1 + +# Create symlinks for udev so these devices will get user ACLs by logind later (bnc#1000625) +mkdir -p /run/udev/static_node-tags/uaccess +mkdir -p /usr/lib/tmpfiles.d +ln -snf /dev/nvidiactl /run/udev/static_node-tags/uaccess/nvidiactl +ln -snf /dev/nvidia-uvm /run/udev/static_node-tags/uaccess/nvidia-uvm +ln -snf /dev/nvidia-uvm-tools /run/udev/static_node-tags/uaccess/nvidia-uvm-tools +ln -snf /dev/nvidia-modeset /run/udev/static_node-tags/uaccess/nvidia-modeset +cat > /usr/lib/tmpfiles.d/nvidia-logind-acl-trick-G06.conf << EOF +L /run/udev/static_node-tags/uaccess/nvidiactl - - - - /dev/nvidiactl +L /run/udev/static_node-tags/uaccess/nvidia-uvm - - - - /dev/nvidia-uvm +L /run/udev/static_node-tags/uaccess/nvidia-uvm-tools - - - - /dev/nvidia-uvm-tools +L /run/udev/static_node-tags/uaccess/nvidia-modeset - - - - /dev/nvidia-modeset +EOF +devid=-1 +for dev in $(ls -d /sys/bus/pci/devices/*); do + vendorid=$(cat $dev/vendor) + if [ "$vendorid" == "0x10de" ]; then + class=$(cat $dev/class) + classid=${class%%00} + if [ "$classid" == "0x0300" -o "$classid" == "0x0302" ]; then + devid=$((devid+1)) + ln -snf /dev/nvidia${devid} /run/udev/static_node-tags/uaccess/nvidia${devid} + echo "L /run/udev/static_node-tags/uaccess/nvidia${devid} - - - - /dev/nvidia${devid}" >> /usr/lib/tmpfiles.d/nvidia-logind-acl-trick-G06.conf + fi + fi +done + diff --git a/kmp-postun.sh b/kmp-postun.sh new file mode 100644 index 0000000..5e12a52 --- /dev/null +++ b/kmp-postun.sh @@ -0,0 +1,4 @@ +if [ "$1" = 0 ] ; then + # cleanup of bnc# 1000625 + rm -f /usr/lib/tmpfiles.d/nvidia-logind-acl-trick-G06.conf +fi diff --git a/modprobe.nvidia.install b/modprobe.nvidia.install new file mode 100644 index 0000000..0b1da48 --- /dev/null +++ b/modprobe.nvidia.install @@ -0,0 +1,42 @@ +# convert to one line via " awk '{ printf "%s ", $0 }' " script.txt' + +PATH=$PATH:/bin:/usr/bin; +if /sbin/modprobe --ignore-install nvidia NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=$(getent group video | cut -d: -f3) NVreg_DeviceFileMode=0660 NVreg_PreserveVideoMemoryAllocations=1; then + if /sbin/modprobe nvidia_uvm; then + if [ ! -c /dev/nvidia-uvm ]; then + mknod -m 660 /dev/nvidia-uvm c $(cat /proc/devices | while read major device; do if [ "$device" == "nvidia-uvm" ]; then echo $major; break; fi ; done) 0; + chown :video /dev/nvidia-uvm; + fi; + if [ ! -c /dev/nvidia-uvm-tools ]; then + mknod -m 660 /dev/nvidia-uvm-tools c $(cat /proc/devices | while read major device; do if [ "$device" == "nvidia-uvm" ]; then echo $major; break; fi ; done) 1; + chown :video /dev/nvidia-uvm-tools; + fi; + fi; + if [ ! -c /dev/nvidiactl ]; then + mknod -m 660 /dev/nvidiactl c 195 255; + chown :video /dev/nvidiactl; + fi; + devid=-1; + for dev in $(ls -d /sys/bus/pci/devices/*); do + vendorid=$(cat $dev/vendor); + if [ "$vendorid" == "0x10de" ]; then + class=$(cat $dev/class); + classid=${class%%00}; + if [ "$classid" == "0x0300" -o "$classid" == "0x0302" ]; then + devid=$((devid+1)); + if [ ! -L /run/udev/static_node-tags/uaccess/nvidia${devid} ]; then + ln -snf /dev/nvidia${devid} /run/udev/static_node-tags/uaccess/nvidia${devid}; + fi; + if [ ! -c /dev/nvidia${devid} ]; then + mknod -m 660 /dev/nvidia${devid} c 195 ${devid}; + chown :video /dev/nvidia${devid}; + fi; + fi; + fi; + done; + /sbin/modprobe nvidia_drm; + if [ ! -c /dev/nvidia-modeset ]; then + mknod -m 660 /dev/nvidia-modeset c 195 254; + chown :video /dev/nvidia-modeset; + fi; +fi diff --git a/my-find-supplements b/my-find-supplements new file mode 100644 index 0000000..3854412 --- /dev/null +++ b/my-find-supplements @@ -0,0 +1,45 @@ +#!/bin/bash + +PCI_ID_FILE=$1 +shift + +tmp=$(mktemp) +trap 'rm -f "$tmp"' EXIT + +/usr/lib/rpm/find-supplements.ksyms "$@" >"$tmp" +# the system script currently only generates modalias(...) lines, but allow +# other dependencies just in case +grep -v '^modalias(' "$tmp" + +# determine the kernel flavor +krel=$(sed -rn 's/modalias\(([^:]*):.*/\1/p; T; q' "$tmp") +if test -z "$krel"; then + exit +fi + +# Tumbleweed +# pci_ids-390.144_k5.14.0_1.legacy --> pci_ids-390.144.legacy +# pci_ids-390.144_k5.14.0_1.new --> pci_ids-390.144.new +# pci_ids-390.144_k5.14.0_1 --> pci_ids-390.144 +# Leap/SLES +# pci_ids-390.144.legacy (no changes) +# pci_ids-390.144.new (no changes) +# pci_ids-390.144 (no changes) + +legacy=0 +new=0 +echo $PCI_ID_FILE | grep -q legacy && legacy=1 +echo $PCI_ID_FILE | grep -q new && new=1 + +PCI_ID_FILE=$(echo $PCI_ID_FILE | sed -e 's/_k.*//g' -e 's/.legacy//g' -e 's/.new//g') + +if [ $legacy -eq 1 ]; then + PCI_ID_FILE=$PCI_ID_FILE.legacy +elif [ $new -eq 1 ]; then + PCI_ID_FILE=$PCI_ID_FILE.new +fi + +# and create our own list of modalias supplements +for id in $(cat ${PCI_ID_FILE} | cut -d " " -f 1|sed 's/0x//g'); do + echo "modalias(${krel}:pci:v000010DEd0000${id}sv*sd*bc03sc0[02]i00*)" +done diff --git a/nvidia-open-driver-G06-signed.changes b/nvidia-open-driver-G06-signed.changes new file mode 100644 index 0000000..1955731 --- /dev/null +++ b/nvidia-open-driver-G06-signed.changes @@ -0,0 +1,606 @@ +------------------------------------------------------------------- +Wed Feb 28 17:01:24 UTC 2024 - Stefan Dirsch + +- let's provide/obsolete nvidia-open-driver-G06 instead of + nvidia-open-driver-G06-kmp since older versions still had + conflicts to nvidia-open-driver-G06-kmp ... + +------------------------------------------------------------------- +Sat Feb 24 13:06:48 UTC 2024 - Stefan Dirsch + +- Update to 550.54.14 + * Added vGPU Host and vGPU Guest support. For vGPU Host, please + refer to the README.vgpu packaged in the vGPU Host Package for + more details. +- supersedes the following patches: + * 0001-Don-t-override-INSTALL_MOD_DIR.patch + * kernel-6.7.patch + +------------------------------------------------------------------- +Fri Feb 23 10:36:04 UTC 2024 - Stefan Dirsch + +- re-enable build of -azure kernel flavor; syntax check was wrong + +------------------------------------------------------------------- +Thu Feb 22 15:48:50 UTC 2024 - Stefan Dirsch + +- remove conflicts to nvidia-open-driver-G06-kmp, since it's now + provided instead (OMG!); add obsoletes to it as well to make + sure it gets replaced (bsc#1220196) + +------------------------------------------------------------------- +Thu Feb 22 14:02:19 UTC 2024 - Dominique Leuenberger + +- Use %autosetup macro. Allows to eliminate the usage of deprecated + %patchN + +------------------------------------------------------------------- +Mon Feb 19 16:32:51 UTC 2024 - Stefan Dirsch + +- kernel-syms-azure is not available on ALP + +------------------------------------------------------------------- +Thu Feb 8 12:10:55 UTC 2024 - Stefan Dirsch + +- provide nvidia-open-driver-G06-kmp = %version (jsc#PED-7117) + * this makes it easy to replace the package from nVidia's + CUDA repository with this presigned package + +------------------------------------------------------------------- +Thu Jan 25 14:43:26 UTC 2024 - Stefan Dirsch + +- splitted up 61-nvidia-$flavor.conf to 59-nvidia-$flavor.conf + and 61-nvidia-$flavor.conf, because 'install' line cannot be + overwritten with higher config number ... + +------------------------------------------------------------------- +Thu Jan 25 14:36:05 UTC 2024 - Stefan Dirsch + +- mistakenly moved dracut config file from 60-nvidia-%1.conf to + 61-nvidia-%1.conf --> reverted! + +------------------------------------------------------------------- +Thu Jan 25 13:52:41 UTC 2024 - Stefan Dirsch + +- switched from 60-nvidia-$flavor.conf to 61-nvidia-$flavor.conf in + modprobe.d to resolve conflict with older package, which can be + installed in parallel + +------------------------------------------------------------------- +Wed Jan 24 13:39:39 UTC 2024 - Stefan Dirsch + +- kernel-6.7.patch + * fixes build against kernel 6.7 (boo#1219117) + +------------------------------------------------------------------- +Tue Jan 9 10:39:25 UTC 2024 - Stefan Dirsch + +- create /run/udev/static_node-tags/uaccess/nvidia${devid} symlinks + also during modprobing the nvidia module; this changes the issue + of not having access to /dev/nvidia${devid}, when gfxcard has + been replaced by a different gfx card after installing the driver + +------------------------------------------------------------------- +Tue Dec 5 14:31:36 UTC 2023 - Stefan Dirsch + +- fix typo in changelog: + * NVreg_OpenRMEnableSupporteGpus -> NVreg_OpenRmEnableUnsupportedGpus + (boo#1215981, comment#33) + +------------------------------------------------------------------- +Thu Nov 23 03:52:18 UTC 2023 - Stefan Dirsch + +- Update to 545.29.06 + +------------------------------------------------------------------- +Wed Nov 22 13:16:01 UTC 2023 - Stefan Dirsch + +- no longer try to overwrite NVreg_OpenRmEnableUnsupportedGpus driver + option setting; apparently it's ignored by the driver (boo#1215981, + comment#26) + +------------------------------------------------------------------- +Tue Nov 21 21:05:50 UTC 2023 - Stefan Dirsch + +- use different modprobe.d config file to resolve conflict with + older driver package (boo#1217370); overwrite + NVreg_OpenRmEnableUnsupportedGpus driver option setting (disable it), + since letting it enabled is supposed to break booting (boo#1215981, + comment#23) + +------------------------------------------------------------------- +Mon Nov 13 15:37:46 UTC 2023 - Stefan Dirsch + +- Update to 545.29.02 +- added fbdev=1 option for nvidia-drm module, which gives us a proper + framebuffer console now ... +- nosimplefb kernel option no longer needed with usage of nvidia-drm's + fbdev=1 option +- nvidia's NVreg_OpenRmEnableUnsupportedGpus=1 option no longer + needed; GeForce and Workstation GPUs now officially supported +- support added for H100/H800 GPUs (Hopper) + +------------------------------------------------------------------- +Fri Nov 3 19:53:37 UTC 2023 - Stefan Dirsch + +- cleanup; sle12 no longer supported + +------------------------------------------------------------------- +Wed Nov 1 19:36:30 UTC 2023 - Stefan Dirsch + +- Update to version 535.129.03 + +------------------------------------------------------------------- +Tue Oct 17 13:43:54 UTC 2023 - Stefan Dirsch + +- cleanup: get rid of possibiliy to hardcode pci list; it's no + longer required anyway; secureboot signing has been fixed ... +- removed pci-table.patch + +------------------------------------------------------------------- +Wed Oct 11 12:48:01 UTC 2023 - Egbert Eich + +- Add a devel package so other modules can be built against this + one. [jira#PED-4964] + +------------------------------------------------------------------- +Wed Oct 11 11:50:12 UTC 2023 - Stefan Dirsch + +- disabled build of nvidia-peermem module; it's no longer needed + and never worked anyway (it was only a stub) [boo#1211892] + +------------------------------------------------------------------- +Mon Oct 2 15:21:44 UTC 2023 - Stefan Dirsch + +- preamble: added conflict to nvidia-gfxG05-kmp to prevent users + from accidently installing conflicting proprietary kernelspace + drivers from CUDA repository + +------------------------------------------------------------------- +Fri Sep 22 09:42:10 UTC 2023 - Stefan Dirsch + +- Update to version 535.113.01 + +------------------------------------------------------------------- +Tue Sep 5 07:58:49 UTC 2023 - Stefan Dirsch + +- kmp-post.sh/kmp-postun.sh: + * add/remove nosimplefb=1 kernel option in order to fix Linux + console also on sle15-sp6/Leap 15.6 kernel, which will come + with simpledrm support + +------------------------------------------------------------------- +Mon Aug 28 13:20:15 UTC 2023 - Stefan Dirsch + +- Update to version 535.104.05 + +------------------------------------------------------------------- +Tue Jul 25 12:56:34 UTC 2023 - Stefan Dirsch + +- require one-time renamed package kernel-firmware-nvidia-gspx-G06 + from now on (boo#1212724) + +------------------------------------------------------------------- +Mon Jul 24 15:37:51 UTC 2023 - Ludwig Nussel + +- Replace transitional %usrmerged macro with regular version check (boo#1206798) + +------------------------------------------------------------------- +Wed Jul 19 13:41:49 UTC 2023 - Stefan Dirsch + +- Update to version 535.86.05 + +------------------------------------------------------------------- +Fri Jun 16 13:09:07 UTC 2023 - Stefan Dirsch + +- _constraints: 4GB wasn't enough; trying 8GB now ... + +------------------------------------------------------------------- +Fri Jun 16 12:25:33 UTC 2023 - Stefan Dirsch + +- _constraints: reserve 4GB of disk space for building in the hope + that this will be also sufficient when building for sle15-sp5 + +------------------------------------------------------------------- +Thu Jun 15 11:32:21 UTC 2023 - Stefan Dirsch + +- Update to version 535.54.03 + +------------------------------------------------------------------- +Tue May 9 19:01:34 UTC 2023 - Stefan Dirsch + +- Update to version 525.116.04 + +------------------------------------------------------------------- +Tue Apr 25 21:15:25 UTC 2023 - Stefan Dirsch + +- Update to version 525.116.03 + +------------------------------------------------------------------- +Thu Mar 30 12:16:17 UTC 2023 - Stefan Dirsch + +- Update to version 525.105.17 + +------------------------------------------------------------------- +Fri Feb 10 12:49:44 UTC 2023 - Stefan Dirsch + +- no longer use %hardcode_pci_list macro on sle15/Leap15, since the + issue with generating wrong PCI ID modaliases for Supplements + has been fixed meanwhile also in pesign-obs-integration package + for sle15/Leap15 (boo#1207520) + +------------------------------------------------------------------- +Wed Feb 8 21:50:02 UTC 2023 - Stefan Dirsch + +- Update to version 525.89.02 + +------------------------------------------------------------------- +Mon Jan 30 17:14:28 UTC 2023 - Stefan Dirsch + +- no longer use %hardcode_pci_list macro on TW, since the issue + with generating wrong PCI ID modaliases for Supplements + has been fixed now in pesign-obs-integration package for TW + (boo#1207520) + +------------------------------------------------------------------- +Sun Jan 29 16:16:33 UTC 2023 - Stefan Dirsch + +- introduce %hardcode_pci_list macro for hardcoding PCI ID + modaliases for Supplements; make it default to *temporarily* + workaround boo#1207520 + * TW: enable only officially supported headless GPUs! + * Leap/sle: enable all Turing and Ampere GPUs and set the + appropriate modprobe.d option, so we can at least begin + testing on sle15-sp5 ... +- adds pci-table.patch, generati-pci-table.sh + +------------------------------------------------------------------- +Wed Jan 25 15:00:04 UTC 2023 - Stefan Dirsch + +- added pesign-copy-sources, pesign-spec-macros, which are needed + to fix repackaging step required for securebooot signing kernel + modules (boo#1207520) +- pesign-spec-macros: used for defining RPM macros; here: + %define __kmp_supplements %_sourcedir/my-find-supplements \ + %_sourcedir/pci_ids-%{version} +- pesign-copy-sources: sources needed by the RPM macros above; + here: pci_ids-%{version}, my-find-supplements +- all above needs changes for pesign-obs-integration first + (SR#1060443) + +------------------------------------------------------------------- +Tue Jan 24 23:52:53 UTC 2023 - Stefan Dirsch + +- added conflicts to nvidia-driver-G06-kmp package (boo#1207495) + +------------------------------------------------------------------- +Thu Jan 19 19:51:20 UTC 2023 - Stefan Dirsch + +- Update to version 525.85.05 + * Fix build problems with Clang 15.0, #377 by @ptr1337 + +------------------------------------------------------------------- +Thu Jan 19 15:45:16 UTC 2023 - Stefan Dirsch + +- require "group(video)" + +------------------------------------------------------------------- +Thu Jan 19 15:20:18 UTC 2023 - Stefan Dirsch + +- set options for nvidia kernel module via modprobe install script; + no longer adjusting of nvidia's NVreg_DeviceFileGID option in + modprobe.d file needed in %post + +------------------------------------------------------------------- +Thu Jan 19 13:26:44 UTC 2023 - Stefan Dirsch + +- package the modprobe.d file as a sample in + /usr/lib/nvidia-open-driver-G06-signed; then adjust GUID of + video group for nvidia's NVreg_DeviceFileGID option and write the + result to /etc/modprobe.d, i.e. no longer touch a packaged + modprobe.d file below /usr + +------------------------------------------------------------------- +Thu Jan 19 10:56:45 UTC 2023 - Stefan Dirsch + +- set group id for nvidia's NVreg_DeviceFileGID option already + during build, since it's not allowed to edit modprobe.d files + during %post + +------------------------------------------------------------------- +Wed Jan 18 13:49:56 UTC 2023 - Stefan Dirsch + +- added pci_ids-unsupported-525.78.01/pci_ids-unsupported as sources + to specfile + +------------------------------------------------------------------- +Wed Jan 18 13:40:38 UTC 2023 - Stefan Dirsch + +- added empty %changelog section to specfile + +------------------------------------------------------------------- +Wed Jan 18 12:49:22 UTC 2023 - Stefan Dirsch + +- implements jsc#PED-2658 + +------------------------------------------------------------------- +Mon Jan 9 14:08:58 UTC 2023 - Stefan Dirsch + +- require kernel-firmware-nvidia-gsp-G06 (with suffix -G06!) + +------------------------------------------------------------------- +Mon Jan 9 12:30:50 UTC 2023 - Stefan Dirsch + +- Update to version 525.78.01 + * adds alpha support for + + NVIDIA GeForce RTX 3050 + + NVIDIA GeForce RTX 4090 + + NVIDIA RTX 6000 Ada Generation + + NVIDIA L40 + + NVIDIA GeForce RTX 4080 + + NVIDIA GeForce RTX 4070 Ti + +------------------------------------------------------------------- +Wed Jan 4 13:56:56 UTC 2023 - Stefan Dirsch + +- renamed package to nvidia-open-driver-G06-signed due to package + redesign + +------------------------------------------------------------------- +Mon Nov 28 23:08:21 UTC 2022 - Stefan Dirsch + +- Update to version 525.60.11 + +------------------------------------------------------------------- +Wed Nov 23 13:37:07 UTC 2022 - Stefan Dirsch + +- set NVreg_PreserveVideoMemoryAllocations kernel option now + needed for GNOME Wayland (gdm) since + commit 51181871e9db716546e9593216220389de0d8b03 + Author: Ray Strode + Date: Fri Mar 4 14:11:03 2022 -0500 + + data: Disable wayland on nvidia if suspend is broken + +------------------------------------------------------------------- +Mon Nov 14 10:25:51 UTC 2022 - Stefan Dirsch + +- added /etc/dracut.conf.d/60-nvidia-$flavor.conf in order to + omit nvidia modules in initrd, which apparently were added + automatically - apart from nvidia-uvm module; related to + boo#1173733 + +------------------------------------------------------------------- +Fri Nov 11 14:32:14 UTC 2022 - Stefan Dirsch + +- Update to 525.53 + * GSP firmware is now distributed as multiple firmware files: + this release has gsp_tu10x.bin and gsp_ad10x.bin replacing + gsp.bin from previous releases. + + Each file is named after a GPU architecture and supports + GPUs from one or more architectures. This allows GSP + firmware to better leverage each architecture's + capabilities. + + The .run installer will continue to install firmware to + /lib/firmware/nvidia/ and the nvidia.ko kernel + module will load the appropriate firmware for each GPU at + runtime. + * Add support for IBT (indirect branch tracking) on supported + platforms, #256 by @rnd-ash + * Return EINVAL when [failing to] allocating memory, + #280 by @YusufKhan-gamedev + * Fix various typos in nvidia/src/kernel, #16 by + @alexisgeoffrey + * Added support for rotation in X11, Quadro Sync, Stereo, + and YUV 4:2:0 on Turing. + +------------------------------------------------------------------- +Tue Oct 18 14:08:49 UTC 2022 - Stefan Dirsch + +- (build-)require perl-Bootloader due to pbl usage in %post(-un) + +------------------------------------------------------------------- +Tue Oct 18 13:58:19 UTC 2022 - Stefan Dirsch + +- kmp-post.sh/kmp-postun.sh: + * add/remove nosimplefb=1 kernel option in order to fix Linux + console on TW kernel, which comes with simpledrm support + +------------------------------------------------------------------- +Sat Oct 8 09:47:11 UTC 2022 - Stefan Dirsch + +- Update to 515.76 + * Improved compatibility with new Linux kernel releases + * Fixed possible excessive GPU power draw on an idle X11 or + Wayland desktop when driving high resolutions or refresh rates + +------------------------------------------------------------------- +Wed Aug 3 10:52:41 UTC 2022 - Stefan Dirsch + +- added pci_ids-unsupported -> pci_ids-unsupported-515.65.01 + symlink to which I can refer from blog + +------------------------------------------------------------------- +Tue Aug 2 16:04:37 UTC 2022 - Stefan Dirsch + +- Update to 515.65.01 + * Collection of minor fixes to issues, #6 by @Joshua-Ashton + * Remove unnecessary use of acpi_bus_get_device(). + +------------------------------------------------------------------- +Tue Jul 19 16:27:15 UTC 2022 - Callum Farmer + +- Force CC to gcc to avoid compiler differs warnings + +------------------------------------------------------------------- +Tue Jul 19 14:23:40 UTC 2022 - Stefan Dirsch + +- json-to-pci-id-list.py + * added new Python script by Tamara Schmitz which is being used + now to parse supported-gpus.json in order to create the PCI ID + list 'pci_ids-unsupported-' + +------------------------------------------------------------------- +Mon Jul 18 13:57:20 UTC 2022 - Stefan Dirsch + +- pci_ids-unsupported-515.57 + * currently unsupported devices (Turing and later, which needs + NVreg_OpenRmEnableUnsupportedGpus=1 kernel option; Alpha Quality!) + +------------------------------------------------------------------- +Thu Jul 14 10:54:27 UTC 2022 - Stefan Dirsch + +- define %kernel_module_directory macro on older distros in order + to fix build on Leap 15.3(GA)/sle 15 SP3(GA) + +------------------------------------------------------------------- +Thu Jun 30 21:44:04 UTC 2022 - Stefan Dirsch + +- update to 515.57 + * Backtick is deprecated, #273 by @arch-user-france1 + +------------------------------------------------------------------- +Fri Jun 17 10:19:13 UTC 2022 - Callum Farmer + +- Revert last change and use default CA [pesign-obs-integration + and kernel-source docs are incorrect] + +------------------------------------------------------------------- +Thu Jun 16 12:31:41 UTC 2022 - Callum Farmer + +- Create uefi cert package + +------------------------------------------------------------------- +Wed Jun 15 21:48:58 UTC 2022 - Callum Farmer + +- Sign the kernel modules and compress them + +------------------------------------------------------------------- +Wed Jun 15 11:15:46 UTC 2022 - Stefan Dirsch + +- don't buildrequire azure on aarch64; no such kernel flavor + available on aarch64 + +------------------------------------------------------------------- +Thu Jun 9 13:12:16 UTC 2022 - Stefan Dirsch + +- move cuda-drivers = %version provide to nvidia-computeG0X, which + then again requires nvidia-gfxG0X-kmp or nvidia-open-gfxG0X-kmp + respectively + +------------------------------------------------------------------- +Wed Jun 8 15:20:11 UTC 2022 - Stefan Dirsch + +- preamble: provide cuda-drivers = %version, so you can just + install 'cuda' meta package to install CUDA stack + (cuda --> cuda-11-7 --> cuda-runtime-11-7 --> cuda-drivers >= 515.43.04) + from https://developer.download.nvidia.com/compute/cuda/repos/opensuse15/x86_64/ + +------------------------------------------------------------------- +Tue Jun 7 09:44:30 UTC 2022 - Stefan Dirsch + +- preamble: added Conflicts to nvidia-gfxG06-kmp + +------------------------------------------------------------------- +Tue May 31 17:54:59 UTC 2022 - Stefan Dirsch + +- update to 515.48.07 + * List of compatible GPUs in README.md. + * Fix various README capitalizations, #8 by @lx-is + * Automatically tag bug report issues, #15 by @thebeanogamer + * Improve conftest.sh Script, #37 by @Nitepone + * Update HTTP link to HTTPS, #101 by @alcaparra + * moved array sanity check to before the array access, #117 by @RealAstolfo + * Fixed some typos, #122 by @FEDOyt + * Fixed capitalization, #123 by @keroeslux + * Fix typos in NVDEC Engine Descriptor, #126 from @TrickyDmitriy + * Extranous apostrohpes in a makefile script [sic], #14 by @kiroma + * HDMI no audio @ 4K above 60Hz, #75 by @adolfotregosa + * dp_configcaps.cpp:405: array index sanity check in wrong place?, #110 by @dcb314 + * NVRM kgspInitRm_IMPL: missing NVDEC0 engine, cannot initialize GSP-RM, #116 by @kfazz + * ERROR: modpost: "backlight_device_register" [...nvidia-modeset.ko] undefined, #135 by @sndirsch + * aarch64 build fails, #151 by @frezbo +- supersedes backlight-workaround.patch + +------------------------------------------------------------------- +Thu May 19 21:33:33 UTC 2022 - Callum Farmer + +- Set mno-outline-atomics to fix libgcc issues on aarch64 + +------------------------------------------------------------------- +Thu May 19 12:27:36 UTC 2022 - Stefan Dirsch + +- preamble: require kernel-firmware-nvidia-gsp package for nvidia's + versioned "gsp.bin" fimrware + +------------------------------------------------------------------- +Thu May 19 08:21:02 UTC 2022 - Stefan Dirsch + +- enable build also for aarch64 + +------------------------------------------------------------------- +Thu May 19 08:02:16 UTC 2022 - Stefan Dirsch + +- improved summary and description + +------------------------------------------------------------------- +Thu May 19 03:05:12 UTC 2022 - Stefan Dirsch + +- modprobe.nvidia.install + * install script when the "nvidia" module is being loaded; needed + for creating devices +- specfile + * filled modprobe.d config file (options and install script) + +------------------------------------------------------------------- +Thu May 19 02:15:53 UTC 2022 - Stefan Dirsch + +- kmp-post.sh/kmp-postun.sh + * additional code for %post/%postun scriptlets to create nvidia + devices +- specfile: adjust %kernel_module_package macro appropriately + +------------------------------------------------------------------- +Tue May 17 19:35:33 UTC 2022 - Stefan Dirsch + +- added kmp-filelist +- adding an empty modprobe.d config file (to be filled later) + +------------------------------------------------------------------- +Tue May 17 18:41:36 UTC 2022 - Stefan Dirsch + +- added hardware supplements + * added my-find-supplements, pci_ids-515.43.04 + * changes in specfile to generate the hardware supplements from + pci_ids-515.43.04 via my-find-supplements + +------------------------------------------------------------------- +Tue May 17 14:08:21 UTC 2022 - Takashi Iwai + +- Set SYSSRC and SYSOUT for building with proper kernel source tree + for each flavor +- Exclusive build for x86_64 +- backlight-workaround.patch: + workaround for a build failure with azure flavor +- persistent-nvidia-id-string.patch: + make persistent nvidia id string for reproducible builds + +------------------------------------------------------------------- +Fri May 13 14:47:59 UTC 2022 - Stefan Dirsch + +- switched to a known license to fix build: MIT/GPLv2 --> GPL-2.0 and MIT + +------------------------------------------------------------------- +Fri May 13 13:29:44 UTC 2022 - Patrik Jakobsson + +- 0001-Don-t-override-INSTALL_MOD_DIR.patch + * Make sure INSTALL_MOD_DIR from our spec-file is honoured +- Make the default flavor build. Not sure how to get other flavors to build. + +------------------------------------------------------------------- +Thu May 12 09:51:40 UTC 2022 - Stefan Dirsch + +- created package + * build still fails completely + * more things are missing + diff --git a/nvidia-open-driver-G06-signed.spec b/nvidia-open-driver-G06-signed.spec new file mode 100644 index 0000000..042f74f --- /dev/null +++ b/nvidia-open-driver-G06-signed.spec @@ -0,0 +1,185 @@ +# +# spec file for package nvidia-open-driver-G06-signed +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%if %{undefined kernel_module_directory} +%if 0%{?suse_version} >= 1550 +%define kernel_module_directory /usr/lib/modules +%else +%define kernel_module_directory /lib/modules +%endif +%endif + +%if 0%{?suse_version} >= 1550 || 0%{?sle_version} >= 150400 +%define compress_modules zstd +%else +%define compress_modules xz +%endif +Name: nvidia-open-driver-G06-signed +Version: 550.54.14 +Release: 0 +Summary: NVIDIA open kernel module driver for GeForce RTX 2000 series and newer +License: GPL-2.0-only AND MIT +Group: System/Kernel +URL: https://github.com/NVIDIA/open-gpu-kernel-modules/ +Source0: open-gpu-kernel-modules-%{version}.tar.gz +Source1: my-find-supplements +Source2: pci_ids-%{version} +Source3: kmp-filelist +Source4: kmp-post.sh +Source5: kmp-postun.sh +Source6: modprobe.nvidia.install +Source7: preamble +Source8: json-to-pci-id-list.py +Source9: pci_ids-unsupported-%{version} +Source10: pci_ids-unsupported +Source11: pesign-copy-sources +Source12: pesign-spec-macros +Source14: group-source-files.pl +Patch0: persistent-nvidia-id-string.patch +BuildRequires: %{kernel_module_package_buildreqs} +BuildRequires: fdupes +BuildRequires: gcc-c++ +BuildRequires: kernel-source +BuildRequires: kernel-syms +BuildRequires: perl-Bootloader +BuildRequires: pesign-obs-integration +BuildRequires: zstd +%ifnarch aarch64 +# available on SLE, but not on ALP ... +%if !0%{?is_opensuse} && 0%{?suse_version} < 1600 +BuildRequires: kernel-syms-azure +%endif +%endif +ExclusiveArch: x86_64 aarch64 + +%if 0%{!?kmp_template_name:1} +%define kmp_template_name /usr/lib/rpm/kernel-module-subpackage +%endif +%(sed -e '/^%%post\>/ r %_sourcedir/kmp-post.sh' -e '/^%%postun\>/ r %_sourcedir/kmp-postun.sh' %kmp_template_name >%_builddir/nvidia-kmp-template) +%kernel_module_package -n %{name} -t %_builddir/nvidia-kmp-template -f %_sourcedir/kmp-filelist -p %_sourcedir/preamble +%{expand:%( + for f in %{flavors_to_build}; do \ + echo "%package -n %{name}-${f}-devel"; \ + echo "Summary: Devel Package to %name"; \ + echo "%description -n %{name}-${f}-devel"; \ + echo "Provide build requiresments to build against %{name}"; \ + echo "%files -n %{name}-${f}-devel -f files-${f}"; \ + done)} + +## create hardware supplements for manual builds +%{load:%{SOURCE12}} + +# newer rpmbuilds attach the kernel version and the major part of release to %%pci_id_file of the __kmp_supplements script +# boo#1190210 +%define kbuildver %(rpm -q --queryformat '%%{VERSION}_%%{RELEASE}' kernel-syms | sed -n 's/\\(.*\\)\\.[0-9]\\{1,\\}/\\1/p') + +%description +This package provides the open-source NVIDIA kernel module driver +for GeForce RTX 2000 series and newer GPUs. + +%prep +%autosetup -p1 -n open-gpu-kernel-modules-%{version} + +set -- * +mkdir source +mv "$@" source/ +mkdir obj + +pushd %_sourcedir +chmod 755 my-find-supplements* +# symlink the %pci_id_file to the one, that rpmbuild generates, to enable my-find-supplement to succeed properly +# boo#1190210 +ln -sv pci_ids-%{version} pci_ids-%{version}_k%{kbuildver} +popd + +%build +%ifarch aarch64 +# -Wall is upstream default +export CFLAGS="-Wall -mno-outline-atomics" +%endif +# kernel was compiled using a different compiler +export CC=gcc +# no longer needed and never worked anyway (it was only a stub) [boo#1211892] +export NV_EXCLUDE_KERNEL_MODULES=nvidia-peermem +for flavor in %{flavors_to_build}; do + rm -rf obj/$flavor + cp -r source obj/$flavor + pushd obj/$flavor + if [ -d /usr/src/linux-$flavor ]; then + export SYSSRC=/usr/src/linux-$flavor + else + export SYSSRC=/usr/src/linux + fi + export SYSOUT=/usr/src/linux-obj/%_target_cpu/$flavor + make %{?_smp_mflags} %{?linux_make_arch} modules + popd +done + +%install +export BRP_PESIGN_FILES="*.ko" +export BRP_PESIGN_COMPRESS_MODULE=%{compress_modules} +export INSTALL_MOD_PATH=%{buildroot} +export INSTALL_MOD_DIR=updates +for flavor in %{flavors_to_build}; do + pushd obj/$flavor + if [ -d /usr/src/linux-$flavor ]; then + export SYSSRC=/usr/src/linux-$flavor + else + export SYSSRC=/usr/src/linux + fi + export SYSOUT=/usr/src/linux-obj/%_target_cpu/$flavor + make %{?linux_make_arch} modules_install + popd +done + +%if 0%{?suse_version} >= 1550 +MODPROBE_DIR=%{buildroot}/usr/lib/modprobe.d +%else +MODPROBE_DIR=%{buildroot}%{_sysconfdir}/modprobe.d +%endif + +mkdir -p $MODPROBE_DIR +for flavor in %flavors_to_build; do + cat > $MODPROBE_DIR/61-nvidia-$flavor.conf << EOF +blacklist nouveau +options nvidia-drm modeset=1 fbdev=1 +EOF + echo -n "install nvidia " > $MODPROBE_DIR/59-nvidia-$flavor.conf + tail -n +3 %_sourcedir/modprobe.nvidia.install | awk '{ printf "%s ", $0 }' >> $MODPROBE_DIR/59-nvidia-$flavor.conf +# otherwise nvidia-uvm is missing in initrd and won't get loaded when nvidia +# module is loaded in initrd; so better let's load all the nvidia modules +# later ... +%if 0%{?suse_version} >= 1550 + mkdir -p %{buildroot}/usr/lib/dracut/dracut.conf.d + cat > %{buildroot}/usr/lib/dracut/dracut.conf.d/60-nvidia-$flavor.conf << EOF +%else + mkdir -p %{buildroot}/etc/dracut.conf.d + cat > %{buildroot}/etc/dracut.conf.d/60-nvidia-$flavor.conf << EOF +%endif +omit_drivers+=" nvidia nvidia-drm nvidia-modeset nvidia-uvm " +EOF +done +for flavor in %{flavors_to_build}; do + mkdir -p %{buildroot}%{_prefix}/src/kernel-modules/nvidia-%{version}-${flavor} + cp -r source/kernel-open/* %{buildroot}%{_prefix}/src/kernel-modules/nvidia-%{version}-${flavor} + echo %dir %{_prefix}/src/kernel-modules > files-${flavor} + perl %{S:14} -L %{buildroot}%{_prefix}/src/kernel-modules/nvidia-%{version}-${flavor} | sed -e "s@%{buildroot}@@" >> files-${flavor} + %fdupes -s %{buildroot}%{_prefix}/src/kernel-modules/nvidia-%{version}-${flavor} +done + +%changelog diff --git a/open-gpu-kernel-modules-550.54.14.tar.gz b/open-gpu-kernel-modules-550.54.14.tar.gz new file mode 100644 index 0000000..0c3442a --- /dev/null +++ b/open-gpu-kernel-modules-550.54.14.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53c40182195d99bced4113d7e981444c57e9a929b73b6e10c493cb5a96b6bc28 +size 13720314 diff --git a/pci_ids-550.54.14 b/pci_ids-550.54.14 new file mode 100644 index 0000000..890e5c4 --- /dev/null +++ b/pci_ids-550.54.14 @@ -0,0 +1,31 @@ +0x1E37 Tesla T10 +0x1EB4 NVIDIA T4G +0x1EB8 Tesla T4 +0x1EB9 NVIDIA T4 32GB +0x20B0 NVIDIA A100-PG509-200 +0x20B1 NVIDIA A100-PCIE-40GB +0x20B2 NVIDIA A100-SXM4-80GB +0x20B3 NVIDIA PG506-242 +0x20B5 NVIDIA A100-PCIE-80GB +0x20B6 NVIDIA PG506-230 +0x20B7 NVIDIA A30 +0x20F0 NVIDIA A100-PG506-207 +0x20F1 NVIDIA A100-PCIE-40GB +0x20F2 NVIDIA A100-PG506-217 +0x20F5 NVIDIA A800-80 +0x20F6 NVIDIA A800-40 +0x2235 NVIDIA A40 +0x2236 NVIDIA A10 +0x2237 NVIDIA A10G +0x2321 NVIDIA H100 NVL +0x2322 NVIDIA H800 PCIe +0x2324 NVIDIA H800 +0x233A NVIDIA H800 NVL +0x2330 NVIDIA H100 80GB HBM3 +0x2331 NVIDIA H100 PCIe +0x2339 NVIDIA H100 +0x25B6 NVIDIA A16 +0x26B5 NVIDIA L40 +0x26B8 NVIDIA L40G +0x27B8 NVIDIA L4 + diff --git a/pci_ids-unsupported b/pci_ids-unsupported new file mode 100644 index 0000000..baf4eb9 --- /dev/null +++ b/pci_ids-unsupported @@ -0,0 +1,200 @@ +0x1E02 NVIDIA TITAN RTX +0x1E04 NVIDIA GeForce RTX 2080 Ti +0x1E07 NVIDIA GeForce RTX 2080 Ti +0x1E30 Quadro RTX 8000 +0x1E36 Quadro RTX 6000 +0x1E78 Quadro RTX 6000 +0x1E81 NVIDIA GeForce RTX 2080 SUPER +0x1E82 NVIDIA GeForce RTX 2080 +0x1E84 NVIDIA GeForce RTX 2070 SUPER +0x1E87 NVIDIA GeForce RTX 2080 +0x1E89 NVIDIA GeForce RTX 2060 +0x1E90 NVIDIA GeForce RTX 2080 with Max-Q Design +0x1E91 NVIDIA GeForce RTX 2070 Super with Max-Q Design +0x1E93 NVIDIA GeForce RTX 2080 Super with Max-Q Design +0x1EB0 Quadro RTX 5000 +0x1EB1 Quadro RTX 4000 +0x1EB5 Quadro RTX 5000 with Max-Q Design +0x1EB6 Quadro RTX 4000 with Max-Q Design +0x1EC2 NVIDIA GeForce RTX 2070 SUPER +0x1EC7 NVIDIA GeForce RTX 2070 SUPER +0x1ED0 NVIDIA GeForce RTX 2080 with Max-Q Design +0x1ED1 NVIDIA GeForce RTX 2070 Super with Max-Q Design +0x1ED3 NVIDIA GeForce RTX 2080 Super with Max-Q Design +0x1EF5 Quadro RTX 5000 +0x1F02 NVIDIA GeForce RTX 2070 +0x1F03 NVIDIA GeForce RTX 2060 +0x1F06 NVIDIA GeForce RTX 2060 SUPER +0x1F07 NVIDIA GeForce RTX 2070 +0x1F08 NVIDIA GeForce RTX 2060 +0x1F0A NVIDIA GeForce GTX 1650 +0x1F10 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F11 NVIDIA GeForce RTX 2060 +0x1F12 NVIDIA GeForce RTX 2060 with Max-Q Design +0x1F14 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F15 NVIDIA GeForce RTX 2060 +0x1F36 Quadro RTX 3000 with Max-Q Design +0x1F42 NVIDIA GeForce RTX 2060 SUPER +0x1F47 NVIDIA GeForce RTX 2060 SUPER +0x1F50 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F51 NVIDIA GeForce RTX 2060 +0x1F54 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F55 NVIDIA GeForce RTX 2060 +0x1F76 Matrox D-Series D2480 +0x1F82 NVIDIA GeForce GTX 1650 +0x1F83 NVIDIA GeForce GTX 1630 +0x1F91 NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F95 NVIDIA GeForce GTX 1650 Ti with Max-Q Design +0x1F96 NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F97 NVIDIA GeForce MX450 +0x1F98 NVIDIA GeForce MX450 +0x1F99 NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F9C NVIDIA GeForce MX450 +0x1F9D NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F9F NVIDIA GeForce MX550 +0x1FA0 NVIDIA GeForce MX550 +0x1FB0 NVIDIA T1000 +0x1FB1 NVIDIA T600 +0x1FB2 NVIDIA T400 +0x1FB6 NVIDIA T600 Laptop GPU +0x1FB7 NVIDIA T550 Laptop GPU +0x1FB8 Quadro T2000 with Max-Q Design +0x1FB9 Quadro T1000 with Max-Q Design +0x1FBA NVIDIA T600 Laptop GPU +0x1FBB NVIDIA T500 +0x1FBC NVIDIA T1200 Laptop GPU +0x1FDD NVIDIA GeForce GTX 1650 +0x1FF0 NVIDIA T1000 8GB +0x1FF2 NVIDIA T400E +0x1FF9 Quadro T1000 +0x20BD NVIDIA A800-SXM4-40GB +0x20F3 NVIDIA A800-SXM4-80GB +0x20FD NVIDIA AX800 +0x2182 NVIDIA GeForce GTX 1660 Ti +0x2184 NVIDIA GeForce GTX 1660 +0x2187 NVIDIA GeForce GTX 1650 SUPER +0x2188 NVIDIA GeForce GTX 1650 +0x2191 NVIDIA GeForce GTX 1660 Ti with Max-Q Design +0x2192 NVIDIA GeForce GTX 1650 Ti +0x21C4 NVIDIA GeForce GTX 1660 SUPER +0x21D1 NVIDIA GeForce GTX 1660 Ti +0x2203 NVIDIA GeForce RTX 3090 Ti +0x2204 NVIDIA GeForce RTX 3090 +0x2206 NVIDIA GeForce RTX 3080 +0x2207 NVIDIA GeForce RTX 3070 Ti +0x2208 NVIDIA GeForce RTX 3080 Ti +0x220A NVIDIA GeForce RTX 3080 +0x220D NVIDIA CMP 90HX +0x2216 NVIDIA GeForce RTX 3080 +0x2230 NVIDIA RTX A6000 +0x2231 NVIDIA RTX A5000 +0x2232 NVIDIA RTX A4500 +0x2233 NVIDIA RTX A5500 +0x2238 NVIDIA A10M +0x2329 NVIDIA H20 +0x2342 NVIDIA GH200 480GB +0x2414 NVIDIA GeForce RTX 3060 Ti +0x2420 NVIDIA GeForce RTX 3080 Ti Laptop GPU +0x2438 NVIDIA RTX A5500 Laptop GPU +0x2460 NVIDIA GeForce RTX 3080 Ti Laptop GPU +0x2482 NVIDIA GeForce RTX 3070 Ti +0x2484 NVIDIA GeForce RTX 3070 +0x2486 NVIDIA GeForce RTX 3060 Ti +0x2487 NVIDIA GeForce RTX 3060 +0x2488 NVIDIA GeForce RTX 3070 +0x2489 NVIDIA GeForce RTX 3060 Ti +0x248A NVIDIA CMP 70HX +0x249C NVIDIA GeForce RTX 3060 Laptop GPU +0x249D NVIDIA GeForce RTX 3070 Laptop GPU +0x24A0 NVIDIA GeForce RTX 3060 Laptop GPU +0x24B0 NVIDIA RTX A4000 +0x24B1 NVIDIA RTX A4000H +0x24B6 NVIDIA RTX A5000 Laptop GPU +0x24B7 NVIDIA RTX A4000 Laptop GPU +0x24B8 NVIDIA RTX A3000 Laptop GPU +0x24B9 NVIDIA RTX A3000 12GB Laptop GPU +0x24BA NVIDIA RTX A4500 Laptop GPU +0x24BB NVIDIA RTX A3000 12GB Laptop GPU +0x24C7 NVIDIA GeForce RTX 3060 +0x24C9 NVIDIA GeForce RTX 3060 Ti +0x24DC NVIDIA GeForce RTX 3080 Laptop GPU +0x24DD NVIDIA GeForce RTX 3070 Laptop GPU +0x24E0 NVIDIA GeForce RTX 3070 Ti Laptop GPU +0x24FA NVIDIA RTX A4500 Embedded GPU +0x2503 NVIDIA GeForce RTX 3060 +0x2504 NVIDIA GeForce RTX 3060 +0x2507 NVIDIA GeForce RTX 3050 +0x2508 NVIDIA GeForce RTX 3050 OEM +0x2520 NVIDIA GeForce RTX 3060 Laptop GPU +0x2521 NVIDIA GeForce RTX 3060 Laptop GPU +0x2523 NVIDIA GeForce RTX 3050 Ti Laptop GPU +0x2531 NVIDIA RTX A2000 +0x2544 NVIDIA GeForce RTX 3060 +0x2560 NVIDIA GeForce RTX 3060 Laptop GPU +0x2563 NVIDIA GeForce RTX 3050 Ti Laptop GPU +0x2571 NVIDIA RTX A2000 12GB +0x2582 NVIDIA GeForce RTX 3050 +0x2584 NVIDIA GeForce RTX 3050 +0x25A0 NVIDIA GeForce RTX 3060 Laptop GPU +0x25A2 NVIDIA GeForce RTX 3060 Laptop GPU +0x25A5 NVIDIA GeForce RTX 3050 Laptop GPU +0x25A6 NVIDIA GeForce MX570 +0x25A7 NVIDIA GeForce RTX 2050 +0x25A9 NVIDIA GeForce RTX 2050 +0x25AA NVIDIA GeForce MX570 A +0x25AB NVIDIA GeForce RTX 3050 4GB Laptop GPU +0x25AC NVIDIA GeForce RTX 3050 6GB Laptop GPU +0x25AD NVIDIA GeForce RTX 2050 +0x25B8 NVIDIA RTX A2000 Laptop GPU +0x25B9 NVIDIA RTX A1000 Laptop GPU +0x25BA NVIDIA RTX A2000 8GB Laptop GPU +0x25BB NVIDIA RTX A500 Laptop GPU +0x25BC NVIDIA RTX A1000 6GB Laptop GPU +0x25BD NVIDIA RTX A500 Laptop GPU +0x25E0 NVIDIA GeForce RTX 3050 Ti Laptop GPU +0x25E2 NVIDIA GeForce RTX 3050 Laptop GPU +0x25E5 NVIDIA GeForce RTX 3050 Laptop GPU +0x25EC NVIDIA GeForce RTX 3050 6GB Laptop GPU +0x25ED NVIDIA GeForce RTX 2050 +0x25F9 NVIDIA RTX A1000 Embedded GPU +0x25FA NVIDIA RTX A2000 Embedded GPU +0x25FB NVIDIA RTX A500 Embedded GPU +0x2684 NVIDIA GeForce RTX 4090 +0x2685 NVIDIA GeForce RTX 4090 D +0x26B1 NVIDIA RTX 6000 Ada Generation +0x26B2 NVIDIA RTX 5000 Ada Generation +0x26B3 NVIDIA RTX 5880 Ada Generation +0x26B9 NVIDIA L40S +0x26BA NVIDIA L20 +0x2702 NVIDIA GeForce RTX 4080 SUPER +0x2704 NVIDIA GeForce RTX 4080 +0x2705 NVIDIA GeForce RTX 4070 Ti SUPER +0x2717 NVIDIA GeForce RTX 4090 Laptop GPU +0x2730 NVIDIA RTX 5000 Ada Generation Laptop GPU +0x2757 NVIDIA GeForce RTX 4090 Laptop GPU +0x2770 NVIDIA RTX 5000 Ada Generation Embedded GPU +0x2782 NVIDIA GeForce RTX 4070 Ti +0x2783 NVIDIA GeForce RTX 4070 SUPER +0x2786 NVIDIA GeForce RTX 4070 +0x27A0 NVIDIA GeForce RTX 4080 Laptop GPU +0x27B0 NVIDIA RTX 4000 SFF Ada Generation +0x27B1 NVIDIA RTX 4500 Ada Generation +0x27B2 NVIDIA RTX 4000 Ada Generation +0x27B6 NVIDIA L2 +0x27BA NVIDIA RTX 4000 Ada Generation Laptop GPU +0x27BB NVIDIA RTX 3500 Ada Generation Laptop GPU +0x27E0 NVIDIA GeForce RTX 4080 Laptop GPU +0x27FB NVIDIA RTX 3500 Ada Generation Embedded GPU +0x2803 NVIDIA GeForce RTX 4060 Ti +0x2805 NVIDIA GeForce RTX 4060 Ti +0x2820 NVIDIA GeForce RTX 4070 Laptop GPU +0x2838 NVIDIA RTX 3000 Ada Generation Laptop GPU +0x2860 NVIDIA GeForce RTX 4070 Laptop GPU +0x2882 NVIDIA GeForce RTX 4060 +0x28A0 NVIDIA GeForce RTX 4060 Laptop GPU +0x28A1 NVIDIA GeForce RTX 4050 Laptop GPU +0x28B0 NVIDIA RTX 2000 Ada Generation +0x28B8 NVIDIA RTX 2000 Ada Generation Laptop GPU +0x28E0 NVIDIA GeForce RTX 4060 Laptop GPU +0x28E1 NVIDIA GeForce RTX 4050 Laptop GPU +0x28F8 NVIDIA RTX 2000 Ada Generation Embedded GPU diff --git a/pci_ids-unsupported-550.54.14 b/pci_ids-unsupported-550.54.14 new file mode 100644 index 0000000..baf4eb9 --- /dev/null +++ b/pci_ids-unsupported-550.54.14 @@ -0,0 +1,200 @@ +0x1E02 NVIDIA TITAN RTX +0x1E04 NVIDIA GeForce RTX 2080 Ti +0x1E07 NVIDIA GeForce RTX 2080 Ti +0x1E30 Quadro RTX 8000 +0x1E36 Quadro RTX 6000 +0x1E78 Quadro RTX 6000 +0x1E81 NVIDIA GeForce RTX 2080 SUPER +0x1E82 NVIDIA GeForce RTX 2080 +0x1E84 NVIDIA GeForce RTX 2070 SUPER +0x1E87 NVIDIA GeForce RTX 2080 +0x1E89 NVIDIA GeForce RTX 2060 +0x1E90 NVIDIA GeForce RTX 2080 with Max-Q Design +0x1E91 NVIDIA GeForce RTX 2070 Super with Max-Q Design +0x1E93 NVIDIA GeForce RTX 2080 Super with Max-Q Design +0x1EB0 Quadro RTX 5000 +0x1EB1 Quadro RTX 4000 +0x1EB5 Quadro RTX 5000 with Max-Q Design +0x1EB6 Quadro RTX 4000 with Max-Q Design +0x1EC2 NVIDIA GeForce RTX 2070 SUPER +0x1EC7 NVIDIA GeForce RTX 2070 SUPER +0x1ED0 NVIDIA GeForce RTX 2080 with Max-Q Design +0x1ED1 NVIDIA GeForce RTX 2070 Super with Max-Q Design +0x1ED3 NVIDIA GeForce RTX 2080 Super with Max-Q Design +0x1EF5 Quadro RTX 5000 +0x1F02 NVIDIA GeForce RTX 2070 +0x1F03 NVIDIA GeForce RTX 2060 +0x1F06 NVIDIA GeForce RTX 2060 SUPER +0x1F07 NVIDIA GeForce RTX 2070 +0x1F08 NVIDIA GeForce RTX 2060 +0x1F0A NVIDIA GeForce GTX 1650 +0x1F10 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F11 NVIDIA GeForce RTX 2060 +0x1F12 NVIDIA GeForce RTX 2060 with Max-Q Design +0x1F14 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F15 NVIDIA GeForce RTX 2060 +0x1F36 Quadro RTX 3000 with Max-Q Design +0x1F42 NVIDIA GeForce RTX 2060 SUPER +0x1F47 NVIDIA GeForce RTX 2060 SUPER +0x1F50 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F51 NVIDIA GeForce RTX 2060 +0x1F54 NVIDIA GeForce RTX 2070 with Max-Q Design +0x1F55 NVIDIA GeForce RTX 2060 +0x1F76 Matrox D-Series D2480 +0x1F82 NVIDIA GeForce GTX 1650 +0x1F83 NVIDIA GeForce GTX 1630 +0x1F91 NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F95 NVIDIA GeForce GTX 1650 Ti with Max-Q Design +0x1F96 NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F97 NVIDIA GeForce MX450 +0x1F98 NVIDIA GeForce MX450 +0x1F99 NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F9C NVIDIA GeForce MX450 +0x1F9D NVIDIA GeForce GTX 1650 with Max-Q Design +0x1F9F NVIDIA GeForce MX550 +0x1FA0 NVIDIA GeForce MX550 +0x1FB0 NVIDIA T1000 +0x1FB1 NVIDIA T600 +0x1FB2 NVIDIA T400 +0x1FB6 NVIDIA T600 Laptop GPU +0x1FB7 NVIDIA T550 Laptop GPU +0x1FB8 Quadro T2000 with Max-Q Design +0x1FB9 Quadro T1000 with Max-Q Design +0x1FBA NVIDIA T600 Laptop GPU +0x1FBB NVIDIA T500 +0x1FBC NVIDIA T1200 Laptop GPU +0x1FDD NVIDIA GeForce GTX 1650 +0x1FF0 NVIDIA T1000 8GB +0x1FF2 NVIDIA T400E +0x1FF9 Quadro T1000 +0x20BD NVIDIA A800-SXM4-40GB +0x20F3 NVIDIA A800-SXM4-80GB +0x20FD NVIDIA AX800 +0x2182 NVIDIA GeForce GTX 1660 Ti +0x2184 NVIDIA GeForce GTX 1660 +0x2187 NVIDIA GeForce GTX 1650 SUPER +0x2188 NVIDIA GeForce GTX 1650 +0x2191 NVIDIA GeForce GTX 1660 Ti with Max-Q Design +0x2192 NVIDIA GeForce GTX 1650 Ti +0x21C4 NVIDIA GeForce GTX 1660 SUPER +0x21D1 NVIDIA GeForce GTX 1660 Ti +0x2203 NVIDIA GeForce RTX 3090 Ti +0x2204 NVIDIA GeForce RTX 3090 +0x2206 NVIDIA GeForce RTX 3080 +0x2207 NVIDIA GeForce RTX 3070 Ti +0x2208 NVIDIA GeForce RTX 3080 Ti +0x220A NVIDIA GeForce RTX 3080 +0x220D NVIDIA CMP 90HX +0x2216 NVIDIA GeForce RTX 3080 +0x2230 NVIDIA RTX A6000 +0x2231 NVIDIA RTX A5000 +0x2232 NVIDIA RTX A4500 +0x2233 NVIDIA RTX A5500 +0x2238 NVIDIA A10M +0x2329 NVIDIA H20 +0x2342 NVIDIA GH200 480GB +0x2414 NVIDIA GeForce RTX 3060 Ti +0x2420 NVIDIA GeForce RTX 3080 Ti Laptop GPU +0x2438 NVIDIA RTX A5500 Laptop GPU +0x2460 NVIDIA GeForce RTX 3080 Ti Laptop GPU +0x2482 NVIDIA GeForce RTX 3070 Ti +0x2484 NVIDIA GeForce RTX 3070 +0x2486 NVIDIA GeForce RTX 3060 Ti +0x2487 NVIDIA GeForce RTX 3060 +0x2488 NVIDIA GeForce RTX 3070 +0x2489 NVIDIA GeForce RTX 3060 Ti +0x248A NVIDIA CMP 70HX +0x249C NVIDIA GeForce RTX 3060 Laptop GPU +0x249D NVIDIA GeForce RTX 3070 Laptop GPU +0x24A0 NVIDIA GeForce RTX 3060 Laptop GPU +0x24B0 NVIDIA RTX A4000 +0x24B1 NVIDIA RTX A4000H +0x24B6 NVIDIA RTX A5000 Laptop GPU +0x24B7 NVIDIA RTX A4000 Laptop GPU +0x24B8 NVIDIA RTX A3000 Laptop GPU +0x24B9 NVIDIA RTX A3000 12GB Laptop GPU +0x24BA NVIDIA RTX A4500 Laptop GPU +0x24BB NVIDIA RTX A3000 12GB Laptop GPU +0x24C7 NVIDIA GeForce RTX 3060 +0x24C9 NVIDIA GeForce RTX 3060 Ti +0x24DC NVIDIA GeForce RTX 3080 Laptop GPU +0x24DD NVIDIA GeForce RTX 3070 Laptop GPU +0x24E0 NVIDIA GeForce RTX 3070 Ti Laptop GPU +0x24FA NVIDIA RTX A4500 Embedded GPU +0x2503 NVIDIA GeForce RTX 3060 +0x2504 NVIDIA GeForce RTX 3060 +0x2507 NVIDIA GeForce RTX 3050 +0x2508 NVIDIA GeForce RTX 3050 OEM +0x2520 NVIDIA GeForce RTX 3060 Laptop GPU +0x2521 NVIDIA GeForce RTX 3060 Laptop GPU +0x2523 NVIDIA GeForce RTX 3050 Ti Laptop GPU +0x2531 NVIDIA RTX A2000 +0x2544 NVIDIA GeForce RTX 3060 +0x2560 NVIDIA GeForce RTX 3060 Laptop GPU +0x2563 NVIDIA GeForce RTX 3050 Ti Laptop GPU +0x2571 NVIDIA RTX A2000 12GB +0x2582 NVIDIA GeForce RTX 3050 +0x2584 NVIDIA GeForce RTX 3050 +0x25A0 NVIDIA GeForce RTX 3060 Laptop GPU +0x25A2 NVIDIA GeForce RTX 3060 Laptop GPU +0x25A5 NVIDIA GeForce RTX 3050 Laptop GPU +0x25A6 NVIDIA GeForce MX570 +0x25A7 NVIDIA GeForce RTX 2050 +0x25A9 NVIDIA GeForce RTX 2050 +0x25AA NVIDIA GeForce MX570 A +0x25AB NVIDIA GeForce RTX 3050 4GB Laptop GPU +0x25AC NVIDIA GeForce RTX 3050 6GB Laptop GPU +0x25AD NVIDIA GeForce RTX 2050 +0x25B8 NVIDIA RTX A2000 Laptop GPU +0x25B9 NVIDIA RTX A1000 Laptop GPU +0x25BA NVIDIA RTX A2000 8GB Laptop GPU +0x25BB NVIDIA RTX A500 Laptop GPU +0x25BC NVIDIA RTX A1000 6GB Laptop GPU +0x25BD NVIDIA RTX A500 Laptop GPU +0x25E0 NVIDIA GeForce RTX 3050 Ti Laptop GPU +0x25E2 NVIDIA GeForce RTX 3050 Laptop GPU +0x25E5 NVIDIA GeForce RTX 3050 Laptop GPU +0x25EC NVIDIA GeForce RTX 3050 6GB Laptop GPU +0x25ED NVIDIA GeForce RTX 2050 +0x25F9 NVIDIA RTX A1000 Embedded GPU +0x25FA NVIDIA RTX A2000 Embedded GPU +0x25FB NVIDIA RTX A500 Embedded GPU +0x2684 NVIDIA GeForce RTX 4090 +0x2685 NVIDIA GeForce RTX 4090 D +0x26B1 NVIDIA RTX 6000 Ada Generation +0x26B2 NVIDIA RTX 5000 Ada Generation +0x26B3 NVIDIA RTX 5880 Ada Generation +0x26B9 NVIDIA L40S +0x26BA NVIDIA L20 +0x2702 NVIDIA GeForce RTX 4080 SUPER +0x2704 NVIDIA GeForce RTX 4080 +0x2705 NVIDIA GeForce RTX 4070 Ti SUPER +0x2717 NVIDIA GeForce RTX 4090 Laptop GPU +0x2730 NVIDIA RTX 5000 Ada Generation Laptop GPU +0x2757 NVIDIA GeForce RTX 4090 Laptop GPU +0x2770 NVIDIA RTX 5000 Ada Generation Embedded GPU +0x2782 NVIDIA GeForce RTX 4070 Ti +0x2783 NVIDIA GeForce RTX 4070 SUPER +0x2786 NVIDIA GeForce RTX 4070 +0x27A0 NVIDIA GeForce RTX 4080 Laptop GPU +0x27B0 NVIDIA RTX 4000 SFF Ada Generation +0x27B1 NVIDIA RTX 4500 Ada Generation +0x27B2 NVIDIA RTX 4000 Ada Generation +0x27B6 NVIDIA L2 +0x27BA NVIDIA RTX 4000 Ada Generation Laptop GPU +0x27BB NVIDIA RTX 3500 Ada Generation Laptop GPU +0x27E0 NVIDIA GeForce RTX 4080 Laptop GPU +0x27FB NVIDIA RTX 3500 Ada Generation Embedded GPU +0x2803 NVIDIA GeForce RTX 4060 Ti +0x2805 NVIDIA GeForce RTX 4060 Ti +0x2820 NVIDIA GeForce RTX 4070 Laptop GPU +0x2838 NVIDIA RTX 3000 Ada Generation Laptop GPU +0x2860 NVIDIA GeForce RTX 4070 Laptop GPU +0x2882 NVIDIA GeForce RTX 4060 +0x28A0 NVIDIA GeForce RTX 4060 Laptop GPU +0x28A1 NVIDIA GeForce RTX 4050 Laptop GPU +0x28B0 NVIDIA RTX 2000 Ada Generation +0x28B8 NVIDIA RTX 2000 Ada Generation Laptop GPU +0x28E0 NVIDIA GeForce RTX 4060 Laptop GPU +0x28E1 NVIDIA GeForce RTX 4050 Laptop GPU +0x28F8 NVIDIA RTX 2000 Ada Generation Embedded GPU diff --git a/persistent-nvidia-id-string.patch b/persistent-nvidia-id-string.patch new file mode 100644 index 0000000..c715d04 --- /dev/null +++ b/persistent-nvidia-id-string.patch @@ -0,0 +1,15 @@ +--- + utils.mk | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/utils.mk ++++ b/utils.mk +@@ -524,7 +524,7 @@ define GENERATE_NVIDSTRING + # g_nvid_string.c depends on all objects except g_nvid_string.o, and version.mk + $(NVIDSTRING): $$(filter-out $$(call BUILD_OBJECT_LIST,$$(NVIDSTRING)), $(3)) $$(VERSION_MK) + $(at_if_quiet)$$(MKDIR) $$(dir $$@) +- $(at_if_quiet)$$(ECHO) "const char $(1)[] = \"nvidia id: NVIDIA $$(strip $(2)) for $$(TARGET_ARCH) $$(NVIDIA_VERSION) $$(NVIDSTRING_BUILD_TYPE_STRING) (`$$(WHOAMI)`@$$(HOSTNAME)) `$$(DATE)`\";" > $$@ ++ $(at_if_quiet)$$(ECHO) "const char $(1)[] = \"nvidia id: NVIDIA $$(strip $(2)) for $$(TARGET_ARCH) $$(NVIDIA_VERSION) $$(NVIDSTRING_BUILD_TYPE_STRING) (abuild@host) `$$(DATE) -d @$$(SOURCE_DATE_EPOCH)`\";" > $$@ + $(at_if_quiet)$$(ECHO) "const char *const p$$(strip $(1)) = $(1) + 11;" >> $$@; + endef + diff --git a/pesign-copy-sources b/pesign-copy-sources new file mode 100644 index 0000000..e2bec23 --- /dev/null +++ b/pesign-copy-sources @@ -0,0 +1,3 @@ +pci_ids-%{version} +my-find-supplements + diff --git a/pesign-spec-macros b/pesign-spec-macros new file mode 100644 index 0000000..b03fdea --- /dev/null +++ b/pesign-spec-macros @@ -0,0 +1 @@ +%__kmp_supplements %{_sourcedir}/my-find-supplements %{_sourcedir}/pci_ids-%{version} diff --git a/preamble b/preamble new file mode 100644 index 0000000..a67a552 --- /dev/null +++ b/preamble @@ -0,0 +1,6 @@ +Requires: kernel-firmware-nvidia-gspx-G06 = %{-v*} +Requires: perl-Bootloader +Conflicts: nvidia-gfxG06-kmp nvidia-driver-G06-kmp nvidia-gfxG05-kmp +Requires: group(video) +Provides: nvidia-open-driver-G06 = %{-v*} +Obsoletes: nvidia-open-driver-G06 = %{-v*}