Package: release.debian.org
Severity: normal
Tags: bullseye
User: release.debian....@packages.debian.org
Usertags: pu

[ Reason ]
This is a rebuild of nvidia-settings/525.125.06-1~deb12u1 as
nvidia-settings-tesla/525.125.06-1~deb12u1 fixing a potential crash.

[ Impact ]
minor bugfix

[ Tests ]
none, requires nvidia GPU and driver usage to be tested

[ Risks ]
low, in contrib

[ Checklist ]
  [x] *all* changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach debdiff against the package in (old)stable
  [x] the issue is verified as fixed in unstable

[ Changes ]

[ Other info ]
I prefer to keep nvidia-settings and nvidia-settings-tesla in sync.


Andreas
diff --git a/debian/changelog b/debian/changelog
index f3df7e0..bddb60e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,33 @@
+nvidia-settings-tesla (525.125.06-1~deb12u1) bookworm; urgency=medium
+
+  * Rebuild for bookworm.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 12 Jul 2023 01:19:40 +0200
+
+nvidia-settings-tesla (525.125.06-1) unstable; urgency=medium
+
+  * Rebuild as nvidia-settings-tesla.
+
+ -- Andreas Beckmann <a...@debian.org>  Wed, 12 Jul 2023 00:04:57 +0200
+
+nvidia-settings (525.125.06-1) unstable; urgency=medium
+
+  * New upstream release 525.125.06.
+  * New upstream release 525.105.17.
+    - Fixed a bug that could cause the nvidia-settings control panel to
+      crash when resetting the display layout.
+  * Upload to unstable.
+
+ -- Andreas Beckmann <a...@debian.org>  Tue, 11 Jul 2023 23:27:45 +0200
+
+nvidia-settings (525.85.05-2) experimental; urgency=medium
+
+  * Move source package back to contrib.
+  * libxnvctrl0, libxnvctrl-dev are now built by src:libxnvctrl.
+  * Upload to experimental.
+
+ -- Andreas Beckmann <a...@debian.org>  Tue, 18 Apr 2023 22:28:02 +0200
+
 nvidia-settings-tesla (525.85.05-1) unstable; urgency=medium
 
   * Rebuild as nvidia-settings-tesla.
diff --git a/debian/copyright b/debian/copyright
index 1c62a8b..d41447d 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -10,7 +10,7 @@ Disclaimer:
  proprietary NVIDIA drivers in non-free.
 
 Files: *
-Copyright: (C) 2004-2021 NVIDIA Corporation
+Copyright: (C) 2004-2023 NVIDIA Corporation
 License: GPL-2
 
 Files: samples/*
diff --git a/doc/version.mk b/doc/version.mk
index 36f5738..33fa123 100644
--- a/doc/version.mk
+++ b/doc/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 525.85.05
+NVIDIA_VERSION = 525.125.06
 
 # This file.
 VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))
diff --git a/samples/version.mk b/samples/version.mk
index 36f5738..33fa123 100644
--- a/samples/version.mk
+++ b/samples/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 525.85.05
+NVIDIA_VERSION = 525.125.06
 
 # This file.
 VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))
diff --git a/src/gtk+-2.x/ctkslimm.c b/src/gtk+-2.x/ctkslimm.c
index ed1ca88..d476f59 100644
--- a/src/gtk+-2.x/ctkslimm.c
+++ b/src/gtk+-2.x/ctkslimm.c
@@ -1292,7 +1292,7 @@ static nvDisplayPtr setup_display(CtkMMDialog 
*ctk_mmdialog)
 void update_mosaic_dialog_ui(CtkMMDialog *ctk_mmdialog, nvLayoutPtr layout)
 {
     nvModeLineItemPtr iter;
-    char *id;
+    char *id = NULL;
 
     if (ctk_mmdialog == NULL) {
         return;
@@ -1300,6 +1300,7 @@ void update_mosaic_dialog_ui(CtkMMDialog *ctk_mmdialog, 
nvLayoutPtr layout)
 
     if (layout) {
         ctk_mmdialog->layout = layout;
+        ctk_mmdialog->cur_modeline = NULL;
     }
 
     parse_slimm_layout(ctk_mmdialog,
@@ -1307,12 +1308,14 @@ void update_mosaic_dialog_ui(CtkMMDialog *ctk_mmdialog, 
nvLayoutPtr layout)
                        &ctk_mmdialog->h_overlap_parsed,
                        &ctk_mmdialog->v_overlap_parsed);
 
-    id = g_strdup(ctk_mmdialog->cur_modeline->data.identifier);
+    if (ctk_mmdialog->cur_modeline) {
+        id = g_strdup(ctk_mmdialog->cur_modeline->data.identifier);
+    }
 
     setup_display(ctk_mmdialog);
 
     iter = ctk_mmdialog->modelines;
-    while (iter->next) {
+    while (id && iter->next) {
         if (strcmp(id, iter->modeline->data.identifier) == 0) {
             ctk_mmdialog->cur_modeline = iter->modeline;
             break;
diff --git a/src/libXNVCtrl/version.mk b/src/libXNVCtrl/version.mk
index 36f5738..33fa123 100644
--- a/src/libXNVCtrl/version.mk
+++ b/src/libXNVCtrl/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 525.85.05
+NVIDIA_VERSION = 525.125.06
 
 # This file.
 VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))
diff --git a/src/nvml.h b/src/nvml.h
index 0da0f8c..9ac2324 100644
--- a/src/nvml.h
+++ b/src/nvml.h
@@ -1,5 +1,5 @@
 /*
- * Copyright 1993-2022 NVIDIA Corporation.  All rights reserved.
+ * Copyright 1993-2023 NVIDIA Corporation.  All rights reserved.
  *
  * NOTICE TO USER:
  *
@@ -525,6 +525,7 @@ typedef enum nvmlValueType_enum
     NVML_VALUE_TYPE_UNSIGNED_LONG = 2,
     NVML_VALUE_TYPE_UNSIGNED_LONG_LONG = 3,
     NVML_VALUE_TYPE_SIGNED_LONG_LONG = 4,
+    NVML_VALUE_TYPE_SIGNED_INT = 5,
 
     // Keep this last
     NVML_VALUE_TYPE_COUNT
@@ -537,6 +538,7 @@ typedef enum nvmlValueType_enum
 typedef union nvmlValue_st
 {
     double dVal;                    //!< If the value is double
+    int siVal;                      //!< If the value is signed long long
     unsigned int uiVal;             //!< If the value is unsigned int
     unsigned long ulVal;            //!< If the value is unsigned long
     unsigned long long ullVal;      //!< If the value is unsigned long long
@@ -1730,7 +1732,39 @@ typedef struct nvmlGpuDynamicPstatesInfo_st
 
 #define NVML_FI_DEV_PCIE_L0_TO_RECOVERY_COUNTER       169 //!< Device PEX 
error recovery counter
 
-#define NVML_FI_MAX 170 //!< One greater than the largest field ID defined 
above
+/*
+ * PCIe error counter
+ */
+#define NVML_FI_DEV_PCIE_COUNT_CORRECTABLE_ERRORS     173
+#define NVML_FI_DEV_PCIE_COUNT_NAKS_RECEIVED          174
+#define NVML_FI_DEV_PCIE_COUNT_RECEIVER_ERROR         175
+#define NVML_FI_DEV_PCIE_COUNT_BAD_TLP                176
+#define NVML_FI_DEV_PCIE_COUNT_NAKS_SENT              177
+#define NVML_FI_DEV_PCIE_COUNT_BAD_DLLP               178
+#define NVML_FI_DEV_PCIE_COUNT_NON_FATAL_ERROR        179
+#define NVML_FI_DEV_PCIE_COUNT_FATAL_ERROR            180
+#define NVML_FI_DEV_PCIE_COUNT_UNSUPPORTED_REQ        181
+#define NVML_FI_DEV_PCIE_COUNT_LCRC_ERROR             182 
+
+/**
+ * Retrieves power usage for this GPU in milliwatts.
+ * It is only available if power management mode is supported. See \ref 
nvmlDeviceGetPowerManagementMode and
+ * \ref nvmlDeviceGetPowerUsage.
+ */
+#define NVML_FI_DEV_POWER_AVERAGE                     185 //!< GPU power 
averaged over 1 sec interval, supported on Ampere (except GA100) or newer 
architectures.
+#define NVML_FI_DEV_POWER_INSTANT                     186 //!< Current GPU 
power, supported on all architectures.
+
+/**
+ * GPU T.Limit temperature thresholds in degree Celsius
+ *
+ * These fields are supported on Ada and later architectures and supersedes 
\ref nvmlDeviceGetTemperatureThreshold.
+ */
+#define NVML_FI_DEV_TEMPERATURE_SHUTDOWN_TLIMIT       193 //!< T.Limit 
temperature after which GPU may shut down for HW protection
+#define NVML_FI_DEV_TEMPERATURE_SLOWDOWN_TLIMIT       194 //!< T.Limit 
temperature after which GPU may begin HW slowdown
+#define NVML_FI_DEV_TEMPERATURE_MEM_MAX_TLIMIT        195 //!< T.Limit 
temperature after which GPU may begin SW slowdown due to memory temperature
+#define NVML_FI_DEV_TEMPERATURE_GPU_MAX_TLIMIT        196 //!< T.Limit 
temperature after which GPU may be throttled below base clock
+
+#define NVML_FI_MAX 197 //!< One greater than the largest field ID defined 
above
 
 /**
  * Information for a Field Value Sample
@@ -2140,7 +2174,7 @@ typedef struct nvmlEncoderSessionInfo_st
  */
 typedef enum nvmlFBCSessionType_enum
 {
-    NVML_FBC_SESSION_TYPE_UNKNOWN = 0,     //!< Unknwon
+    NVML_FBC_SESSION_TYPE_UNKNOWN = 0,     //!< Unknown
     NVML_FBC_SESSION_TYPE_TOSYS,           //!< ToSys
     NVML_FBC_SESSION_TYPE_CUDA,            //!< Cuda
     NVML_FBC_SESSION_TYPE_VID,             //!< Vid
@@ -3641,6 +3675,20 @@ nvmlReturn_t DECLDIR nvmlDeviceGetClockInfo(nvmlDevice_t 
device, nvmlClockType_t
  */
 nvmlReturn_t DECLDIR nvmlDeviceGetMaxClockInfo(nvmlDevice_t device, 
nvmlClockType_t type, unsigned int *clock);
 
+/**
+ * Retrieve the GPCCLK VF offset value
+ * @param[in]   device                         The identifier of the target 
device
+ * @param[out]  offset                         The retrieved GPCCLK VF offset 
value
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetGpcClkVfOffset(nvmlDevice_t device, int 
*offset);
+
 /**
  * Retrieves the current setting of a clock that applications will use unless 
an overspec situation occurs.
  * Can be changed using \ref nvmlDeviceSetApplicationsClocks.
@@ -4097,6 +4145,14 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetTemperature(nvmlDevice_t device, nvmlTemperatu
  *
  * See \ref nvmlTemperatureThresholds_t for details on available temperature 
thresholds.
  *
+ * Note: This API is no longer the preferred interface for retrieving the 
following temperature thresholds
+ * on Ada and later architectures: NVML_TEMPERATURE_THRESHOLD_SHUTDOWN, 
NVML_TEMPERATURE_THRESHOLD_SLOWDOWN,
+ * NVML_TEMPERATURE_THRESHOLD_MEM_MAX and NVML_TEMPERATURE_THRESHOLD_GPU_MAX.
+ *
+ * Support for reading these temperature thresholds for Ada and later 
architectures would be removed from this
+ * API in future releases. Please use \ref nvmlDeviceGetFieldValues with 
NVML_FI_DEV_TEMPERATURE_* fields to retrieve
+ * temperature thresholds on these architectures.
+ *
  * @param device                               The identifier of the target 
device
  * @param thresholdType                        The type of threshold value 
queried
  * @param temp                                 Reference in which to return 
the temperature reading
@@ -4237,6 +4293,113 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetSupportedClocksThrottleReasons(nvmlDevice_t de
  */
 nvmlReturn_t DECLDIR nvmlDeviceGetPowerState(nvmlDevice_t device, 
nvmlPstates_t *pState);
 
+/**
+ * Retrieve performance monitor samples from the associated subdevice.
+ *
+ * @param device
+ * @param pDynamicPstatesInfo
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a pDynamicPstatesInfo has 
been set
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
pDynamicPstatesInfo is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen 
off the bus or is otherwise inaccessible
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetDynamicPstatesInfo(nvmlDevice_t device, 
nvmlGpuDynamicPstatesInfo_t *pDynamicPstatesInfo);
+
+/**
+ * Retrieve the MemClk (Memory Clock) VF offset value.
+ * @param[in]   device                         The identifier of the target 
device
+ * @param[out]  offset                         The retrieved MemClk VF offset 
value
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetMemClkVfOffset(nvmlDevice_t device, int 
*offset);
+
+/**
+ * Retrieve min and max clocks of some clock domain for a given PState
+ *
+ * @param device                               The identifier of the target 
device
+ * @param type                                 Clock domain
+ * @param pstate                               PState to query
+ * @param minClockMHz                          Reference in which to return 
min clock frequency
+ * @param maxClockMHz                          Reference in which to return 
max clock frequency
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if everything worked
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device, \a type or \a 
pstate are invalid or both
+ *                                                  \a minClockMHz and \a 
maxClockMHz are NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetMinMaxClockOfPState(nvmlDevice_t device, 
nvmlClockType_t type, nvmlPstates_t pstate,
+                                                      unsigned int * 
minClockMHz, unsigned int * maxClockMHz);
+
+/**
+ * Get all supported Performance States (P-States) for the device.
+ *
+ * The returned array would contain a contiguous list of valid P-States 
supported by
+ * the device. If the number of supported P-States is fewer than the size of 
the array
+ * supplied missing elements would contain \a NVML_PSTATE_UNKNOWN.
+ *
+ * The number of elements in the returned list will never exceed \a 
NVML_MAX_GPU_PERF_PSTATES.
+ *
+ * @param device                               The identifier of the target 
device
+ * @param pstates                              Container to return the list of 
performance states
+ *                                             supported by device
+ * @param size                                 Size of the supplied \a pstates 
array in bytes
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a pstates array has been 
retrieved
+ *         - \ref NVML_ERROR_INSUFFICIENT_SIZE if the the container supplied 
was not large enough to
+ *                                             hold the resulting list
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device or \a pstates is 
invalid
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
performance state readings
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetSupportedPerformanceStates(nvmlDevice_t 
device,
+                                                             nvmlPstates_t 
*pstates, unsigned int size);
+
+/**
+ * Retrieve the GPCCLK min max VF offset value.
+ * @param[in]   device                         The identifier of the target 
device
+ * @param[out]  minOffset                      The retrieved GPCCLK VF min 
offset value
+ * @param[out]  maxOffset                      The retrieved GPCCLK VF max 
offset value
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetGpcClkMinMaxVfOffset(nvmlDevice_t device,
+                                                       int *minOffset, int 
*maxOffset);
+
+/**
+ * Retrieve the MemClk (Memory Clock) min max VF offset value.
+ * @param[in]   device                         The identifier of the target 
device
+ * @param[out]  minOffset                      The retrieved MemClk VF min 
offset value
+ * @param[out]  maxOffset                      The retrieved MemClk VF max 
offset value
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetMemClkMinMaxVfOffset(nvmlDevice_t device,
+                                                       int *minOffset, int 
*maxOffset);
+
 /**
  * This API has been deprecated.
  *
@@ -4336,7 +4499,12 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetPowerManagementDefaultLimit(nvmlDevice_t devic
  *
  * For Fermi &tm; or newer fully supported devices.
  *
- * On Fermi and Kepler GPUs the reading is accurate to within +/- 5% of 
current power draw.
+ * On Fermi and Kepler GPUs the reading is accurate to within +/- 5% of 
current power draw. On Ampere
+ * (except GA100) or newer GPUs, the API returns power averaged over 1 sec 
interval. On GA100 and
+ * older architectures, instantaneous power is returned.
+ *
+ * See \ref NVML_FI_DEV_POWER_AVERAGE and \ref NVML_FI_DEV_POWER_INSTANT to 
query specific power
+ * values.
  *
  * It is only available if power management mode is supported. See \ref 
nvmlDeviceGetPowerManagementMode.
  *
@@ -4792,10 +4960,10 @@ nvmlReturn_t DECLDIR nvmlDeviceGetEncoderStats 
(nvmlDevice_t device, unsigned in
  * Retrieves information about active encoder sessions on a target device.
  *
  * An array of active encoder sessions is returned in the caller-supplied 
buffer pointed at by \a sessionInfos. The
- * array elememt count is passed in \a sessionCount, and \a sessionCount is 
used to return the number of sessions
+ * array element count is passed in \a sessionCount, and \a sessionCount is 
used to return the number of sessions
  * written to the buffer.
  *
- * If the supplied buffer is not large enough to accomodate the active session 
array, the function returns
+ * If the supplied buffer is not large enough to accommodate the active 
session array, the function returns
  * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of 
nvmlEncoderSessionInfo_t array required in \a sessionCount.
  * To query the number of active encoder sessions, call this function with 
*sessionCount = 0.  The code will return
  * NVML_SUCCESS with number of active encoder sessions updated in 
*sessionCount.
@@ -4844,7 +5012,7 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetDecoderUtilization(nvmlDevice_t device, unsign
 * For Maxwell &tm; or newer fully supported devices.
 *
 * @param device                            The identifier of the target device
-* @param fbcStats                          Reference to nvmlFBCStats_t 
structure contianing NvFBC stats
+* @param fbcStats                          Reference to nvmlFBCStats_t 
structure containing NvFBC stats
 *
 * @return
 *         - \ref NVML_SUCCESS                  if \a fbcStats is fetched
@@ -4862,7 +5030,7 @@ nvmlReturn_t DECLDIR nvmlDeviceGetFBCStats(nvmlDevice_t 
device, nvmlFBCStats_t *
 * array element count is passed in \a sessionCount, and \a sessionCount is 
used to return the number of sessions
 * written to the buffer.
 *
-* If the supplied buffer is not large enough to accomodate the active session 
array, the function returns
+* If the supplied buffer is not large enough to accommodate the active session 
array, the function returns
 * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of nvmlFBCSessionInfo_t 
array required in \a sessionCount.
 * To query the number of active FBC sessions, call this function with 
*sessionCount = 0.  The code will return
 * NVML_SUCCESS with number of active FBC sessions updated in *sessionCount.
@@ -5339,6 +5507,41 @@ nvmlReturn_t DECLDIR nvmlDeviceGetPcieSpeed(nvmlDevice_t 
device, unsigned int *p
  */
 nvmlReturn_t DECLDIR nvmlDeviceGetAdaptiveClockInfoStatus(nvmlDevice_t device, 
unsigned int *adaptiveClockStatus);
 
+/**
+ * Get the type of the GPU Bus (PCIe, PCI, ...)
+ *
+ * @param device                               The identifier of the target 
device
+ * @param type                                 The PCI Bus type
+ *
+ * return
+ *         - \ref NVML_SUCCESS                 if the bus \a type is 
successfully retreived
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \device is invalid or \type 
is NULL
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetBusType(nvmlDevice_t device, nvmlBusType_t 
*type);
+
+/**
+ * Get fabric information associated with the device.
+ *
+ * %HOPPER_OR_NEWER%
+ *
+ * On Hopper + NVSwitch systems, GPU is registered with the NVIDIA Fabric 
Manager
+ * Upon successful registration, the GPU is added to the NVLink fabric to 
enable
+ * peer-to-peer communication.
+ * This API reports the current state of the GPU in the NVLink fabric
+ * along with other useful information.
+ *
+ * @param device                               The identifier of the target 
device
+ * @param gpuFabricInfo                        Information about GPU fabric 
state
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 Upon success
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     If \a device doesn't support 
gpu fabric
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetGpuFabricInfo(nvmlDevice_t device, 
nvmlGpuFabricInfo_t *gpuFabricInfo);
+
+
 /**
  * @}
  */
@@ -5501,7 +5704,7 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetRetiredPages(nvmlDevice_t device, nvmlPageReti
  * The address information provided from this API is the hardware address of 
the page that was retired.  Note
  * that this does not match the virtual address used in CUDA, but will match 
the address information in XID 63
  *
- * \note nvmlDeviceGetRetiredPages_v2 adds an additional timestamps paramter 
to return the time of each page's
+ * \note nvmlDeviceGetRetiredPages_v2 adds an additional timestamps parameter 
to return the time of each page's
  *       retirement.
  *
  * For Kepler &tm; or newer fully supported devices.
@@ -5838,7 +6041,7 @@ typedef enum nvmlClockLimitId_enum {
  * Set clocks that device will lock to.
  *
  * Sets the clocks that the device will be running at to the value in the 
range of minGpuClockMHz to maxGpuClockMHz.
- * Setting this will supercede application clock values and take effect 
regardless if a cuda app is running.
+ * Setting this will supersede application clock values and take effect 
regardless if a cuda app is running.
  * See /ref nvmlDeviceSetApplicationsClocks
  *
  * Can be used as a setting to request constant performance.
@@ -6105,6 +6308,60 @@ nvmlReturn_t DECLDIR 
nvmlDeviceSetGpuOperationMode(nvmlDevice_t device, nvmlGpuO
  */
 nvmlReturn_t DECLDIR nvmlDeviceSetAPIRestriction(nvmlDevice_t device, 
nvmlRestrictedAPI_t apiType, nvmlEnableState_t isRestricted);
 
+/**
+ * Sets the speed of a specified fan.
+ *
+ * WARNING: This function changes the fan control policy to manual. It means 
that YOU have to monitor
+ *          the temperature and adjust the fan speed accordingly.
+ *          If you set the fan speed too low you can burn your GPU!
+ *          Use nvmlDeviceSetDefaultFanSpeed_v2 to restore default control 
policy.
+ *
+ * For all cuda-capable discrete products with fans that are Maxwell or Newer.
+ *
+ * device                                The identifier of the target device
+ * fan                                   The index of the fan, starting at zero
+ * speed                                 The target speed of the fan [0-100] 
in % of max speed
+ *
+ * return
+ *        NVML_SUCCESS                   if the fan speed has been set
+ *        NVML_ERROR_UNINITIALIZED       if the library has not been 
successfully initialized
+ *        NVML_ERROR_INVALID_ARGUMENT    if the device is not valid, or the 
speed is outside acceptable ranges,
+ *                                              or if the fan index doesn't 
reference an actual fan.
+ *        NVML_ERROR_NOT_SUPPORTED       if the device is older than Maxwell.
+ *        NVML_ERROR_UNKNOWN             if there was an unexpected error.
+ */
+nvmlReturn_t DECLDIR nvmlDeviceSetFanSpeed_v2(nvmlDevice_t device, unsigned 
int fan, unsigned int speed);
+
+/**
+ * Set the GPCCLK VF offset value
+ * @param[in]   device                         The identifier of the target 
device
+ * @param[in]   offset                         The GPCCLK VF offset value to 
set
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a offset has been set
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen 
off the bus or is otherwise inaccessible
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceSetGpcClkVfOffset(nvmlDevice_t device, int 
offset);
+
+/**
+ * Set the MemClk (Memory Clock) VF offset value. It requires elevated 
privileges.
+ * @param[in]   device                         The identifier of the target 
device
+ * @param[in]   offset                         The MemClk VF offset value to 
set
+ *
+ * @return
+ *         - \ref NVML_SUCCESS                 if \a offset has been set
+ *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
+ *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
+ *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
+ *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen 
off the bus or is otherwise inaccessible
+ *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
+ */
+nvmlReturn_t DECLDIR nvmlDeviceSetMemClkVfOffset(nvmlDevice_t device, int 
offset);
+
 /**
  * @}
  */
@@ -6955,7 +7212,7 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetVgpuCapabilities(nvmlDevice_t device, nvmlDevi
  * pointed at by \a vgpuTypeIds. The element count of nvmlVgpuTypeId_t array 
is passed in \a vgpuCount, and \a vgpuCount
  * is used to return the number of vGPU types written to the buffer.
  *
- * If the supplied buffer is not large enough to accomodate the vGPU type 
array, the function returns
+ * If the supplied buffer is not large enough to accommodate the vGPU type 
array, the function returns
  * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of nvmlVgpuTypeId_t 
array required in \a vgpuCount.
  * To query the number of vGPU types supported for the GPU, call this function 
with *vgpuCount = 0.
  * The code will return NVML_ERROR_INSUFFICIENT_SIZE, or NVML_SUCCESS if no 
vGPU types are supported.
@@ -6984,9 +7241,9 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetSupportedVgpus(nvmlDevice_t device, unsigned i
  * can concurrently run on a device.  For example, if only one vGPU type is 
allowed at a time on a device, then the creatable
  * list will be restricted to whatever vGPU type is already running on the 
device.
  *
- * If the supplied buffer is not large enough to accomodate the vGPU type 
array, the function returns
+ * If the supplied buffer is not large enough to accommodate the vGPU type 
array, the function returns
  * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of nvmlVgpuTypeId_t 
array required in \a vgpuCount.
- * To query the number of vGPU types createable for the GPU, call this 
function with *vgpuCount = 0.
+ * To query the number of vGPU types that can be created for the GPU, call 
this function with *vgpuCount = 0.
  * The code will return NVML_ERROR_INSUFFICIENT_SIZE, or NVML_SUCCESS if no 
vGPU types are creatable.
  *
  * @param device                   The identifier of the target device
@@ -7066,7 +7323,7 @@ nvmlReturn_t DECLDIR 
nvmlVgpuTypeGetGpuInstanceProfileId(nvmlVgpuTypeId_t vgpuTy
  *
  * @param vgpuTypeId               Handle to vGPU type
  * @param deviceID                 Device ID and vendor ID of the device 
contained in single 32 bit value
- * @param subsystemID              Subsytem ID and subsytem vendor ID of the 
device contained in single 32 bit value
+ * @param subsystemID              Subsystem ID and subsystem vendor ID of the 
device contained in single 32 bit value
  *
  * @return
  *         - \ref NVML_SUCCESS                 successful completion
@@ -7205,10 +7462,10 @@ nvmlReturn_t DECLDIR 
nvmlVgpuTypeGetMaxInstancesPerVm(nvmlVgpuTypeId_t vgpuTypeI
  * Retrieve the active vGPU instances on a device.
  *
  * An array of active vGPU instances is returned in the caller-supplied buffer 
pointed at by \a vgpuInstances. The
- * array elememt count is passed in \a vgpuCount, and \a vgpuCount is used to 
return the number of vGPU instances
+ * array element count is passed in \a vgpuCount, and \a vgpuCount is used to 
return the number of vGPU instances
  * written to the buffer.
  *
- * If the supplied buffer is not large enough to accomodate the vGPU instance 
array, the function returns
+ * If the supplied buffer is not large enough to accommodate the vGPU instance 
array, the function returns
  * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of nvmlVgpuInstance_t 
array required in \a vgpuCount.
  * To query the number of active vGPU instances, call this function with 
*vgpuCount = 0.  The code will return
  * NVML_ERROR_INSUFFICIENT_SIZE, or NVML_SUCCESS if no vGPU Types are 
supported.
@@ -7409,7 +7666,7 @@ nvmlReturn_t DECLDIR 
nvmlVgpuInstanceGetEccMode(nvmlVgpuInstance_t vgpuInstance,
  * @param encoderCapacity          Reference to an unsigned int for the 
encoder capacity
  *
  * @return
- *         - \ref NVML_SUCCESS                 if \a encoderCapacity has been 
retrived
+ *         - \ref NVML_SUCCESS                 if \a encoderCapacity has been 
retrieved
  *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
  *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a vgpuInstance is 0, or \a 
encoderQueryType is invalid
  *         - \ref NVML_ERROR_NOT_FOUND         if \a vgpuInstance does not 
match a valid active vGPU instance on the system
@@ -7462,7 +7719,7 @@ nvmlReturn_t DECLDIR 
nvmlVgpuInstanceGetEncoderStats(nvmlVgpuInstance_t vgpuInst
  * array element count is passed in \a sessionCount, and \a sessionCount is 
used to return the number of sessions
  * written to the buffer.
  *
- * If the supplied buffer is not large enough to accomodate the active session 
array, the function returns
+ * If the supplied buffer is not large enough to accommodate the active 
session array, the function returns
  * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of 
nvmlEncoderSessionInfo_t array required in \a sessionCount.
  * To query the number of active encoder sessions, call this function with 
*sessionCount = 0. The code will return
  * NVML_SUCCESS with number of active encoder sessions updated in 
*sessionCount.
@@ -7492,7 +7749,7 @@ nvmlReturn_t DECLDIR 
nvmlVgpuInstanceGetEncoderSessions(nvmlVgpuInstance_t vgpuI
 * For Maxwell &tm; or newer fully supported devices.
 *
 * @param vgpuInstance                      Identifier of the target vGPU 
instance
-* @param fbcStats                          Reference to nvmlFBCStats_t 
structure contianing NvFBC stats
+* @param fbcStats                          Reference to nvmlFBCStats_t 
structure containing NvFBC stats
 *
 * @return
 *         - \ref NVML_SUCCESS                  if \a fbcStats is fetched
@@ -7510,7 +7767,7 @@ nvmlReturn_t DECLDIR 
nvmlVgpuInstanceGetFBCStats(nvmlVgpuInstance_t vgpuInstance
 * array element count is passed in \a sessionCount, and \a sessionCount is 
used to return the number of sessions
 * written to the buffer.
 *
-* If the supplied buffer is not large enough to accomodate the active session 
array, the function returns
+* If the supplied buffer is not large enough to accommodate the active session 
array, the function returns
 * NVML_ERROR_INSUFFICIENT_SIZE, with the element count of nvmlFBCSessionInfo_t 
array required in \a sessionCount.
 * To query the number of active FBC sessions, call this function with 
*sessionCount = 0.  The code will return
 * NVML_SUCCESS with number of active FBC sessions updated in *sessionCount.
@@ -7620,7 +7877,7 @@ typedef struct nvmlVgpuMetadata_st
     char                     
guestDriverVersion[NVML_SYSTEM_DRIVER_VERSION_BUFFER_SIZE]; //!< Version of 
driver installed in guest
     char                     
hostDriverVersion[NVML_SYSTEM_DRIVER_VERSION_BUFFER_SIZE];  //!< Version of 
driver installed in host
     unsigned int             reserved[6];                                      
          //!< Reserved for internal use
-    unsigned int             vgpuVirtualizationCaps;                           
          //!< vGPU virtualizaion capabilities bitfileld
+    unsigned int             vgpuVirtualizationCaps;                           
          //!< vGPU virtualization capabilities bitfield
     unsigned int             guestVgpuVersion;                                 
          //!< vGPU version of guest driver
     unsigned int             opaqueDataSize;                                   
          //!< Size of opaque data field in bytes
     char                     opaqueData[4];                                    
          //!< Opaque data
@@ -7634,7 +7891,7 @@ typedef struct nvmlVgpuPgpuMetadata_st
     unsigned int            version;                                           
         //!< Current version of the structure
     unsigned int            revision;                                          
         //!< Current revision of the structure
     char                    
hostDriverVersion[NVML_SYSTEM_DRIVER_VERSION_BUFFER_SIZE];  //!< Host driver 
version
-    unsigned int            pgpuVirtualizationCaps;                            
         //!< Pgpu virtualizaion capabilities bitfileld
+    unsigned int            pgpuVirtualizationCaps;                            
         //!< Pgpu virtualization capabilities bitfield
     unsigned int            reserved[5];                                       
         //!< Reserved for internal use
     nvmlVgpuVersion_t       hostSupportedVgpuRange;                            
         //!< vGPU version range supported by host driver
     unsigned int            opaqueDataSize;                                    
         //!< Size of opaque data field in bytes
@@ -7732,7 +7989,7 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetVgpuMetadata(nvmlDevice_t device, nvmlVgpuPgpu
  *
  * The caller passes in a buffer via \a compatibilityInfo, into which a 
compatibility information structure is written. The
  * structure defines the states in which the vGPU / VM may be booted on the 
physical GPU. If the vGPU / VM compatibility
- * with the physical GPU is limited, a limit code indicates the factor 
limiting compability.
+ * with the physical GPU is limited, a limit code indicates the factor 
limiting compatability.
  * (see \ref nvmlVgpuPgpuCompatibilityLimitCode_t for details).
  *
  * Note: vGPU compatibility does not take into account dynamic capacity 
conditions that may limit a system's ability to
@@ -9022,216 +9279,7 @@ nvmlReturn_t DECLDIR 
nvmlDeviceGetMigDeviceHandleByIndex(nvmlDevice_t device, un
  */
 nvmlReturn_t DECLDIR nvmlDeviceGetDeviceHandleFromMigDeviceHandle(nvmlDevice_t 
migDevice, nvmlDevice_t *device);
 
-/**
- * Get the type of the GPU Bus (PCIe, PCI, ...)
- *
- * @param device                               The identifier of the target 
device
- * @param type                                 The PCI Bus type
- *
- * return
- *         - \ref NVML_SUCCESS                 if the bus \a type is 
successfully retreived
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \device is invalid or \type 
is NULL
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetBusType(nvmlDevice_t device, nvmlBusType_t 
*type);
-
-/**
- * Retrieve performance monitor samples from the associated subdevice.
- *
- * @param device
- * @param pDynamicPstatesInfo
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a pDynamicPstatesInfo has 
been set
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
pDynamicPstatesInfo is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen 
off the bus or is otherwise inaccessible
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetDynamicPstatesInfo(nvmlDevice_t device, 
nvmlGpuDynamicPstatesInfo_t *pDynamicPstatesInfo);
-
-/**
- * Sets the speed of a specified fan.
- *
- * WARNING: This function changes the fan control policy to manual. It means 
that YOU have to monitor
- *          the temperature and adjust the fan speed accordingly.
- *          If you set the fan speed too low you can burn your GPU!
- *          Use nvmlDeviceSetDefaultFanSpeed_v2 to restore default control 
policy.
- *
- * For all cuda-capable discrete products with fans that are Maxwell or Newer.
- *
- * device                                The identifier of the target device
- * fan                                   The index of the fan, starting at zero
- * speed                                 The target speed of the fan [0-100] 
in % of max speed
- *
- * return
- *        NVML_SUCCESS                   if the fan speed has been set
- *        NVML_ERROR_UNINITIALIZED       if the library has not been 
successfully initialized
- *        NVML_ERROR_INVALID_ARGUMENT    if the device is not valid, or the 
speed is outside acceptable ranges,
- *                                              or if the fan index doesn't 
reference an actual fan.
- *        NVML_ERROR_NOT_SUPPORTED       if the device is older than Maxwell.
- *        NVML_ERROR_UNKNOWN             if there was an unexpected error.
- */
-nvmlReturn_t DECLDIR nvmlDeviceSetFanSpeed_v2(nvmlDevice_t device, unsigned 
int fan, unsigned int speed);
-
-/**
- * Retrieve the GPCCLK VF offset value
- * @param[in]   device                         The identifier of the target 
device
- * @param[out]  offset                         The retrieved GPCCLK VF offset 
value
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetGpcClkVfOffset(nvmlDevice_t device, int 
*offset);
-
-/**
- * Set the GPCCLK VF offset value
- * @param[in]   device                         The identifier of the target 
device
- * @param[in]   offset                         The GPCCLK VF offset value to 
set
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a offset has been set
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen 
off the bus or is otherwise inaccessible
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceSetGpcClkVfOffset(nvmlDevice_t device, int 
offset);
-
-/**
- * Retrieve the MemClk (Memory Clock) VF offset value.
- * @param[in]   device                         The identifier of the target 
device
- * @param[out]  offset                         The retrieved MemClk VF offset 
value
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetMemClkVfOffset(nvmlDevice_t device, int 
*offset);
-
-/**
- * Set the MemClk (Memory Clock) VF offset value. It requires elevated 
privileges.
- * @param[in]   device                         The identifier of the target 
device
- * @param[in]   offset                         The MemClk VF offset value to 
set
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a offset has been set
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_GPU_IS_LOST       if the target GPU has fallen 
off the bus or is otherwise inaccessible
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceSetMemClkVfOffset(nvmlDevice_t device, int 
offset);
-
-/**
- * Retrieve min and max clocks of some clock domain for a given PState
- *
- * @param device                               The identifier of the target 
device
- * @param type                                 Clock domain
- * @param pstate                               PState to query
- * @param minClockMHz                          Reference in which to return 
min clock frequency
- * @param maxClockMHz                          Reference in which to return 
max clock frequency
- *
- * @return
- *         - \ref NVML_SUCCESS                 if everything worked
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device, \a type or \a 
pstate are invalid or both
- *                                                  \a minClockMHz and \a 
maxClockMHz are NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetMinMaxClockOfPState(nvmlDevice_t device, 
nvmlClockType_t type, nvmlPstates_t pstate,
-                                                      unsigned int * 
minClockMHz, unsigned int * maxClockMHz);
-
-/**
- * Get all supported Performance States (P-States) for the device.
- *
- * The returned array would contain a contiguous list of valid P-States 
supported by
- * the device. If the number of supported P-States is fewer than the size of 
the array
- * supplied missing elements would contain \a NVML_PSTATE_UNKNOWN.
- *
- * The number of elements in the returned list will never exceed \a 
NVML_MAX_GPU_PERF_PSTATES.
- *
- * @param device                               The identifier of the target 
device
- * @param pstates                              Container to return the list of 
performance states
- *                                             supported by device
- * @param size                                 Size of the supplied \a pstates 
array in bytes
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a pstates array has been 
retrieved
- *         - \ref NVML_ERROR_INSUFFICIENT_SIZE if the the container supplied 
was not large enough to
- *                                             hold the resulting list
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device or \a pstates is 
invalid
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
performance state readings
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetSupportedPerformanceStates(nvmlDevice_t 
device,
-                                                             nvmlPstates_t 
*pstates, unsigned int size);
-
-/**
- * Retrieve the GPCCLK min max VF offset value.
- * @param[in]   device                         The identifier of the target 
device
- * @param[out]  minOffset                      The retrieved GPCCLK VF min 
offset value
- * @param[out]  maxOffset                      The retrieved GPCCLK VF max 
offset value
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetGpcClkMinMaxVfOffset(nvmlDevice_t device,
-                                                       int *minOffset, int 
*maxOffset);
-
-/**
- * Retrieve the MemClk (Memory Clock) min max VF offset value.
- * @param[in]   device                         The identifier of the target 
device
- * @param[out]  minOffset                      The retrieved MemClk VF min 
offset value
- * @param[out]  maxOffset                      The retrieved MemClk VF max 
offset value
- *
- * @return
- *         - \ref NVML_SUCCESS                 if \a offset has been 
successfully queried
- *         - \ref NVML_ERROR_UNINITIALIZED     if the library has not been 
successfully initialized
- *         - \ref NVML_ERROR_INVALID_ARGUMENT  if \a device is invalid or \a 
offset is NULL
- *         - \ref NVML_ERROR_NOT_SUPPORTED     if the device does not support 
this feature
- *         - \ref NVML_ERROR_UNKNOWN           on any unexpected error
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetMemClkMinMaxVfOffset(nvmlDevice_t device,
-                                                       int *minOffset, int 
*maxOffset);
-
-/**
- * Get fabric information associated with the device.
- *
- * %HOPPER_OR_NEWER%
- *
- * On Hopper + NVSwitch systems, GPU is registered with the NVIDIA Fabric 
Manager
- * Upon successful registration, the GPU is added to the NVLink fabric to 
enable
- * peer-to-peer communication.
- * This API reports the current state of the GPU in the NVLink fabric
- * along with other useful information.
- *
- * @param device                               The identifier of the target 
device
- * @param gpuFabricInfo                        Information about GPU fabric 
state
- *
- * @return
- *         - \ref NVML_SUCCESS                 Upon success
- *         - \ref NVML_ERROR_NOT_SUPPORTED     If \a device doesn't support 
gpu fabric
- */
-nvmlReturn_t DECLDIR nvmlDeviceGetGpuFabricInfo(nvmlDevice_t device, 
nvmlGpuFabricInfo_t *gpuFabricInfo);
-
-/** @} */
+/** @} */ // @defgroup nvmlMultiInstanceGPU
 
 
/***************************************************************************************************/
 /** @defgroup GPM NVML GPM
diff --git a/src/version.mk b/src/version.mk
index 36f5738..33fa123 100644
--- a/src/version.mk
+++ b/src/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 525.85.05
+NVIDIA_VERSION = 525.125.06
 
 # This file.
 VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))
diff --git a/version.mk b/version.mk
index 36f5738..33fa123 100644
--- a/version.mk
+++ b/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 525.85.05
+NVIDIA_VERSION = 525.125.06
 
 # This file.
 VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))

Reply via email to