535.86.10
This commit is contained in:
parent
337e28efda
commit
29f830f1bb
@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
## Release 535 Entries
|
## Release 535 Entries
|
||||||
|
|
||||||
|
### [535.86.10] 2023-07-31
|
||||||
|
|
||||||
### [535.86.05] 2023-07-18
|
### [535.86.05] 2023-07-18
|
||||||
|
|
||||||
### [535.54.03] 2023-06-14
|
### [535.54.03] 2023-06-14
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
# NVIDIA Linux Open GPU Kernel Module Source
|
# NVIDIA Linux Open GPU Kernel Module Source
|
||||||
|
|
||||||
This is the source release of the NVIDIA Linux open GPU kernel modules,
|
This is the source release of the NVIDIA Linux open GPU kernel modules,
|
||||||
version 535.86.05.
|
version 535.86.10.
|
||||||
|
|
||||||
|
|
||||||
## How to Build
|
## How to Build
|
||||||
@ -17,7 +17,7 @@ as root:
|
|||||||
|
|
||||||
Note that the kernel modules built here must be used with GSP
|
Note that the kernel modules built here must be used with GSP
|
||||||
firmware and user-space NVIDIA GPU driver components from a corresponding
|
firmware and user-space NVIDIA GPU driver components from a corresponding
|
||||||
535.86.05 driver release. This can be achieved by installing
|
535.86.10 driver release. This can be achieved by installing
|
||||||
the NVIDIA GPU driver from the .run file using the `--no-kernel-modules`
|
the NVIDIA GPU driver from the .run file using the `--no-kernel-modules`
|
||||||
option. E.g.,
|
option. E.g.,
|
||||||
|
|
||||||
@ -180,7 +180,7 @@ software applications.
|
|||||||
## Compatible GPUs
|
## Compatible GPUs
|
||||||
|
|
||||||
The open-gpu-kernel-modules can be used on any Turing or later GPU
|
The open-gpu-kernel-modules can be used on any Turing or later GPU
|
||||||
(see the table below). However, in the 535.86.05 release,
|
(see the table below). However, in the 535.86.10 release,
|
||||||
GeForce and Workstation support is still considered alpha-quality.
|
GeForce and Workstation support is still considered alpha-quality.
|
||||||
|
|
||||||
To enable use of the open kernel modules on GeForce and Workstation GPUs,
|
To enable use of the open kernel modules on GeForce and Workstation GPUs,
|
||||||
@ -188,7 +188,7 @@ set the "NVreg_OpenRmEnableUnsupportedGpus" nvidia.ko kernel module
|
|||||||
parameter to 1. For more details, see the NVIDIA GPU driver end user
|
parameter to 1. For more details, see the NVIDIA GPU driver end user
|
||||||
README here:
|
README here:
|
||||||
|
|
||||||
https://us.download.nvidia.com/XFree86/Linux-x86_64/535.86.05/README/kernel_open.html
|
https://us.download.nvidia.com/XFree86/Linux-x86_64/535.86.10/README/kernel_open.html
|
||||||
|
|
||||||
In the below table, if three IDs are listed, the first is the PCI Device
|
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
|
ID, the second is the PCI Subsystem Vendor ID, and the third is the PCI
|
||||||
|
@ -72,7 +72,7 @@ EXTRA_CFLAGS += -I$(src)/common/inc
|
|||||||
EXTRA_CFLAGS += -I$(src)
|
EXTRA_CFLAGS += -I$(src)
|
||||||
EXTRA_CFLAGS += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-error -Wno-format-extra-args
|
EXTRA_CFLAGS += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-error -Wno-format-extra-args
|
||||||
EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DNVRM
|
EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DNVRM
|
||||||
EXTRA_CFLAGS += -DNV_VERSION_STRING=\"535.86.05\"
|
EXTRA_CFLAGS += -DNV_VERSION_STRING=\"535.86.10\"
|
||||||
|
|
||||||
ifneq ($(SYSSRCHOST1X),)
|
ifneq ($(SYSSRCHOST1X),)
|
||||||
EXTRA_CFLAGS += -I$(SYSSRCHOST1X)
|
EXTRA_CFLAGS += -I$(SYSSRCHOST1X)
|
||||||
|
@ -2703,7 +2703,15 @@ static void init_channel_manager_conf(uvm_channel_manager_t *manager)
|
|||||||
// access through the bus, because no cache coherence message is exchanged.
|
// access through the bus, because no cache coherence message is exchanged.
|
||||||
if (uvm_gpu_is_coherent(gpu->parent)) {
|
if (uvm_gpu_is_coherent(gpu->parent)) {
|
||||||
manager->conf.gpfifo_loc = UVM_BUFFER_LOCATION_SYS;
|
manager->conf.gpfifo_loc = UVM_BUFFER_LOCATION_SYS;
|
||||||
manager->conf.gpput_loc = UVM_BUFFER_LOCATION_SYS;
|
|
||||||
|
// On GPUs with limited ESCHED addressing range, e.g., Volta on P9, RM
|
||||||
|
// cannot guarantee that USERD/GPPUT physical address is accessible by
|
||||||
|
// ESCHED. We set GPPUT location to vidmem where physical addresses are
|
||||||
|
// all accessible by ESCHED. We use the max_host_va as a proxy for the
|
||||||
|
// PA limitation, since all architectures with 40b VA limits also have
|
||||||
|
// 40b PA limits.
|
||||||
|
manager->conf.gpput_loc = gpu->parent->max_host_va == (1ull << 40) ? UVM_BUFFER_LOCATION_VID :
|
||||||
|
UVM_BUFFER_LOCATION_SYS;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// By default we place GPFIFO and GPPUT on vidmem as it potentially has
|
// By default we place GPFIFO and GPPUT on vidmem as it potentially has
|
||||||
|
@ -46,11 +46,6 @@ NvlStatus nvlink_lib_unload(void);
|
|||||||
*/
|
*/
|
||||||
NvlStatus nvlink_lib_ioctl_ctrl(nvlink_ioctrl_params *ctrl_params);
|
NvlStatus nvlink_lib_ioctl_ctrl(nvlink_ioctrl_params *ctrl_params);
|
||||||
|
|
||||||
/*
|
|
||||||
* Gets number of devices with type deviceType
|
|
||||||
*/
|
|
||||||
NvlStatus nvlink_lib_return_device_count_by_type(NvU32 deviceType, NvU32 *numDevices);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -43,11 +43,11 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS)
|
#if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS)
|
||||||
#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r535/r536_62-214"
|
#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r535/r536_62-219"
|
||||||
#define NV_BUILD_CHANGELIST_NUM (33069717)
|
#define NV_BUILD_CHANGELIST_NUM (33114094)
|
||||||
#define NV_BUILD_TYPE "Official"
|
#define NV_BUILD_TYPE "Official"
|
||||||
#define NV_BUILD_NAME "rel/gpu_drv/r535/r536_62-214"
|
#define NV_BUILD_NAME "rel/gpu_drv/r535/r536_62-219"
|
||||||
#define NV_LAST_OFFICIAL_CHANGELIST_NUM (33069717)
|
#define NV_LAST_OFFICIAL_CHANGELIST_NUM (33114094)
|
||||||
|
|
||||||
#else /* Windows builds */
|
#else /* Windows builds */
|
||||||
#define NV_BUILD_BRANCH_VERSION "r536_62-3"
|
#define NV_BUILD_BRANCH_VERSION "r536_62-3"
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
#if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS) || defined(NV_VMWARE) || defined(NV_QNX) || defined(NV_INTEGRITY) || \
|
#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)
|
(defined(RMCFG_FEATURE_PLATFORM_GSP) && RMCFG_FEATURE_PLATFORM_GSP == 1)
|
||||||
|
|
||||||
#define NV_VERSION_STRING "535.86.05"
|
#define NV_VERSION_STRING "535.86.10"
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
@ -439,11 +439,6 @@ NvlStatus nvlink_lib_register_link(nvlink_device *dev, nvlink_link *link);
|
|||||||
*/
|
*/
|
||||||
NvlStatus nvlink_lib_unregister_link(nvlink_link *link);
|
NvlStatus nvlink_lib_unregister_link(nvlink_link *link);
|
||||||
|
|
||||||
/*
|
|
||||||
* Gets number of devices with type deviceType
|
|
||||||
*/
|
|
||||||
NvlStatus nvlink_lib_return_device_count_by_type(NvU32 deviceType, NvU32 *numDevices);
|
|
||||||
|
|
||||||
|
|
||||||
/************************************************************************************************/
|
/************************************************************************************************/
|
||||||
/******************************* NVLink link management functions *******************************/
|
/******************************* NVLink link management functions *******************************/
|
||||||
|
@ -46,11 +46,6 @@ NvlStatus nvlink_lib_unload(void);
|
|||||||
*/
|
*/
|
||||||
NvlStatus nvlink_lib_ioctl_ctrl(nvlink_ioctrl_params *ctrl_params);
|
NvlStatus nvlink_lib_ioctl_ctrl(nvlink_ioctrl_params *ctrl_params);
|
||||||
|
|
||||||
/*
|
|
||||||
* Gets number of devices with type deviceType
|
|
||||||
*/
|
|
||||||
NvlStatus nvlink_lib_return_device_count_by_type(NvU32 deviceType, NvU32 *numDevices);
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -171,6 +171,7 @@ nvlink_lib_is_registerd_device_with_reduced_config(void)
|
|||||||
{
|
{
|
||||||
NvlStatus lock_status = NVL_SUCCESS;
|
NvlStatus lock_status = NVL_SUCCESS;
|
||||||
nvlink_device *dev = NULL;
|
nvlink_device *dev = NULL;
|
||||||
|
NvBool bIsReducedConfg = NV_FALSE;
|
||||||
|
|
||||||
// Acquire top-level lock
|
// Acquire top-level lock
|
||||||
lock_status = nvlink_lib_top_lock_acquire();
|
lock_status = nvlink_lib_top_lock_acquire();
|
||||||
@ -187,58 +188,13 @@ nvlink_lib_is_registerd_device_with_reduced_config(void)
|
|||||||
{
|
{
|
||||||
if (dev->bReducedNvlinkConfig == NV_TRUE)
|
if (dev->bReducedNvlinkConfig == NV_TRUE)
|
||||||
{
|
{
|
||||||
return NV_TRUE;
|
bIsReducedConfg = NV_TRUE;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Release and free top-level lock
|
// Release top-level lock
|
||||||
nvlink_lib_top_lock_release();
|
nvlink_lib_top_lock_release();
|
||||||
nvlink_lib_top_lock_free();
|
|
||||||
|
|
||||||
return NV_FALSE;
|
return bIsReducedConfg;
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Get the number of devices that have the device type deviceType
|
|
||||||
*/
|
|
||||||
NvlStatus
|
|
||||||
nvlink_lib_return_device_count_by_type
|
|
||||||
(
|
|
||||||
NvU32 deviceType,
|
|
||||||
NvU32 *numDevices
|
|
||||||
)
|
|
||||||
{
|
|
||||||
NvlStatus lock_status = NVL_SUCCESS;
|
|
||||||
nvlink_device *dev = NULL;
|
|
||||||
NvU32 device_count = 0;
|
|
||||||
|
|
||||||
if (nvlink_lib_is_initialized())
|
|
||||||
{
|
|
||||||
// Acquire top-level lock
|
|
||||||
lock_status = nvlink_lib_top_lock_acquire();
|
|
||||||
if (lock_status != NVL_SUCCESS)
|
|
||||||
{
|
|
||||||
NVLINK_PRINT((DBG_MODULE_NVLINK_CORE, NVLINK_DBG_LEVEL_ERRORS,
|
|
||||||
"%s: Failed to acquire top-level lock\n",
|
|
||||||
__FUNCTION__));
|
|
||||||
|
|
||||||
return lock_status;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Top-level lock is now acquired
|
|
||||||
|
|
||||||
// Loop through device list
|
|
||||||
FOR_EACH_DEVICE_REGISTERED(dev, nvlinkLibCtx.nv_devicelist_head, node)
|
|
||||||
{
|
|
||||||
if (dev->type == deviceType)
|
|
||||||
{
|
|
||||||
device_count++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Release top-level lock
|
|
||||||
nvlink_lib_top_lock_release();
|
|
||||||
}
|
|
||||||
*numDevices = device_count;
|
|
||||||
return NVL_SUCCESS;
|
|
||||||
}
|
}
|
||||||
|
@ -583,12 +583,9 @@ typedef struct
|
|||||||
NvBool bDisabledRemoteEndLinkMaskCached;
|
NvBool bDisabledRemoteEndLinkMaskCached;
|
||||||
} lr10_device;
|
} lr10_device;
|
||||||
|
|
||||||
#define NVSWITCH_NUM_DEVICES_PER_DELTA_LR10 6
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
NvU32 switchPhysicalId;
|
NvU32 switchPhysicalId;
|
||||||
NvU64 accessLinkMask;
|
NvU64 linkMask;
|
||||||
NvU64 trunkLinkMask;
|
|
||||||
} lr10_links_connected_to_disabled_remote_end;
|
} lr10_links_connected_to_disabled_remote_end;
|
||||||
|
|
||||||
#define NVSWITCH_GET_CHIP_DEVICE_LR10(_device) \
|
#define NVSWITCH_GET_CHIP_DEVICE_LR10(_device) \
|
||||||
|
@ -43,68 +43,40 @@
|
|||||||
#include "nvswitch/lr10/dev_nvlipt_ip.h"
|
#include "nvswitch/lr10/dev_nvlipt_ip.h"
|
||||||
#include "nvswitch/lr10/dev_nport_ip.h"
|
#include "nvswitch/lr10/dev_nport_ip.h"
|
||||||
|
|
||||||
#define NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK 12 // This must be incremented if any entries are added to the array below
|
#define NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK 8 // This must be incremented if any entries are added to the array below
|
||||||
lr10_links_connected_to_disabled_remote_end nvswitchDisconnetedRemoteLinkMasks[] =
|
lr10_links_connected_to_disabled_remote_end nvswitchDisconnetedRemoteLinkMasks[] =
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
0x8, // switchPhysicalId
|
0x8, // switchPhysicalId
|
||||||
0x56A000500, // accessLinkMask
|
0x56A000500 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0x9, // switchPhysicalId
|
0x9, // switchPhysicalId
|
||||||
0x509009900, // accessLinkMask
|
0x509009900 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0xa, // switchPhysicalId
|
0xb, // switchPhysicalId
|
||||||
0x0, // accessLinkMask
|
0x56A000600 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0xb, // switchPhysicalId
|
0xc, // switchPhysicalId
|
||||||
0x56A000600, // accessLinkMask
|
0x4A9009400 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0xc, // switchPhysicalId
|
0x18, // switchPhysicalId
|
||||||
0x4A9009400, // accessLinkMask
|
0x56A000500 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0xd, // switchPhysicalId
|
0x19, // switchPhysicalId
|
||||||
0x0, // accessLinkMask
|
0x509009900 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0x18, // switchPhysicalId
|
0x1b, // switchPhysicalId
|
||||||
0x56A000500, // accessLinkMask
|
0x56A000600 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
0x19, // switchPhysicalId
|
0x1c, // switchPhysicalId
|
||||||
0x509009900, // accessLinkMask
|
0x4A9009400 //linkMask
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
|
||||||
{
|
|
||||||
0x1a, // switchPhysicalId
|
|
||||||
0x0, // accessLinkMask
|
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
|
||||||
{
|
|
||||||
0x1b, // switchPhysicalId
|
|
||||||
0x56A000600, // accessLinkMask
|
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
|
||||||
{
|
|
||||||
0x1c, // switchPhysicalId
|
|
||||||
0x4A9009400, // accessLinkMask
|
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
|
||||||
{
|
|
||||||
0x1d, // switchPhysicalId
|
|
||||||
0x0, // accessLinkMask
|
|
||||||
0xFF00FF // trunkLinkMask
|
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
ct_assert(sizeof(nvswitchDisconnetedRemoteLinkMasks)/sizeof(lr10_links_connected_to_disabled_remote_end) == NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK);
|
ct_assert(sizeof(nvswitchDisconnetedRemoteLinkMasks)/sizeof(lr10_links_connected_to_disabled_remote_end) == NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK);
|
||||||
@ -869,6 +841,7 @@ nvswitch_corelib_set_dl_link_mode_lr10
|
|||||||
|
|
||||||
if (nvswitch_does_link_need_termination_enabled(device, link))
|
if (nvswitch_does_link_need_termination_enabled(device, link))
|
||||||
{
|
{
|
||||||
|
|
||||||
if (mode == NVLINK_LINKSTATE_INITPHASE1)
|
if (mode == NVLINK_LINKSTATE_INITPHASE1)
|
||||||
{
|
{
|
||||||
status = nvswitch_link_termination_setup(device, link);
|
status = nvswitch_link_termination_setup(device, link);
|
||||||
@ -2399,8 +2372,6 @@ nvswitch_load_link_disable_settings_lr10
|
|||||||
NvU32 val;
|
NvU32 val;
|
||||||
NVLINK_CONFIG_DATA_LINKENTRY *vbios_link_entry = NULL;
|
NVLINK_CONFIG_DATA_LINKENTRY *vbios_link_entry = NULL;
|
||||||
NVSWITCH_BIOS_NVLINK_CONFIG *bios_config;
|
NVSWITCH_BIOS_NVLINK_CONFIG *bios_config;
|
||||||
NvlStatus status;
|
|
||||||
lr10_device *chip_device = NVSWITCH_GET_CHIP_DEVICE_LR10(device);
|
|
||||||
|
|
||||||
bios_config = nvswitch_get_bios_nvlink_config(device);
|
bios_config = nvswitch_get_bios_nvlink_config(device);
|
||||||
if ((bios_config == NULL) || (bios_config->bit_address == 0))
|
if ((bios_config == NULL) || (bios_config->bit_address == 0))
|
||||||
@ -2441,16 +2412,15 @@ nvswitch_load_link_disable_settings_lr10
|
|||||||
__FUNCTION__, link->linkNumber);
|
__FUNCTION__, link->linkNumber);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
val = FLD_SET_DRF(_NVLIPT_LNK, _CTRL_SYSTEM_LINK_MODE_CTRL, _LINK_DISABLE,
|
||||||
|
_DISABLED, val);
|
||||||
|
NVSWITCH_LINK_WR32_LR10(device, link->linkNumber,
|
||||||
|
NVLIPT_LNK, _NVLIPT_LNK, _CTRL_SYSTEM_LINK_MODE_CTRL, val);
|
||||||
|
|
||||||
status = nvswitch_link_termination_setup(device, link);
|
// Set link to invalid and unregister from corelib
|
||||||
if (status != NVL_SUCCESS)
|
device->link[link->linkNumber].valid = NV_FALSE;
|
||||||
{
|
nvlink_lib_unregister_link(link);
|
||||||
NVSWITCH_PRINT(device, ERROR,
|
nvswitch_destroy_link(link);
|
||||||
"%s: Failed to enable termination on link #%d\n", __FUNCTION__, link->linkNumber);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
// add link to disabledRemoteEndLinkMask
|
|
||||||
chip_device->disabledRemoteEndLinkMask |= NVBIT64(link->linkNumber);
|
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -2518,8 +2488,6 @@ nvswitch_does_link_need_termination_enabled_lr10
|
|||||||
NvU32 i;
|
NvU32 i;
|
||||||
NvU32 physicalId;
|
NvU32 physicalId;
|
||||||
lr10_device *chip_device;
|
lr10_device *chip_device;
|
||||||
NvU32 numNvswitches;
|
|
||||||
NvlStatus status;
|
|
||||||
|
|
||||||
physicalId = nvswitch_read_physical_id(device);
|
physicalId = nvswitch_read_physical_id(device);
|
||||||
chip_device = NVSWITCH_GET_CHIP_DEVICE_LR10(device);
|
chip_device = NVSWITCH_GET_CHIP_DEVICE_LR10(device);
|
||||||
@ -2542,30 +2510,16 @@ nvswitch_does_link_need_termination_enabled_lr10
|
|||||||
chip_device->disabledRemoteEndLinkMask = 0;
|
chip_device->disabledRemoteEndLinkMask = 0;
|
||||||
if (nvlink_lib_is_registerd_device_with_reduced_config())
|
if (nvlink_lib_is_registerd_device_with_reduced_config())
|
||||||
{
|
{
|
||||||
for (i = 0; i < NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK; ++i)
|
for (i = 0; i < NUM_SWITCH_WITH_DISCONNETED_REMOTE_LINK; ++i)
|
||||||
|
{
|
||||||
|
if (nvswitchDisconnetedRemoteLinkMasks[i].switchPhysicalId == physicalId)
|
||||||
{
|
{
|
||||||
if (nvswitchDisconnetedRemoteLinkMasks[i].switchPhysicalId == physicalId)
|
chip_device->disabledRemoteEndLinkMask =
|
||||||
{
|
nvswitchDisconnetedRemoteLinkMasks[i].linkMask;
|
||||||
chip_device->disabledRemoteEndLinkMask |=
|
break;
|
||||||
nvswitchDisconnetedRemoteLinkMasks[i].accessLinkMask;
|
|
||||||
|
|
||||||
status = nvlink_lib_return_device_count_by_type(NVLINK_DEVICE_TYPE_NVSWITCH, &numNvswitches);
|
|
||||||
if (status != NVL_SUCCESS)
|
|
||||||
{
|
|
||||||
NVSWITCH_PRINT(device, ERROR,
|
|
||||||
"%s: Failed to get nvswitch device count!\n", __FUNCTION__);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (numNvswitches <= NVSWITCH_NUM_DEVICES_PER_DELTA_LR10)
|
|
||||||
{
|
|
||||||
chip_device->disabledRemoteEndLinkMask |=
|
|
||||||
nvswitchDisconnetedRemoteLinkMasks[i].trunkLinkMask;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
chip_device->bDisabledRemoteEndLinkMaskCached = NV_TRUE;
|
chip_device->bDisabledRemoteEndLinkMaskCached = NV_TRUE;
|
||||||
}
|
}
|
||||||
|
@ -1006,9 +1006,6 @@ struct OBJGPU {
|
|||||||
NvU32 subdeviceInstance;
|
NvU32 subdeviceInstance;
|
||||||
NvS32 numaNodeId;
|
NvS32 numaNodeId;
|
||||||
_GPU_UUID gpuUuid;
|
_GPU_UUID gpuUuid;
|
||||||
NvU32 gpuPhysicalId;
|
|
||||||
NvU32 gpuTerminatedLinkMask;
|
|
||||||
NvBool gpuLinkTerminationEnabled;
|
|
||||||
NvBool gspRmInitialized;
|
NvBool gspRmInitialized;
|
||||||
_GPU_PCIE_PEER_CLIQUE pciePeerClique;
|
_GPU_PCIE_PEER_CLIQUE pciePeerClique;
|
||||||
NvU32 i2cPortForExtdev;
|
NvU32 i2cPortForExtdev;
|
||||||
@ -2422,19 +2419,6 @@ static inline void gpuUpdateUserSharedData(struct OBJGPU *pGpu) {
|
|||||||
|
|
||||||
#define gpuUpdateUserSharedData_HAL(pGpu) gpuUpdateUserSharedData(pGpu)
|
#define gpuUpdateUserSharedData_HAL(pGpu) gpuUpdateUserSharedData(pGpu)
|
||||||
|
|
||||||
void gpuGetTerminatedLinkMask_GA100(struct OBJGPU *pGpu, NvU32 arg0);
|
|
||||||
|
|
||||||
|
|
||||||
#ifdef __nvoc_gpu_h_disabled
|
|
||||||
static inline void gpuGetTerminatedLinkMask(struct OBJGPU *pGpu, NvU32 arg0) {
|
|
||||||
NV_ASSERT_FAILED_PRECOMP("OBJGPU was disabled!");
|
|
||||||
}
|
|
||||||
#else //__nvoc_gpu_h_disabled
|
|
||||||
#define gpuGetTerminatedLinkMask(pGpu, arg0) gpuGetTerminatedLinkMask_GA100(pGpu, arg0)
|
|
||||||
#endif //__nvoc_gpu_h_disabled
|
|
||||||
|
|
||||||
#define gpuGetTerminatedLinkMask_HAL(pGpu, arg0) gpuGetTerminatedLinkMask(pGpu, arg0)
|
|
||||||
|
|
||||||
NV_STATUS gpuJtVersionSanityCheck_TU102(struct OBJGPU *pGpu);
|
NV_STATUS gpuJtVersionSanityCheck_TU102(struct OBJGPU *pGpu);
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
NVIDIA_VERSION = 535.86.05
|
NVIDIA_VERSION = 535.86.10
|
||||||
|
|
||||||
# This file.
|
# This file.
|
||||||
VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))
|
VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))
|
||||||
|
Loading…
Reference in New Issue
Block a user