diff options
-rw-r--r-- | .SRCINFO | 12 | ||||
-rw-r--r-- | 100-nvidia-open-tinygrad.patch | 55 | ||||
-rw-r--r-- | PKGBUILD | 8 |
3 files changed, 45 insertions, 30 deletions
@@ -1,6 +1,6 @@ pkgbase = nvidia-open-tinygrad-git pkgdesc = NVIDIA open GPU kernel modules (tinygrad git version) - pkgver = 550.54.15.r0.g12933b2d3 + pkgver = 550.76.r0.gea4c27fad pkgrel = 1 url = https://github.com/tinygrad/open-gpu-kernel-modules arch = x86_64 @@ -11,14 +11,14 @@ pkgbase = nvidia-open-tinygrad-git options = !buildflags options = !lto options = !strip - source = git+https://github.com/NVIDIA/open-gpu-kernel-modules.git#tag=550.54.15 + source = git+https://github.com/NVIDIA/open-gpu-kernel-modules.git#tag=550.76 source = 100-nvidia-open-tinygrad.patch source = 110-nvidia-open-change-dkms-conf.patch source = 120-nvidia-open-linux-rt-gift.patch source = 130-nvidia-open-reproducible-build.patch source = 140-nvidia-open-gcc-sls.patch - sha256sums = 4a4ded42430f03a9264b10a7d22da5f2a0f40897380734458daa1eadd2b30646 - sha256sums = 57591c653b0fcc78d75b7041fc197f00eaabd0c3707f50bf08e80ec807a8d38b + sha256sums = dda312c60906cc2466a601cea0e31abee9852ac298989957f4d3b5e0375b9bf4 + sha256sums = a4a599629c96b7b2f7cdd496fec8f406ea4a4ea5ab30663cae09856618801a63 sha256sums = 009724e2e07b7be589ba455f225a9742d88a3a29383f2f220cb830ef4c8b7aea sha256sums = b0f62a78f749ff3a104197c12b6d885352adcf35fb5ecf00c4cd4c51b4195e45 sha256sums = 15421d72aabc569c69762c77c7a37ad7be617f08e3c833318cecdeb5500e8ef4 @@ -28,8 +28,8 @@ pkgname = nvidia-open-tinygrad-dkms-git pkgdesc = NVIDIA open GPU kernel modules (tinygrad git version) depends = dkms depends = libglvnd - depends = nvidia-utils>=550.54 - provides = nvidia-open=550.54.15.r0.g12933b2d3 + depends = nvidia-utils>=550 + provides = nvidia-open=550.76.r0.gea4c27fad provides = NVIDIA-MODULE conflicts = nvidia-open conflicts = NVIDIA-MODULE diff --git a/100-nvidia-open-tinygrad.patch b/100-nvidia-open-tinygrad.patch index 69213846cc3b..466a9d8e373d 100644 --- a/100-nvidia-open-tinygrad.patch +++ b/100-nvidia-open-tinygrad.patch @@ -1,12 +1,12 @@ diff --git a/README.md b/README.md -index 77ad719f..d1d386f2 100644 +index 5b154a84..d1d386f2 100644 --- a/README.md +++ b/README.md -@@ -1,915 +1,125 @@ +@@ -1,930 +1,125 @@ -# NVIDIA Linux Open GPU Kernel Module Source - -This is the source release of the NVIDIA Linux open GPU kernel modules, --version 550.54.15. +-version 550.76. - - -## How to Build @@ -22,7 +22,7 @@ index 77ad719f..d1d386f2 100644 - -Note that the kernel modules built here must be used with GSP -firmware and user-space NVIDIA GPU driver components from a corresponding --550.54.15 driver release. This can be achieved by installing +-550.76 driver release. This can be achieved by installing -the NVIDIA GPU driver from the .run file using the `--no-kernel-modules` -option. E.g., - @@ -193,7 +193,7 @@ index 77ad719f..d1d386f2 100644 -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/550.54.15/README/kernel_open.html +-https://us.download.nvidia.com/XFree86/Linux-x86_64/550.76/README/kernel_open.html - -For vGPU support, please refer to the README.vgpu packaged in the vGPU Host -Package for more details. @@ -656,6 +656,7 @@ index 77ad719f..d1d386f2 100644 -| NVIDIA T1000 8GB | 1FF0 17AA 1612 | -| NVIDIA T400 4GB | 1FF2 1028 1613 | -| NVIDIA T400 4GB | 1FF2 103C 1613 | +-| NVIDIA T400E | 1FF2 103C 18FF | -| NVIDIA T400 4GB | 1FF2 103C 8A80 | -| NVIDIA T400 4GB | 1FF2 10DE 1613 | -| NVIDIA T400E | 1FF2 10DE 18FF | @@ -834,6 +835,14 @@ index 77ad719f..d1d386f2 100644 -| NVIDIA GeForce RTX 3050 4GB Laptop GPU | 25AB | -| NVIDIA GeForce RTX 3050 6GB Laptop GPU | 25AC | -| NVIDIA GeForce RTX 2050 | 25AD | +-| NVIDIA RTX A1000 | 25B0 1028 1878 | +-| NVIDIA RTX A1000 | 25B0 103C 1878 | +-| NVIDIA RTX A1000 | 25B0 10DE 1878 | +-| NVIDIA RTX A1000 | 25B0 17AA 1878 | +-| NVIDIA RTX A400 | 25B2 1028 1879 | +-| NVIDIA RTX A400 | 25B2 103C 1879 | +-| NVIDIA RTX A400 | 25B2 10DE 1879 | +-| NVIDIA RTX A400 | 25B2 17AA 1879 | -| NVIDIA A16 | 25B6 10DE 14A9 | -| NVIDIA A2 | 25B6 10DE 157E | -| NVIDIA RTX A2000 Laptop GPU | 25B8 | @@ -872,6 +881,7 @@ index 77ad719f..d1d386f2 100644 -| NVIDIA GeForce RTX 4080 SUPER | 2702 | -| NVIDIA GeForce RTX 4080 | 2704 | -| NVIDIA GeForce RTX 4070 Ti SUPER | 2705 | +-| NVIDIA GeForce RTX 4070 | 2709 | -| NVIDIA GeForce RTX 4090 Laptop GPU | 2717 | -| NVIDIA RTX 5000 Ada Generation Laptop GPU | 2730 | -| NVIDIA GeForce RTX 4090 Laptop GPU | 2757 | @@ -879,6 +889,7 @@ index 77ad719f..d1d386f2 100644 -| NVIDIA GeForce RTX 4070 Ti | 2782 | -| NVIDIA GeForce RTX 4070 SUPER | 2783 | -| NVIDIA GeForce RTX 4070 | 2786 | +-| NVIDIA GeForce RTX 4060 Ti | 2788 | -| NVIDIA GeForce RTX 4080 Laptop GPU | 27A0 | -| NVIDIA RTX 4000 SFF Ada Generation | 27B0 1028 16FA | -| NVIDIA RTX 4000 SFF Ada Generation | 27B0 103C 16FA | @@ -901,6 +912,7 @@ index 77ad719f..d1d386f2 100644 -| NVIDIA RTX 3500 Ada Generation Embedded GPU | 27FB | -| NVIDIA GeForce RTX 4060 Ti | 2803 | -| NVIDIA GeForce RTX 4060 Ti | 2805 | +-| NVIDIA GeForce RTX 4060 | 2808 | -| NVIDIA GeForce RTX 4070 Laptop GPU | 2820 | -| NVIDIA RTX 3000 Ada Generation Laptop GPU | 2838 | -| NVIDIA GeForce RTX 4070 Laptop GPU | 2860 | @@ -909,8 +921,11 @@ index 77ad719f..d1d386f2 100644 -| NVIDIA GeForce RTX 4050 Laptop GPU | 28A1 | -| NVIDIA RTX 2000 Ada Generation | 28B0 1028 1870 | -| NVIDIA RTX 2000 Ada Generation | 28B0 103C 1870 | +-| NVIDIA RTX 2000E Ada Generation | 28B0 103C 1871 | -| NVIDIA RTX 2000 Ada Generation | 28B0 10DE 1870 | +-| NVIDIA RTX 2000E Ada Generation | 28B0 10DE 1871 | -| NVIDIA RTX 2000 Ada Generation | 28B0 17AA 1870 | +-| NVIDIA RTX 2000E Ada Generation | 28B0 17AA 1871 | -| NVIDIA RTX 2000 Ada Generation Laptop GPU | 28B8 | -| NVIDIA RTX 1000 Ada Generation Laptop GPU | 28B9 | -| NVIDIA RTX 500 Ada Generation Laptop GPU | 28BA | @@ -1124,7 +1139,7 @@ index 39cc8812..efd4cda8 100644 (data32 <= NV_REG_STR_RM_FORCE_P2P_TYPE_MAX)) { diff --git a/src/nvidia/src/kernel/gpu/bus/arch/hopper/kern_bus_gh100.c b/src/nvidia/src/kernel/gpu/bus/arch/hopper/kern_bus_gh100.c -index 17bc6efc..b62a0919 100644 +index dcac5b9e..6423745f 100644 --- a/src/nvidia/src/kernel/gpu/bus/arch/hopper/kern_bus_gh100.c +++ b/src/nvidia/src/kernel/gpu/bus/arch/hopper/kern_bus_gh100.c @@ -333,7 +333,7 @@ kbusVerifyBar2_GH100 @@ -1291,10 +1306,10 @@ index d9a04068..8af18d72 100644 return NV_ERR_NOT_SUPPORTED; diff --git a/src/nvidia/src/kernel/gpu/bus/p2p_api.c b/src/nvidia/src/kernel/gpu/bus/p2p_api.c -index c98befb0..0dafbf1c 100644 +index 3d6e1bed..59327bba 100644 --- a/src/nvidia/src/kernel/gpu/bus/p2p_api.c +++ b/src/nvidia/src/kernel/gpu/bus/p2p_api.c -@@ -567,20 +567,20 @@ p2papiConstruct_IMPL +@@ -575,20 +575,20 @@ p2papiConstruct_IMPL // // TODO: This function need to have a cleanup path when this function // fails after kbusCreateP2PMaping(), busBindLocalGfidForP2P() @@ -1318,7 +1333,7 @@ index c98befb0..0dafbf1c 100644 pRemoteKernelBus, &egmPeer1, &egmPeer2, pP2PApi->attributes | DRF_DEF(_P2PAPI, _ATTRIBUTES, _REMOTE_EGM, _YES))); -@@ -590,14 +590,14 @@ p2papiConstruct_IMPL +@@ -598,14 +598,14 @@ p2papiConstruct_IMPL (pCallContext->secInfo.privLevel >= RS_PRIV_LEVEL_KERNEL)) { NV_CHECK_OK_OR_RETURN(LEVEL_ERROR, @@ -1336,7 +1351,7 @@ index c98befb0..0dafbf1c 100644 &pNv503bAllocParams->p2lBar1P2PDmaInfo.dma_address, &pNv503bAllocParams->p2lBar1P2PDmaInfo.dma_size)); } -@@ -732,7 +732,7 @@ p2papiDestruct_IMPL +@@ -740,7 +740,7 @@ p2papiDestruct_IMPL { // remove any resources associated with this mapping NV_CHECK_OK_OR_GOTO(status, LEVEL_ERROR, @@ -1345,9 +1360,9 @@ index c98befb0..0dafbf1c 100644 pRemoteGpu, pRemoteKernelBus, pP2PApi->peerId1, pP2PApi->peerId2, pP2PApi->attributes), end); -@@ -740,7 +740,7 @@ p2papiDestruct_IMPL - memmgrIsLocalEgmEnabled(GPU_GET_MEMORY_MANAGER(pLocalGpu)) && - memmgrIsLocalEgmEnabled(GPU_GET_MEMORY_MANAGER(pRemoteGpu))) +@@ -749,7 +749,7 @@ p2papiDestruct_IMPL + memmgrIsLocalEgmEnabled(GPU_GET_MEMORY_MANAGER(pRemoteGpu)) && + !GPU_IS_NVSWITCH_DETECTED(pLocalGpu)) { - status = kbusRemoveP2PMapping_HAL(pLocalGpu, pLocalKernelBus, + status = kbusRemoveP2PMapping_GH100(pLocalGpu, pLocalKernelBus, @@ -1355,7 +1370,7 @@ index c98befb0..0dafbf1c 100644 pP2PApi->egmPeerId1, pP2PApi->egmPeerId2, pP2PApi->attributes | diff --git a/src/nvidia/src/kernel/rmapi/nv_gpu_ops.c b/src/nvidia/src/kernel/rmapi/nv_gpu_ops.c -index 432e77e7..aee4195b 100644 +index a7d5c134..245ca7c5 100644 --- a/src/nvidia/src/kernel/rmapi/nv_gpu_ops.c +++ b/src/nvidia/src/kernel/rmapi/nv_gpu_ops.c @@ -3058,7 +3058,8 @@ nvGpuOpsBuildExternalAllocPtes @@ -1394,8 +1409,8 @@ index 432e77e7..aee4195b 100644 { FlaMemory* pFlaMemory = dynamicCast(pMemory, FlaMemory); nvFieldSet32(&pPteFmt->fldPeerIndex, peerId, pte.v8); -@@ -3296,7 +3305,7 @@ nvGpuOpsBuildExternalAllocPtes - fabricBaseAddress = knvlinkGetUniqueFabricBaseAddress(pMemDesc->pGpu, pKernelNvlink); +@@ -3303,7 +3312,7 @@ nvGpuOpsBuildExternalAllocPtes + } } } - } @@ -1403,7 +1418,7 @@ index 432e77e7..aee4195b 100644 // // Both memdescGetPhysAddr() and kgmmuEncodePhysAddr() have pretty high overhead. -@@ -3451,6 +3460,7 @@ NV_STATUS nvGpuOpsGetExternalAllocPtes(struct gpuAddressSpace *vaSpace, +@@ -3458,6 +3467,7 @@ NV_STATUS nvGpuOpsGetExternalAllocPtes(struct gpuAddressSpace *vaSpace, Memory *pMemory = NULL; PMEMORY_DESCRIPTOR pMemDesc = NULL; OBJGPU *pMappingGpu = NULL; @@ -1411,7 +1426,7 @@ index 432e77e7..aee4195b 100644 NvU32 peerId = 0; NvBool isSliSupported = NV_FALSE; NvBool isPeerSupported = NV_FALSE; -@@ -3596,6 +3606,8 @@ NV_STATUS nvGpuOpsGetExternalAllocPtes(struct gpuAddressSpace *vaSpace, +@@ -3603,6 +3613,8 @@ NV_STATUS nvGpuOpsGetExternalAllocPtes(struct gpuAddressSpace *vaSpace, &peerId); if (status != NV_OK) goto freeGpaMemdesc; @@ -1420,7 +1435,7 @@ index 432e77e7..aee4195b 100644 } // -@@ -3673,7 +3685,7 @@ NV_STATUS nvGpuOpsGetExternalAllocPtes(struct gpuAddressSpace *vaSpace, +@@ -3680,7 +3692,7 @@ NV_STATUS nvGpuOpsGetExternalAllocPtes(struct gpuAddressSpace *vaSpace, status = nvGpuOpsBuildExternalAllocPtes(pVAS, pMappingGpu, pAdjustedMemDesc, pMemory, offset, size, isIndirectPeerSupported, isPeerSupported, peerId, @@ -1429,7 +1444,7 @@ index 432e77e7..aee4195b 100644 freeGpaMemdesc: if (pAdjustedMemDesc != pMemDesc) -@@ -9322,7 +9334,7 @@ NV_STATUS nvGpuOpsGetChannelResourcePtes(struct gpuAddressSpace *vaSpace, +@@ -9329,7 +9341,7 @@ NV_STATUS nvGpuOpsGetChannelResourcePtes(struct gpuAddressSpace *vaSpace, status = nvGpuOpsBuildExternalAllocPtes(pVAS, pMappingGpu, pMemDesc, NULL, offset, size, NV_FALSE, NV_FALSE, @@ -3,7 +3,7 @@ pkgbase=nvidia-open-tinygrad-git pkgname='nvidia-open-tinygrad-dkms-git' -pkgver=550.54.15.r0.g12933b2d3 +pkgver=550.76.r0.gea4c27fad pkgrel=1 pkgdesc='NVIDIA open GPU kernel modules (tinygrad git version)' arch=('x86_64') @@ -11,14 +11,14 @@ url='https://github.com/tinygrad/open-gpu-kernel-modules' license=('MIT' 'GPL-2.0-only') makedepends=('git' 'linux-headers') options=('!buildflags' '!lto' '!strip') -source=('git+https://github.com/NVIDIA/open-gpu-kernel-modules.git#tag=550.54.15' +source=('git+https://github.com/NVIDIA/open-gpu-kernel-modules.git#tag=550.76' '100-nvidia-open-tinygrad.patch' '110-nvidia-open-change-dkms-conf.patch' '120-nvidia-open-linux-rt-gift.patch' '130-nvidia-open-reproducible-build.patch' '140-nvidia-open-gcc-sls.patch') -sha256sums=('4a4ded42430f03a9264b10a7d22da5f2a0f40897380734458daa1eadd2b30646' - '57591c653b0fcc78d75b7041fc197f00eaabd0c3707f50bf08e80ec807a8d38b' +sha256sums=('dda312c60906cc2466a601cea0e31abee9852ac298989957f4d3b5e0375b9bf4' + 'a4a599629c96b7b2f7cdd496fec8f406ea4a4ea5ab30663cae09856618801a63' '009724e2e07b7be589ba455f225a9742d88a3a29383f2f220cb830ef4c8b7aea' 'b0f62a78f749ff3a104197c12b6d885352adcf35fb5ecf00c4cd4c51b4195e45' '15421d72aabc569c69762c77c7a37ad7be617f08e3c833318cecdeb5500e8ef4' |