From 288f16e61492d0dcdbb538a812f095d86c5bfb3e Mon Sep 17 00:00:00 2001 From: Maneet Singh Date: Tue, 12 Aug 2025 12:13:43 -0700 Subject: [PATCH] 580.76.05 --- README.md | 15 +- kernel-open/Kbuild | 2 +- kernel-open/common/inc/nv.h | 34 +- kernel-open/nvidia-uvm/uvm_va_range.c | 3 +- kernel-open/nvidia/nv.c | 67 +- kernel-open/nvidia/os-interface.c | 2 +- src/common/displayport/inc/dp_connectorimpl.h | 3 + .../displayport/inc/dp_regkeydatabase.h | 4 + .../displayport/src/dp_configcaps2x.cpp | 10 + .../displayport/src/dp_connectorimpl.cpp | 24 +- src/common/displayport/src/dp_evoadapter.cpp | 3 +- src/common/displayport/src/dp_wardatabase.cpp | 14 + src/common/inc/nvBldVer.h | 20 +- src/common/inc/nvUnixVersion.h | 2 +- src/common/nvswitch/kernel/ls10/tnvl_ls10.c | 3 +- .../nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h | 23 + src/nvidia/arch/nvalloc/unix/include/nv.h | 34 +- src/nvidia/arch/nvalloc/unix/include/osapi.h | 2 + .../arch/nvalloc/unix/src/dynamic-power.c | 10 + src/nvidia/arch/nvalloc/unix/src/escape.c | 5 + src/nvidia/arch/nvalloc/unix/src/os.c | 12 +- src/nvidia/arch/nvalloc/unix/src/osapi.c | 2 +- src/nvidia/arch/nvalloc/unix/src/osinit.c | 22 + src/nvidia/generated/g_gpu_nvoc.c | 12 +- src/nvidia/generated/g_gpu_nvoc.h | 5 + src/nvidia/generated/g_kern_gmmu_nvoc.c | 2 +- src/nvidia/generated/g_mem_desc_nvoc.h | 12 + src/nvidia/generated/g_mem_mgr_nvoc.c | 120 +- src/nvidia/generated/g_mem_mgr_nvoc.h | 147 ++- src/nvidia/generated/g_nv_name_released.h | 9 + src/nvidia/generated/g_subdevice_nvoc.c | 1111 +++++++++-------- src/nvidia/generated/g_subdevice_nvoc.h | 12 + src/nvidia/generated/g_system_mem_nvoc.c | 2 + src/nvidia/generated/g_system_mem_nvoc.h | 3 + src/nvidia/generated/g_system_nvoc.c | 1 + src/nvidia/generated/g_system_nvoc.h | 5 +- src/nvidia/generated/rmconfig.h | 1 + .../inc/kernel/gpu/gsp/gsp_static_config.h | 1 + src/nvidia/inc/kernel/gpuvideo/rmifvideng.h | 12 +- src/nvidia/interface/nvrm_registry.h | 67 +- .../gpu/bus/arch/maxwell/kern_bus_gm107.c | 1 + .../blackwell/conf_compute_keystore_gb100.c | 77 +- .../kernel/gpu/dce_client/dce_client_rpc.c | 64 +- src/nvidia/src/kernel/gpu/disp/kern_disp.c | 12 +- .../src/kernel/gpu/fifo/kernel_channel.c | 35 +- .../gpu/fifo/kernel_channel_group_api.c | 2 +- src/nvidia/src/kernel/gpu/gpu_timeout.c | 2 + src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c | 3 + .../arch/blackwell/mem_mgr_gb10b_phys.c | 484 +++++++ .../gpu/mem_mgr/arch/maxwell/mem_mgr_gm107.c | 51 + src/nvidia/src/kernel/gpu/mem_mgr/heap.c | 27 - src/nvidia/src/kernel/gpu/mem_mgr/mem_desc.c | 11 +- src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr.c | 85 +- .../src/kernel/gpu/mem_mgr/mem_mgr_ctrl.c | 22 - src/nvidia/src/kernel/gpu/mem_mgr/mem_utils.c | 12 + .../kernel/gpu/mig_mgr/kernel_mig_manager.c | 4 +- .../gpu/subdevice/subdevice_ctrl_gpu_kernel.c | 45 +- src/nvidia/src/kernel/gpu_mgr/gpu_mgr.c | 3 + src/nvidia/src/kernel/mem_mgr/console_mem.c | 20 +- src/nvidia/src/kernel/mem_mgr/system_mem.c | 46 +- src/nvidia/src/kernel/mem_mgr/video_mem.c | 47 + src/nvidia/src/kernel/vgpu/rpc.c | 4 + src/nvidia/srcs.mk | 1 + version.mk | 4 +- 64 files changed, 2037 insertions(+), 863 deletions(-) create mode 100644 src/nvidia/src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb10b_phys.c diff --git a/README.md b/README.md index 740922459..356532fb6 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # NVIDIA Linux Open GPU Kernel Module Source This is the source release of the NVIDIA Linux open GPU kernel modules, -version 580.65.06. +version 580.76.05. ## How to Build @@ -17,7 +17,7 @@ as root: Note that the kernel modules built here must be used with GSP firmware and user-space NVIDIA GPU driver components from a corresponding -580.65.06 driver release. This can be achieved by installing +580.76.05 driver release. This can be achieved by installing the NVIDIA GPU driver from the .run file using the `--no-kernel-modules` option. E.g., @@ -185,7 +185,7 @@ table below). 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/580.65.06/README/kernel_open.html +https://us.download.nvidia.com/XFree86/Linux-x86_64/580.76.05/README/kernel_open.html For vGPU support, please refer to the README.vgpu packaged in the vGPU Host Package for more details. @@ -951,6 +951,7 @@ Subsystem Device ID. | NVIDIA GB200 | 2941 10DE 21CA | | NVIDIA GeForce RTX 5090 | 2B85 | | NVIDIA GeForce RTX 5090 D | 2B87 | +| NVIDIA GeForce RTX 5090 D V2 | 2B8C | | NVIDIA RTX PRO 6000 Blackwell Workstation Edition | 2BB1 1028 204B | | NVIDIA RTX PRO 6000 Blackwell Workstation Edition | 2BB1 103C 204B | | NVIDIA RTX PRO 6000 Blackwell Workstation Edition | 2BB1 10DE 204B | @@ -972,6 +973,10 @@ Subsystem Device ID. | NVIDIA RTX PRO 4500 Blackwell | 2C31 103C 2051 | | NVIDIA RTX PRO 4500 Blackwell | 2C31 10DE 2051 | | NVIDIA RTX PRO 4500 Blackwell | 2C31 17AA 2051 | +| NVIDIA RTX PRO 4000 Blackwell SFF Edition | 2C33 1028 2053 | +| NVIDIA RTX PRO 4000 Blackwell SFF Edition | 2C33 103C 2053 | +| NVIDIA RTX PRO 4000 Blackwell SFF Edition | 2C33 10DE 2053 | +| NVIDIA RTX PRO 4000 Blackwell SFF Edition | 2C33 17AA 2053 | | NVIDIA RTX PRO 4000 Blackwell | 2C34 1028 2052 | | NVIDIA RTX PRO 4000 Blackwell | 2C34 103C 2052 | | NVIDIA RTX PRO 4000 Blackwell | 2C34 10DE 2052 | @@ -984,6 +989,10 @@ Subsystem Device ID. | NVIDIA GeForce RTX 5060 | 2D05 | | NVIDIA GeForce RTX 5070 Laptop GPU | 2D18 | | NVIDIA GeForce RTX 5060 Laptop GPU | 2D19 | +| NVIDIA RTX PRO 2000 Blackwell | 2D30 1028 2054 | +| NVIDIA RTX PRO 2000 Blackwell | 2D30 103C 2054 | +| NVIDIA RTX PRO 2000 Blackwell | 2D30 10DE 2054 | +| NVIDIA RTX PRO 2000 Blackwell | 2D30 17AA 2054 | | NVIDIA RTX PRO 2000 Blackwell Generation Laptop GPU | 2D39 | | NVIDIA GeForce RTX 5070 Laptop GPU | 2D58 | | NVIDIA GeForce RTX 5060 Laptop GPU | 2D59 | diff --git a/kernel-open/Kbuild b/kernel-open/Kbuild index f26a9902b..0e74a6175 100644 --- a/kernel-open/Kbuild +++ b/kernel-open/Kbuild @@ -79,7 +79,7 @@ ccflags-y += -I$(src)/common/inc ccflags-y += -I$(src) ccflags-y += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-format-extra-args ccflags-y += -D__KERNEL__ -DMODULE -DNVRM -ccflags-y += -DNV_VERSION_STRING=\"580.65.06\" +ccflags-y += -DNV_VERSION_STRING=\"580.76.05\" # Include and link Tegra out-of-tree modules. ifneq ($(wildcard /usr/src/nvidia/nvidia-oot),) diff --git a/kernel-open/common/inc/nv.h b/kernel-open/common/inc/nv.h index 3f2f2c042..6ccd810d7 100644 --- a/kernel-open/common/inc/nv.h +++ b/kernel-open/common/inc/nv.h @@ -656,23 +656,24 @@ typedef NV_STATUS (*nvPmaEvictRangeCallback)(void *, NvU64, NvU64, nvgpuGpuMemor * flags */ -#define NV_FLAG_OPEN 0x0001 -#define NV_FLAG_EXCLUDE 0x0002 -#define NV_FLAG_CONTROL 0x0004 -#define NV_FLAG_PCI_P2P_UNSUPPORTED_CHIPSET 0x0008 -#define NV_FLAG_SOC_DISPLAY 0x0010 -#define NV_FLAG_USES_MSI 0x0020 -#define NV_FLAG_USES_MSIX 0x0040 -#define NV_FLAG_PASSTHRU 0x0080 -#define NV_FLAG_SUSPENDED 0x0100 +#define NV_FLAG_OPEN 0x0001 +#define NV_FLAG_EXCLUDE 0x0002 +#define NV_FLAG_CONTROL 0x0004 +#define NV_FLAG_PCI_P2P_UNSUPPORTED_CHIPSET 0x0008 +#define NV_FLAG_SOC_DISPLAY 0x0010 +#define NV_FLAG_USES_MSI 0x0020 +#define NV_FLAG_USES_MSIX 0x0040 +#define NV_FLAG_PASSTHRU 0x0080 +#define NV_FLAG_SUSPENDED 0x0100 +#define NV_FLAG_HAS_CONSOLE_IN_SYSMEM_CARVEOUT 0x0200 /* To be set when an FLR needs to be triggered after device shut down. */ -#define NV_FLAG_TRIGGER_FLR 0x0400 -#define NV_FLAG_PERSISTENT_SW_STATE 0x0800 -#define NV_FLAG_IN_RECOVERY 0x1000 -#define NV_FLAG_PCI_REMOVE_IN_PROGRESS 0x2000 -#define NV_FLAG_UNBIND_LOCK 0x4000 +#define NV_FLAG_TRIGGER_FLR 0x0400 +#define NV_FLAG_PERSISTENT_SW_STATE 0x0800 +#define NV_FLAG_IN_RECOVERY 0x1000 +#define NV_FLAG_PCI_REMOVE_IN_PROGRESS 0x2000 +#define NV_FLAG_UNBIND_LOCK 0x4000 /* To be set when GPU is not present on the bus, to help device teardown */ -#define NV_FLAG_IN_SURPRISE_REMOVAL 0x8000 +#define NV_FLAG_IN_SURPRISE_REMOVAL 0x8000 typedef enum { @@ -729,6 +730,9 @@ typedef enum #define NV_IS_DEVICE_IN_SURPRISE_REMOVAL(nv) \ (((nv)->flags & NV_FLAG_IN_SURPRISE_REMOVAL) != 0) +#define NV_HAS_CONSOLE_IN_SYSMEM_CARVEOUT(nv) \ + (((nv)->flags & NV_FLAG_HAS_CONSOLE_IN_SYSMEM_CARVEOUT) != 0) + /* * For console setup by EFI GOP, the base address is BAR1. * For console setup by VBIOS, the base address is BAR2 + 16MB. diff --git a/kernel-open/nvidia-uvm/uvm_va_range.c b/kernel-open/nvidia-uvm/uvm_va_range.c index c83c77a92..46aef06a1 100644 --- a/kernel-open/nvidia-uvm/uvm_va_range.c +++ b/kernel-open/nvidia-uvm/uvm_va_range.c @@ -785,7 +785,8 @@ static NV_STATUS va_range_add_gpu_va_space_managed(uvm_va_range_managed_t *manag NV_STATUS status = NV_OK; const bool should_add_remote_mappings = uvm_processor_mask_test(&managed_range->policy.accessed_by, gpu->id) || - uvm_processor_mask_test(&managed_range->va_range.uvm_lite_gpus, gpu->id); + uvm_processor_mask_test(&managed_range->va_range.uvm_lite_gpus, gpu->id) || + gpu->parent->is_integrated_gpu; // By this time, the gpu is already in the registration mask. const bool should_disable_read_duplication = diff --git a/kernel-open/nvidia/nv.c b/kernel-open/nvidia/nv.c index e38e2c10f..ed4d7dea0 100644 --- a/kernel-open/nvidia/nv.c +++ b/kernel-open/nvidia/nv.c @@ -1450,16 +1450,16 @@ static int nv_start_device(nv_state_t *nv, nvidia_stack_t *sp) { rc = os_alloc_mutex(&nvl->isr_bh_unlocked_mutex); if (rc != 0) - goto failed; + goto failed_release_irq; nv_kthread_q_item_init(&nvl->bottom_half_q_item, nvidia_isr_bh_unlocked, (void *)nv); rc = nv_kthread_q_init(&nvl->bottom_half_q, nv_device_name); if (rc != 0) - goto failed; + goto failed_release_irq; kthread_init = NV_TRUE; rc = nv_kthread_q_init(&nvl->queue.nvk, "nv_queue"); if (rc) - goto failed; + goto failed_release_irq; nv->queue = &nvl->queue; if (nv_platform_use_auto_online(nvl)) @@ -1467,33 +1467,18 @@ static int nv_start_device(nv_state_t *nv, nvidia_stack_t *sp) rc = nv_kthread_q_init(&nvl->remove_numa_memory_q, "nv_remove_numa_memory"); if (rc) - goto failed; + goto failed_release_irq; remove_numa_memory_kthread_init = NV_TRUE; } } if (!rm_init_adapter(sp, nv)) { - if (!(nv->flags & NV_FLAG_USES_MSIX) && - !(nv->flags & NV_FLAG_SOC_DISPLAY)) - { - free_irq(nv->interrupt_line, (void *) nvl); - } - else if (nv->flags & NV_FLAG_SOC_DISPLAY) - { - nv_soc_free_irqs(nv); - } -#if defined(NV_LINUX_PCIE_MSI_SUPPORTED) - else - { - nv_free_msix_irq(nvl); - } -#endif NV_DEV_PRINTF(NV_DBG_ERRORS, nv, "rm_init_adapter failed, device minor number %d\n", nvl->minor_num); rc = -EIO; - goto failed; + goto failed_release_irq; } { @@ -1527,6 +1512,26 @@ static int nv_start_device(nv_state_t *nv, nvidia_stack_t *sp) return 0; +failed_release_irq: + if (!(nv->flags & NV_FLAG_PERSISTENT_SW_STATE)) + { + if (!(nv->flags & NV_FLAG_USES_MSIX) && + !(nv->flags & NV_FLAG_SOC_DISPLAY)) + { + free_irq(nv->interrupt_line, (void *) nvl); + } + else if (nv->flags & NV_FLAG_SOC_DISPLAY) + { + nv_soc_free_irqs(nv); + } +#if defined(NV_LINUX_PCIE_MSI_SUPPORTED) + else + { + nv_free_msix_irq(nvl); + } +#endif + } + failed: #if defined(NV_LINUX_PCIE_MSI_SUPPORTED) if (nv->flags & NV_FLAG_USES_MSI) @@ -2452,6 +2457,7 @@ nvidia_ioctl( if (arg_cmd == NV_ESC_WAIT_OPEN_COMPLETE) { nv_ioctl_wait_open_complete_t *params = arg_copy; + params->rc = nvlfp->open_rc; params->adapterStatus = nvlfp->adapter_status; goto done_early; @@ -6154,8 +6160,13 @@ void NV_API_CALL nv_get_screen_info( if (!registered_fb[i]) continue; - /* Make sure base address is mapped to GPU BAR */ - if (NV_IS_CONSOLE_MAPPED(nv, registered_fb[i]->fix.smem_start)) + /* + * Ensure that either this is a zero-FB SOC GPU with a console in + * the system carveout, or it’s a dGPU device with console mapped + * onto its BAR. + */ + if (NV_HAS_CONSOLE_IN_SYSMEM_CARVEOUT(nv) || + NV_IS_CONSOLE_MAPPED(nv, registered_fb[i]->fix.smem_start)) { *pPhysicalAddress = registered_fb[i]->fix.smem_start; *pFbWidth = registered_fb[i]->var.xres; @@ -6203,9 +6214,13 @@ void NV_API_CALL nv_get_screen_info( physAddr |= (NvU64)screen_info.ext_lfb_base << 32; } #endif - - /* Make sure base address is mapped to GPU BAR */ - if (NV_IS_CONSOLE_MAPPED(nv, physAddr)) + /* + * Ensure that either this is a zero-FB SOC GPU with a console in the + * system carveout, or it’s a dGPU device with console mapped onto its + * BAR. + */ + if (NV_HAS_CONSOLE_IN_SYSMEM_CARVEOUT(nv) || + NV_IS_CONSOLE_MAPPED(nv, physAddr)) { *pPhysicalAddress = physAddr; *pFbWidth = screen_info.lfb_width; @@ -6222,7 +6237,7 @@ void NV_API_CALL nv_get_screen_info( * If screen info can't be fetched with previous methods, then try * to get the base address and size from the memory resource tree. */ - if (pci_dev != NULL) + if ((pci_dev != NULL) && !NV_HAS_CONSOLE_IN_SYSMEM_CARVEOUT(nv)) { BUILD_BUG_ON(NV_GPU_BAR_INDEX_IMEM != NV_GPU_BAR_INDEX_FB + 1); for (i = NV_GPU_BAR_INDEX_FB; i <= NV_GPU_BAR_INDEX_IMEM; i++) diff --git a/kernel-open/nvidia/os-interface.c b/kernel-open/nvidia/os-interface.c index e0baa89bf..a03a3b88c 100644 --- a/kernel-open/nvidia/os-interface.c +++ b/kernel-open/nvidia/os-interface.c @@ -2313,7 +2313,7 @@ static int os_numa_verify_gpu_memory_zone(struct notifier_block *nb, return NOTIFY_OK; } -#define ADD_REMOVE_GPU_MEMORY_NUM_SEGMENTS 4 +#define ADD_REMOVE_GPU_MEMORY_NUM_SEGMENTS 128 NV_STATUS NV_API_CALL os_numa_add_gpu_memory ( diff --git a/src/common/displayport/inc/dp_connectorimpl.h b/src/common/displayport/inc/dp_connectorimpl.h index fbb53b8bd..fe219377e 100644 --- a/src/common/displayport/inc/dp_connectorimpl.h +++ b/src/common/displayport/inc/dp_connectorimpl.h @@ -391,6 +391,9 @@ namespace DisplayPort bool bForceDisableTunnelBwAllocation; bool bDisableEffBppSST8b10b; + // Use regkey DP_DSC_DEVID_WAR to toggle this flag. + bool bEnableDevId; + Group *perHeadAttachedGroup[NV_MAX_HEADS]; NvU32 inTransitionHeadMask; diff --git a/src/common/displayport/inc/dp_regkeydatabase.h b/src/common/displayport/inc/dp_regkeydatabase.h index 5e4511e44..c2fe2c69c 100644 --- a/src/common/displayport/inc/dp_regkeydatabase.h +++ b/src/common/displayport/inc/dp_regkeydatabase.h @@ -100,6 +100,9 @@ // Bug 5088957 : Force head shutdown in DpLib #define NV_DP_REGKEY_FORCE_HEAD_SHUTDOWN "DP_WAR_5088957" +// This regkey forces devID to be exposed to vendors via DPCD 0x309 for DSC-enabled SKUs. +#define NV_DP_REGKEY_EXPOSE_DSC_DEVID_WAR "DP_DSC_DEVID_WAR" + // // Data Base used to store all the regkey values. // The actual data base is declared statically in dp_evoadapter.cpp. @@ -142,6 +145,7 @@ struct DP_REGKEY_DATABASE bool bSkipZeroOuiCache; bool bEnable5147205Fix; bool bForceHeadShutdown; + bool bEnableDevId; }; extern struct DP_REGKEY_DATABASE dpRegkeyDatabase; diff --git a/src/common/displayport/src/dp_configcaps2x.cpp b/src/common/displayport/src/dp_configcaps2x.cpp index 976f71d56..7c22e1c40 100644 --- a/src/common/displayport/src/dp_configcaps2x.cpp +++ b/src/common/displayport/src/dp_configcaps2x.cpp @@ -285,6 +285,16 @@ void DPCDHALImpl2x::parseAndReadCaps() DPCDHALImpl::parseAndReadCaps(); + // reset DP tunneling UHBR caps + caps2x.dpInTunnelingCaps.bUHBR_10GSupported = NV_FALSE; + caps2x.dpInTunnelingCaps.bUHBR_13_5GSupported = NV_FALSE; + caps2x.dpInTunnelingCaps.bUHBR_20GSupported = NV_FALSE; + + // reset rxCableCaps + caps2x.rxCableCaps.bUHBR_10GSupported = NV_TRUE; + caps2x.rxCableCaps.bUHBR_13_5GSupported = NV_TRUE; + caps2x.rxCableCaps.bUHBR_20GSupported = NV_TRUE; + // 02206h if (AuxRetry::ack == bus.read(NV_DPCD14_EXTENDED_MAIN_LINK_CHANNEL_CODING, &buffer[0], 1)) { diff --git a/src/common/displayport/src/dp_connectorimpl.cpp b/src/common/displayport/src/dp_connectorimpl.cpp index e6be5d683..e34fde0da 100644 --- a/src/common/displayport/src/dp_connectorimpl.cpp +++ b/src/common/displayport/src/dp_connectorimpl.cpp @@ -51,6 +51,17 @@ #include "ctrl/ctrl0073/ctrl0073dp.h" #include "dp_tracing.h" +/* + * This is needed by Synaptics to disable DisplayExpand feature + * in some of their docking station based on if GPU supports DSC. + * Feature is not needed if DSC is supported. + * Customers reported problems with the feature enabled on GB20x devices + * and requested GPU DSC detection to disable DisplayExpand feature. + * DSC is supported in Turing and later SKUs hence + * exposing Turing DevId to customers to address their requirement. + */ +#define TURING_DEV_ID 0x1E + using namespace DisplayPort; ConnectorImpl::ConnectorImpl(MainLink * main, AuxBus * auxBus, Timer * timer, Connector::EventSink * sink) @@ -184,6 +195,7 @@ void ConnectorImpl::applyRegkeyOverrides(const DP_REGKEY_DATABASE& dpRegkeyDatab this->bForceDisableTunnelBwAllocation = dpRegkeyDatabase.bForceDisableTunnelBwAllocation; this->bSkipZeroOuiCache = dpRegkeyDatabase.bSkipZeroOuiCache; this->bForceHeadShutdownFromRegkey = dpRegkeyDatabase.bForceHeadShutdown; + this->bEnableDevId = dpRegkeyDatabase.bEnableDevId; this->bDisableEffBppSST8b10b = dpRegkeyDatabase.bDisableEffBppSST8b10b; } @@ -3904,14 +3916,20 @@ bool ConnectorImpl::getIgnoreSourceOuiHandshake() bool ConnectorImpl::performIeeeOuiHandshake() { const char *ieeeOuiDevId = "NVIDIA"; + NvU8 chipRevision = 0x0; + bool bGpuDscSupported = NV_FALSE; + + main->getDscCaps(&bGpuDscSupported); + if ((this->bEnableDevId) && (bGpuDscSupported)) + { + chipRevision = TURING_DEV_ID; + } if (!hal->getOuiSupported() || getIgnoreSourceOuiHandshake()) return false; - if (hal->setOuiSource(DPCD_OUI_NVIDIA, ieeeOuiDevId, 6 /* string length of ieeeOuiDevId */, 0) == AuxRetry::ack) + if (hal->setOuiSource(DPCD_OUI_NVIDIA, ieeeOuiDevId, 6 /* string length of ieeeOuiDevId */, chipRevision) == AuxRetry::ack) { - NvU8 chipRevision = 0; - // parse client OUI. if (hal->getOuiSink(ouiId, &modelName[0], sizeof(modelName), chipRevision)) { diff --git a/src/common/displayport/src/dp_evoadapter.cpp b/src/common/displayport/src/dp_evoadapter.cpp index bcfbe3848..e1b26fae5 100644 --- a/src/common/displayport/src/dp_evoadapter.cpp +++ b/src/common/displayport/src/dp_evoadapter.cpp @@ -106,7 +106,8 @@ const struct {NV_DP_REGKEY_DISABLE_AVOID_HBR3_WAR, &dpRegkeyDatabase.bDisableAvoidHBR3War, DP_REG_VAL_BOOL}, {NV_DP_REGKEY_SKIP_ZERO_OUI_CACHE, &dpRegkeyDatabase.bSkipZeroOuiCache, DP_REG_VAL_BOOL}, {NV_DP_REGKEY_ENABLE_FIX_FOR_5147205, &dpRegkeyDatabase.bEnable5147205Fix, DP_REG_VAL_BOOL}, - {NV_DP_REGKEY_FORCE_HEAD_SHUTDOWN, &dpRegkeyDatabase.bForceHeadShutdown, DP_REG_VAL_BOOL} + {NV_DP_REGKEY_FORCE_HEAD_SHUTDOWN, &dpRegkeyDatabase.bForceHeadShutdown, DP_REG_VAL_BOOL}, + {NV_DP_REGKEY_EXPOSE_DSC_DEVID_WAR, &dpRegkeyDatabase.bEnableDevId, DP_REG_VAL_BOOL} }; EvoMainLink::EvoMainLink(EvoInterface * provider, Timer * timer) : diff --git a/src/common/displayport/src/dp_wardatabase.cpp b/src/common/displayport/src/dp_wardatabase.cpp index 098302712..b699be825 100644 --- a/src/common/displayport/src/dp_wardatabase.cpp +++ b/src/common/displayport/src/dp_wardatabase.cpp @@ -112,6 +112,20 @@ void ConnectorImpl2x::applyOuiWARs() } } break; + case 0xAD6000: + if ((modelName[0] == 'M') && + (modelName[1] == 'C') && + (modelName[2] == '2') && + (modelName[3] == '9') && + (modelName[4] == '0')) + { + bForceHeadShutdownPerMonitor = true; + bApplyStuffDummySymbolsWAR = true; + bStuffDummySymbolsFor128b132b = false; + bStuffDummySymbolsFor8b10b = true; + } + break; + } } diff --git a/src/common/inc/nvBldVer.h b/src/common/inc/nvBldVer.h index ccd263f2d..1eb75eb7f 100644 --- a/src/common/inc/nvBldVer.h +++ b/src/common/inc/nvBldVer.h @@ -36,25 +36,25 @@ // and then checked back in. You cannot make changes to these sections without // corresponding changes to the buildmeister script #ifndef NV_BUILD_BRANCH - #define NV_BUILD_BRANCH r580_78 + #define NV_BUILD_BRANCH r580_92 #endif #ifndef NV_PUBLIC_BRANCH - #define NV_PUBLIC_BRANCH r580_78 + #define NV_PUBLIC_BRANCH r580_92 #endif #if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS) -#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r580/r580_78-179" -#define NV_BUILD_CHANGELIST_NUM (36308443) +#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r580/r580_92-206" +#define NV_BUILD_CHANGELIST_NUM (36361462) #define NV_BUILD_TYPE "Official" -#define NV_BUILD_NAME "rel/gpu_drv/r580/r580_78-179" -#define NV_LAST_OFFICIAL_CHANGELIST_NUM (36308443) +#define NV_BUILD_NAME "rel/gpu_drv/r580/r580_92-206" +#define NV_LAST_OFFICIAL_CHANGELIST_NUM (36361462) #else /* Windows builds */ -#define NV_BUILD_BRANCH_VERSION "r580_78-7" -#define NV_BUILD_CHANGELIST_NUM (36308443) +#define NV_BUILD_BRANCH_VERSION "r580_92-5" +#define NV_BUILD_CHANGELIST_NUM (36361462) #define NV_BUILD_TYPE "Official" -#define NV_BUILD_NAME "580.88" -#define NV_LAST_OFFICIAL_CHANGELIST_NUM (36308443) +#define NV_BUILD_NAME "580.97" +#define NV_LAST_OFFICIAL_CHANGELIST_NUM (36361462) #define NV_BUILD_BRANCH_BASE_VERSION R580 #endif // End buildmeister python edited section diff --git a/src/common/inc/nvUnixVersion.h b/src/common/inc/nvUnixVersion.h index 70f1c48c1..3e7e407a4 100644 --- a/src/common/inc/nvUnixVersion.h +++ b/src/common/inc/nvUnixVersion.h @@ -4,7 +4,7 @@ #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) -#define NV_VERSION_STRING "580.65.06" +#define NV_VERSION_STRING "580.76.05" #else diff --git a/src/common/nvswitch/kernel/ls10/tnvl_ls10.c b/src/common/nvswitch/kernel/ls10/tnvl_ls10.c index 55662110b..92e3f1eff 100644 --- a/src/common/nvswitch/kernel/ls10/tnvl_ls10.c +++ b/src/common/nvswitch/kernel/ls10/tnvl_ls10.c @@ -977,7 +977,8 @@ nvswitch_tnvl_get_attestation_report_ls10 "%s: Response measurement size (%d) is greater than the attestation max size (%d)\n", __FUNCTION__, pRspPayload->measurementSize, NVSWITCH_ATTESTATION_REPORT_MAX_SIZE); - return -NVL_ERR_INVALID_STATE; + status = -NVL_ERR_INVALID_STATE; + goto ErrorExit; } nvswitch_os_memcpy(params->attestationReport, diff --git a/src/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h b/src/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h index c5be9ff35..59e9b4aad 100644 --- a/src/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h +++ b/src/common/sdk/nvidia/inc/ctrl/ctrl2080/ctrl2080gpu.h @@ -4196,6 +4196,8 @@ typedef struct NV2080_CTRL_GPU_GET_COMPUTE_PROFILES_PARAMS { #define NV2080_CTRL_GPU_FABRIC_HEALTH_MASK_INCORRECT_CONFIGURATION_INCORRECT_CHASSIS_SN 3 #define NV2080_CTRL_GPU_FABRIC_HEALTH_MASK_INCORRECT_CONFIGURATION_NO_PARTITION 4 #define NV2080_CTRL_GPU_FABRIC_HEALTH_MASK_INCORRECT_CONFIGURATION_INSUFFICIENT_NVLINKS 5 +#define NV2080_CTRL_GPU_FABRIC_HEALTH_MASK_INCORRECT_CONFIGURATION_INCOMPATIBLE_GPU_FW 6 +#define NV2080_CTRL_GPU_FABRIC_HEALTH_MASK_INCORRECT_CONFIGURATION_INVALID_LOCATION 7 #define NV2080_CTRL_GPU_FABRIC_HEALTH_SUMMARY_NOT_SUPPORTED 0 #define NV2080_CTRL_GPU_FABRIC_HEALTH_SUMMARY_HEALTHY 1 @@ -4731,4 +4733,25 @@ typedef struct NV2080_CTRL_RUSD_GET_SUPPORTED_FEATURES_PARAMS { NvU32 supportedFeatures; } NV2080_CTRL_RUSD_GET_SUPPORTED_FEATURES_PARAMS; +/* + * NV2080_CTRL_CMD_GPU_FORCE_GSP_UNLOAD + * + * This command is used to trigger GSP Unload + * + * flags[IN] + * Flags passed by caller - For future use. + * + * Possible status values returned are: + * NV_OK + * NV_ERR_INSUFFICIENT_PERMISSIONS + * NV_ERR_NOT_SUPPORTED + */ +#define NV2080_CTRL_CMD_GPU_FORCE_GSP_UNLOAD (0x208001ebU) /* finn: Evaluated from "(FINN_NV20_SUBDEVICE_0_GPU_INTERFACE_ID << 8) | NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS_MESSAGE_ID" */ + +#define NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS_MESSAGE_ID (0xebU) + +typedef struct NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS { + NvU32 flags; +} NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS; + /* _ctrl2080gpu_h_ */ diff --git a/src/nvidia/arch/nvalloc/unix/include/nv.h b/src/nvidia/arch/nvalloc/unix/include/nv.h index 82d65fa06..09dd5b151 100644 --- a/src/nvidia/arch/nvalloc/unix/include/nv.h +++ b/src/nvidia/arch/nvalloc/unix/include/nv.h @@ -656,23 +656,24 @@ typedef NV_STATUS (*nvPmaEvictRangeCallback)(void *, NvU64, NvU64, nvgpuGpuMemor * flags */ -#define NV_FLAG_OPEN 0x0001 -#define NV_FLAG_EXCLUDE 0x0002 -#define NV_FLAG_CONTROL 0x0004 -#define NV_FLAG_PCI_P2P_UNSUPPORTED_CHIPSET 0x0008 -#define NV_FLAG_SOC_DISPLAY 0x0010 -#define NV_FLAG_USES_MSI 0x0020 -#define NV_FLAG_USES_MSIX 0x0040 -#define NV_FLAG_PASSTHRU 0x0080 -#define NV_FLAG_SUSPENDED 0x0100 +#define NV_FLAG_OPEN 0x0001 +#define NV_FLAG_EXCLUDE 0x0002 +#define NV_FLAG_CONTROL 0x0004 +#define NV_FLAG_PCI_P2P_UNSUPPORTED_CHIPSET 0x0008 +#define NV_FLAG_SOC_DISPLAY 0x0010 +#define NV_FLAG_USES_MSI 0x0020 +#define NV_FLAG_USES_MSIX 0x0040 +#define NV_FLAG_PASSTHRU 0x0080 +#define NV_FLAG_SUSPENDED 0x0100 +#define NV_FLAG_HAS_CONSOLE_IN_SYSMEM_CARVEOUT 0x0200 /* To be set when an FLR needs to be triggered after device shut down. */ -#define NV_FLAG_TRIGGER_FLR 0x0400 -#define NV_FLAG_PERSISTENT_SW_STATE 0x0800 -#define NV_FLAG_IN_RECOVERY 0x1000 -#define NV_FLAG_PCI_REMOVE_IN_PROGRESS 0x2000 -#define NV_FLAG_UNBIND_LOCK 0x4000 +#define NV_FLAG_TRIGGER_FLR 0x0400 +#define NV_FLAG_PERSISTENT_SW_STATE 0x0800 +#define NV_FLAG_IN_RECOVERY 0x1000 +#define NV_FLAG_PCI_REMOVE_IN_PROGRESS 0x2000 +#define NV_FLAG_UNBIND_LOCK 0x4000 /* To be set when GPU is not present on the bus, to help device teardown */ -#define NV_FLAG_IN_SURPRISE_REMOVAL 0x8000 +#define NV_FLAG_IN_SURPRISE_REMOVAL 0x8000 typedef enum { @@ -729,6 +730,9 @@ typedef enum #define NV_IS_DEVICE_IN_SURPRISE_REMOVAL(nv) \ (((nv)->flags & NV_FLAG_IN_SURPRISE_REMOVAL) != 0) +#define NV_HAS_CONSOLE_IN_SYSMEM_CARVEOUT(nv) \ + (((nv)->flags & NV_FLAG_HAS_CONSOLE_IN_SYSMEM_CARVEOUT) != 0) + /* * For console setup by EFI GOP, the base address is BAR1. * For console setup by VBIOS, the base address is BAR2 + 16MB. diff --git a/src/nvidia/arch/nvalloc/unix/include/osapi.h b/src/nvidia/arch/nvalloc/unix/include/osapi.h index 9e38e81f4..3985b331d 100644 --- a/src/nvidia/arch/nvalloc/unix/include/osapi.h +++ b/src/nvidia/arch/nvalloc/unix/include/osapi.h @@ -178,6 +178,8 @@ void RmUpdateGc6ConsoleRefCount (nv_state_t *, NvBool); NvBool rm_get_uefi_console_status (nv_state_t *); NvU64 rm_get_uefi_console_size (nv_state_t *, NvU64 *); +void rm_check_s0ix_regkey_and_platform_support(void); + RM_API *RmUnixRmApiPrologue (nv_state_t *, THREAD_STATE_NODE *, NvU32 module); void RmUnixRmApiEpilogue (nv_state_t *, THREAD_STATE_NODE *); diff --git a/src/nvidia/arch/nvalloc/unix/src/dynamic-power.c b/src/nvidia/arch/nvalloc/unix/src/dynamic-power.c index 8b47b3b8e..5996ef2ce 100644 --- a/src/nvidia/arch/nvalloc/unix/src/dynamic-power.c +++ b/src/nvidia/arch/nvalloc/unix/src/dynamic-power.c @@ -806,6 +806,16 @@ void NV_API_CALL rm_init_tegra_dynamic_power_management( NV_EXIT_RM_RUNTIME(sp,fp); } +void rm_check_s0ix_regkey_and_platform_support(void) +{ + OBJSYS *pSys = SYS_GET_INSTANCE(); + NvU32 data; + NvBool status = ((nv_platform_supports_s0ix()) && + ((osReadRegistryDword(NULL, NV_REG_ENABLE_S0IX_POWER_MANAGEMENT, &data) == NV_OK) && (data == 1))); + + pSys->setProperty(pSys, PDB_PROP_SYS_SUPPORTS_S0IX, status); +} + /*! * @brief Initialize state related to dynamic power management. * Called once per GPU during driver initialization. diff --git a/src/nvidia/arch/nvalloc/unix/src/escape.c b/src/nvidia/arch/nvalloc/unix/src/escape.c index b6f06bb11..6f24ead70 100644 --- a/src/nvidia/arch/nvalloc/unix/src/escape.c +++ b/src/nvidia/arch/nvalloc/unix/src/escape.c @@ -192,6 +192,11 @@ static void RmCreateOsDescriptor(NVOS32_PARAMETERS *pApi, API_SECURITY_INFO secI } done: + if (pPteArray != NULL) + { + os_free_mem(pPteArray); + } + if (rmStatus != NV_OK) pApi->status = rmStatus; } diff --git a/src/nvidia/arch/nvalloc/unix/src/os.c b/src/nvidia/arch/nvalloc/unix/src/os.c index d360c27dc..2c1a89c22 100644 --- a/src/nvidia/arch/nvalloc/unix/src/os.c +++ b/src/nvidia/arch/nvalloc/unix/src/os.c @@ -925,11 +925,11 @@ NV_STATUS osAllocPagesInternal( // For carveout, the memory is already reserved so we don't have // to allocate memory. // - if (memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT) || + if (memdescIsCarveoutMemory(pMemDesc) || memdescGetFlag(pMemDesc, MEMDESC_FLAGS_GUEST_ALLOCATED)) { - // We only support scanout carveout with contiguous memory. - if (memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT) && + // We only support carveout with contiguous memory. + if (memdescIsCarveoutMemory(pMemDesc) && !memdescGetContiguity(pMemDesc, AT_CPU)) { status = NV_ERR_NOT_SUPPORTED; @@ -955,7 +955,7 @@ NV_STATUS osAllocPagesInternal( cpuCacheAttrib, memdescGetGuestId(pMemDesc), memdescGetPteArray(pMemDesc, AT_CPU), - memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT), + memdescIsCarveoutMemory(pMemDesc), &pMemData); } else @@ -3424,7 +3424,7 @@ osIovaMap // address is same as the DMA address. // // - if (memdescGetFlag(pIovaMapping->pPhysMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT) || + if (memdescIsCarveoutMemory(pIovaMapping->pPhysMemDesc) || memdescGetFlag(pIovaMapping->pPhysMemDesc, MEMDESC_FLAGS_GUEST_ALLOCATED)) { return NV_OK; @@ -3597,7 +3597,7 @@ osIovaUnmap // For guest-allocated or carveout memory, we never actually remapped the // memory, so we shouldn't try to unmap it here. // - if (memdescGetFlag(pIovaMapping->pPhysMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT) || + if (memdescIsCarveoutMemory(pIovaMapping->pPhysMemDesc) || memdescGetFlag(pIovaMapping->pPhysMemDesc, MEMDESC_FLAGS_GUEST_ALLOCATED)) { return; diff --git a/src/nvidia/arch/nvalloc/unix/src/osapi.c b/src/nvidia/arch/nvalloc/unix/src/osapi.c index 3aa97baa4..ef766512a 100644 --- a/src/nvidia/arch/nvalloc/unix/src/osapi.c +++ b/src/nvidia/arch/nvalloc/unix/src/osapi.c @@ -2416,7 +2416,7 @@ static NV_STATUS RmGetAllocPrivate( bPeerIoMem = memdescGetFlag(pMemDesc, MEMDESC_FLAGS_PEER_IO_MEM); if (!(pMemDesc->Allocated || bPeerIoMem || - (memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)) || + memdescIsCarveoutMemory(pMemDesc) || (memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOW_EXT_SYSMEM_USER_CPU_MAPPING)))) { NV_PRINTF(LEVEL_ERROR, "Mmap is not allowed\n"); diff --git a/src/nvidia/arch/nvalloc/unix/src/osinit.c b/src/nvidia/arch/nvalloc/unix/src/osinit.c index a3eb2dd63..46f7a21d8 100644 --- a/src/nvidia/arch/nvalloc/unix/src/osinit.c +++ b/src/nvidia/arch/nvalloc/unix/src/osinit.c @@ -269,6 +269,8 @@ NV_STATUS osRmInitRm(void) return status; } + rm_check_s0ix_regkey_and_platform_support(); + // Setup any ThreadState defaults threadStateInitSetupFlags(THREAD_STATE_SETUP_FLAGS_ENABLED | THREAD_STATE_SETUP_FLAGS_TIMEOUT_ENABLED | @@ -845,6 +847,11 @@ osInitNvMapping( { nv->flags |= NV_FLAG_TRIGGER_FLR; } + + if (pGpu->getProperty(pGpu, PDB_PROP_GPU_IS_SOC_SDM)) + { + nv->flags |= NV_FLAG_HAS_CONSOLE_IN_SYSMEM_CARVEOUT; + } } void osInitScalabilityOptions @@ -1016,6 +1023,21 @@ RmSetConsolePreservationParams(OBJGPU *pGpu) return; } + // + // If this is the zero FB SOC GPU with a console in system carveout, then + // the console memory is not mapped onto the BAR. The kernel can directly + // access the console memory, while the GPU accesses system carveout memory + // through the SMMU. + // The carveout is a reserved region of system memory that doesn’t get used + // in standard memory allocation. + // + // In this scenario, you don’t need to reserve console memory or BAR mapping. + // + if (NV_HAS_CONSOLE_IN_SYSMEM_CARVEOUT(nv)) + { + return; + } + // // Check the OS layer for any video memory used by a console // driver that should be reserved. diff --git a/src/nvidia/generated/g_gpu_nvoc.c b/src/nvidia/generated/g_gpu_nvoc.c index 400cd955c..39f82a63a 100644 --- a/src/nvidia/generated/g_gpu_nvoc.c +++ b/src/nvidia/generated/g_gpu_nvoc.c @@ -513,7 +513,17 @@ void __nvoc_init_dataField_OBJGPU(OBJGPU *pThis) { pThis->setProperty(pThis, PDB_PROP_GPU_RUSD_POLLING_SUPPORT_MONOLITHIC, NV_FALSE); } pThis->setProperty(pThis, PDB_PROP_GPU_RECOVERY_REBOOT_REQUIRED, NV_FALSE); - pThis->setProperty(pThis, PDB_PROP_GPU_ALLOC_ISO_SYS_MEM_FROM_CARVEOUT, NV_FALSE); + + // NVOC Property Hal field -- PDB_PROP_GPU_ALLOC_ISO_SYS_MEM_FROM_CARVEOUT + if (( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB20B | GB20C */ + { + pThis->setProperty(pThis, PDB_PROP_GPU_ALLOC_ISO_SYS_MEM_FROM_CARVEOUT, NV_TRUE); + } + // default + else + { + pThis->setProperty(pThis, PDB_PROP_GPU_ALLOC_ISO_SYS_MEM_FROM_CARVEOUT, NV_FALSE); + } pThis->deviceInstance = 32; diff --git a/src/nvidia/generated/g_gpu_nvoc.h b/src/nvidia/generated/g_gpu_nvoc.h index 4d6356f7e..4c8328b29 100644 --- a/src/nvidia/generated/g_gpu_nvoc.h +++ b/src/nvidia/generated/g_gpu_nvoc.h @@ -1344,6 +1344,7 @@ struct OBJGPU { DEVICE_MAPPING *pDeviceMappingsByDeviceInstance[13]; void *gpuCfgAddr; TIMEOUT_DATA timeoutData; + NvU32 bug5203024OverrideTimeouts; NvU32 computeModeRules; NvS32 computeModeRefCount; NvHandle hComputeModeReservation; @@ -4460,6 +4461,8 @@ NV_STATUS gpuGetNameString_T234D(struct OBJGPU *pGpu, NvU32 arg2, void *arg3); NV_STATUS gpuGetNameString_FWCLIENT(struct OBJGPU *pGpu, NvU32 arg2, void *arg3); +NV_STATUS gpuGetNameString_GB20B(struct OBJGPU *pGpu, NvU32 arg2, void *arg3); + NV_STATUS gpuGetNameString_IMPL(struct OBJGPU *pGpu, NvU32 arg2, void *arg3); NV_STATUS gpuGetShortNameString_VF(struct OBJGPU *pGpu, NvU8 *arg2); @@ -4468,6 +4471,8 @@ NV_STATUS gpuGetShortNameString_T234D(struct OBJGPU *pGpu, NvU8 *arg2); NV_STATUS gpuGetShortNameString_FWCLIENT(struct OBJGPU *pGpu, NvU8 *arg2); +NV_STATUS gpuGetShortNameString_GB20B(struct OBJGPU *pGpu, NvU8 *arg2); + NV_STATUS gpuGetShortNameString_IMPL(struct OBJGPU *pGpu, NvU8 *arg2); static inline NV_STATUS gpuInitBranding_56cd7a(struct OBJGPU *pGpu) { diff --git a/src/nvidia/generated/g_kern_gmmu_nvoc.c b/src/nvidia/generated/g_kern_gmmu_nvoc.c index a633d7b75..6c7f3df6c 100644 --- a/src/nvidia/generated/g_kern_gmmu_nvoc.c +++ b/src/nvidia/generated/g_kern_gmmu_nvoc.c @@ -1048,7 +1048,7 @@ static void __nvoc_init_funcTable_KernelGmmu_1(KernelGmmu *pThis, GpuHalspecOwne // kgmmuReadShadowBufPutIndex -- halified (2 hals) body if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x70000000UL) ) || - ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000006UL) )) /* ChipHal: GH100 | GB100 | GB102 | GB110 | GB112 */ + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000fe6UL) )) /* ChipHal: GH100 | GB100 | GB102 | GB110 | GB112 | GB202 | GB203 | GB205 | GB206 | GB207 | GB20B | GB20C */ { pThis->__kgmmuReadShadowBufPutIndex__ = &kgmmuReadShadowBufPutIndex_GH100; } diff --git a/src/nvidia/generated/g_mem_desc_nvoc.h b/src/nvidia/generated/g_mem_desc_nvoc.h index f98010437..0eb04d518 100644 --- a/src/nvidia/generated/g_mem_desc_nvoc.h +++ b/src/nvidia/generated/g_mem_desc_nvoc.h @@ -123,6 +123,7 @@ typedef NvU32 NV_ADDRESS_SPACE; typedef NvU32 MEMDESC_CUSTOM_HEAP; #define MEMDESC_CUSTOM_HEAP_NONE 0 #define MEMDESC_CUSTOM_HEAP_ACR 1 +#define MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT 2 // // Address translation identifiers: @@ -426,6 +427,7 @@ typedef struct ADDRESS_TRANSLATION_ *ADDRESS_TRANSLATION; // #define MEMDESC_FLAGS_ALLOC_AS_LOCALIZED NVBIT64(50) +// Indicate whether memdesc tracks the memory allocated from the scanout-carevout heap. #define MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT NVBIT64(51) // Force-compress pte kind when mapping with virtual pte kind @@ -441,6 +443,9 @@ typedef struct ADDRESS_TRANSLATION_ *ADDRESS_TRANSLATION; // Indicate if memdesc is allocated for non IO-coherent memory. #define MEMDESC_FLAGS_NON_IO_COHERENT NVBIT64(54) +// Indicate if memdesc is tracking the uefi carveout memory. +#define MEMDESC_FLAGS_ALLOC_FROM_UEFI_CARVEOUT NVBIT64(55) + // // RM internal allocations owner tags // Total 200 tags are introduced, out of which some are already @@ -1216,6 +1221,13 @@ NV_STATUS memdescFillMemdescForPhysAttr(MEMORY_DESCRIPTOR *pMemDesc, ADDRESS_TRA NvBool memdescIsEgm(MEMORY_DESCRIPTOR *pMemDesc); NvU64 memdescGetAdjustedPageSize(MEMORY_DESCRIPTOR *pMemDesc); +static inline NvBool +memdescIsCarveoutMemory(MEMORY_DESCRIPTOR *pMemDesc) +{ + return !!(pMemDesc->_flags & (MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT | + MEMDESC_FLAGS_ALLOC_FROM_UEFI_CARVEOUT)); +} + /*! * @brief Get PTE kind * diff --git a/src/nvidia/generated/g_mem_mgr_nvoc.c b/src/nvidia/generated/g_mem_mgr_nvoc.c index e579033fc..1b0eb979b 100644 --- a/src/nvidia/generated/g_mem_mgr_nvoc.c +++ b/src/nvidia/generated/g_mem_mgr_nvoc.c @@ -541,14 +541,28 @@ static void __nvoc_init_funcTable_MemoryManager_1(MemoryManager *pThis, GpuHalsp pThis->__memmgrInitFbRegions__ = &memmgrInitFbRegions_IMPL; } - // memmgrAllocateConsoleRegion -- halified (2 hals) body + // memmgrAllocateConsoleRegion -- halified (4 hals) body if (( ((rmVariantHal_HalVarIdx >> 5) == 0UL) && ((1UL << (rmVariantHal_HalVarIdx & 0x1f)) & 0x00000001UL) )) /* RmVariantHal: VF */ { pThis->__memmgrAllocateConsoleRegion__ = &memmgrAllocateConsoleRegion_56cd7a; } else { - pThis->__memmgrAllocateConsoleRegion__ = &memmgrAllocateConsoleRegion_IMPL; + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrAllocateConsoleRegion__ = &memmgrAllocateConsoleRegion_GB10B; + } + else if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x71f0ffe0UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x000003e6UL) )) /* ChipHal: TU102 | TU104 | TU106 | TU116 | TU117 | GA100 | GA102 | GA103 | GA104 | GA106 | GA107 | AD102 | AD103 | AD104 | AD106 | AD107 | GH100 | GB100 | GB102 | GB110 | GB112 | GB202 | GB203 | GB205 | GB206 | GB207 */ + { + pThis->__memmgrAllocateConsoleRegion__ = &memmgrAllocateConsoleRegion_GM107; + } + // default + else + { + pThis->__memmgrAllocateConsoleRegion__ = &memmgrAllocateConsoleRegion_56cd7a; + } } // memmgrScrubHandlePostSchedulingEnable -- halified (2 hals) body @@ -1334,6 +1348,102 @@ static void __nvoc_init_funcTable_MemoryManager_1(MemoryManager *pThis, GpuHalsp pThis->__memmgrGetFBEndReserveSizeEstimate__ = &memmgrGetFBEndReserveSizeEstimate_GM107; } + // memmgrInitZeroFbRegionsHal -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrInitZeroFbRegionsHal__ = &memmgrInitZeroFbRegionsHal_GB10B; + } + // default + else + { + pThis->__memmgrInitZeroFbRegionsHal__ = &memmgrInitZeroFbRegionsHal_56cd7a; + } + + // memmgrAllocScanoutCarveoutRegionResources -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrAllocScanoutCarveoutRegionResources__ = &memmgrAllocScanoutCarveoutRegionResources_GB10B; + } + // default + else + { + pThis->__memmgrAllocScanoutCarveoutRegionResources__ = &memmgrAllocScanoutCarveoutRegionResources_46f6a7; + } + + // memmgrAllocFromScanoutCarveoutRegion -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrAllocFromScanoutCarveoutRegion__ = &memmgrAllocFromScanoutCarveoutRegion_GB10B; + } + // default + else + { + pThis->__memmgrAllocFromScanoutCarveoutRegion__ = &memmgrAllocFromScanoutCarveoutRegion_46f6a7; + } + + // memmgrFreeScanoutCarveoutRegionResources -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrFreeScanoutCarveoutRegionResources__ = &memmgrFreeScanoutCarveoutRegionResources_GB10B; + } + // default + else + { + pThis->__memmgrFreeScanoutCarveoutRegionResources__ = &memmgrFreeScanoutCarveoutRegionResources_b3696a; + } + + // memmgrFreeFromScanoutCarveoutRegion -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrFreeFromScanoutCarveoutRegion__ = &memmgrFreeFromScanoutCarveoutRegion_GB10B; + } + // default + else + { + pThis->__memmgrFreeFromScanoutCarveoutRegion__ = &memmgrFreeFromScanoutCarveoutRegion_b3696a; + } + + // memmgrCreateScanoutCarveoutHeap -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrCreateScanoutCarveoutHeap__ = &memmgrCreateScanoutCarveoutHeap_GB10B; + } + // default + else + { + pThis->__memmgrCreateScanoutCarveoutHeap__ = &memmgrCreateScanoutCarveoutHeap_46f6a7; + } + + // memmgrDestroyScanoutCarveoutHeap -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrDestroyScanoutCarveoutHeap__ = &memmgrDestroyScanoutCarveoutHeap_GB10B; + } + // default + else + { + pThis->__memmgrDestroyScanoutCarveoutHeap__ = &memmgrDestroyScanoutCarveoutHeap_46f6a7; + } + + // memmgrDuplicateFromScanoutCarveoutRegion -- halified (2 hals) body + if (( ((chipHal_HalVarIdx >> 5) == 1UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x80000000UL) ) || + ( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB10B | GB20B | GB20C */ + { + pThis->__memmgrDuplicateFromScanoutCarveoutRegion__ = &memmgrDuplicateFromScanoutCarveoutRegion_GB10B; + } + // default + else + { + pThis->__memmgrDuplicateFromScanoutCarveoutRegion__ = &memmgrDuplicateFromScanoutCarveoutRegion_46f6a7; + } + // memmgrIsMemoryIoCoherent -- halified (2 hals) body if (( ((chipHal_HalVarIdx >> 5) == 2UL) && ((1UL << (chipHal_HalVarIdx & 0x1f)) & 0x00000c00UL) )) /* ChipHal: GB20B | GB20C */ { @@ -1380,13 +1490,13 @@ static void __nvoc_init_funcTable_MemoryManager_1(MemoryManager *pThis, GpuHalsp { pThis->__memmgrGetLocalizedMemorySupported__ = &memmgrGetLocalizedMemorySupported_3dd2c9; } -} // End __nvoc_init_funcTable_MemoryManager_1 with approximately 175 basic block(s). +} // End __nvoc_init_funcTable_MemoryManager_1 with approximately 193 basic block(s). -// Initialize vtable(s) for 91 virtual method(s). +// Initialize vtable(s) for 99 virtual method(s). void __nvoc_init_funcTable_MemoryManager(MemoryManager *pThis, GpuHalspecOwner *pGpuhalspecowner, RmHalspecOwner *pRmhalspecowner) { - // Initialize vtable(s) with 77 per-object function pointer(s). + // Initialize vtable(s) with 85 per-object function pointer(s). __nvoc_init_funcTable_MemoryManager_1(pThis, pGpuhalspecowner, pRmhalspecowner); } diff --git a/src/nvidia/generated/g_mem_mgr_nvoc.h b/src/nvidia/generated/g_mem_mgr_nvoc.h index 1a4269bee..34c39cf60 100644 --- a/src/nvidia/generated/g_mem_mgr_nvoc.h +++ b/src/nvidia/generated/g_mem_mgr_nvoc.h @@ -501,7 +501,6 @@ struct __nvoc_inner_struc_MemoryManager_2__ { NvU64 minFBPSize; NvU32 fbRegionPriority[16]; NvU64 ReservedConsoleDispMemSize; - PMEMORY_DESCRIPTOR pReservedConsoleMemDesc; NvU32 lowerRangeMag; NvU32 lowerRangeScale; NvU32 middleRangeMag; @@ -536,12 +535,12 @@ struct MemoryManager { struct OBJENGSTATE *__nvoc_pbase_OBJENGSTATE; // engstate super struct MemoryManager *__nvoc_pbase_MemoryManager; // memmgr - // Vtable with 77 per-object function pointers + // Vtable with 85 per-object function pointers NvU64 (*__memmgrDeterminePageSize__)(struct MemoryManager * /*this*/, NvHandle, NvU64, NvU32, NvU32, NvU32 *, NvU32 *); // halified (2 hals) body NV_STATUS (*__memmgrFreeHwResources__)(OBJGPU *, struct MemoryManager * /*this*/, FB_ALLOC_INFO *); // halified (2 hals) body NV_STATUS (*__memmgrCreateHeap__)(struct MemoryManager * /*this*/); // halified (2 hals) body NV_STATUS (*__memmgrInitFbRegions__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body - NV_STATUS (*__memmgrAllocateConsoleRegion__)(OBJGPU *, struct MemoryManager * /*this*/, FB_REGION_DESCRIPTOR *); // halified (2 hals) body + NV_STATUS (*__memmgrAllocateConsoleRegion__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (4 hals) body NV_STATUS (*__memmgrScrubHandlePostSchedulingEnable__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body NV_STATUS (*__memmgrScrubHandlePreSchedulingDisable__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body NV_STATUS (*__memmgrMemUtilsChannelInitialize__)(OBJGPU *, struct MemoryManager * /*this*/, OBJCHANNEL *); // halified (2 hals) body @@ -610,6 +609,14 @@ struct MemoryManager { NV_STATUS (*__memmgrGetBlackListPages__)(OBJGPU *, struct MemoryManager * /*this*/, BLACKLIST_ADDRESS *, NvU32 *); // halified (3 hals) body NV_STATUS (*__memmgrDiscoverMIGPartitionableMemoryRange__)(OBJGPU *, struct MemoryManager * /*this*/, struct NV_RANGE *); // halified (2 hals) body NvU32 (*__memmgrGetFBEndReserveSizeEstimate__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) + NV_STATUS (*__memmgrInitZeroFbRegionsHal__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body + NV_STATUS (*__memmgrAllocScanoutCarveoutRegionResources__)(struct MemoryManager * /*this*/, NV_MEMORY_ALLOCATION_PARAMS *, NvU32, NvU32 *, MEMORY_DESCRIPTOR *); // halified (2 hals) body + NV_STATUS (*__memmgrAllocFromScanoutCarveoutRegion__)(POBJGPU, struct MemoryManager * /*this*/, NvU32, NV_MEMORY_ALLOCATION_PARAMS *, NvU32 *, PMEMORY_DESCRIPTOR *); // halified (2 hals) body + void (*__memmgrFreeScanoutCarveoutRegionResources__)(struct MemoryManager * /*this*/, NvU64); // halified (2 hals) body + void (*__memmgrFreeFromScanoutCarveoutRegion__)(POBJGPU, struct MemoryManager * /*this*/, PMEMORY_DESCRIPTOR); // halified (2 hals) body + NV_STATUS (*__memmgrCreateScanoutCarveoutHeap__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body + NV_STATUS (*__memmgrDestroyScanoutCarveoutHeap__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body + NV_STATUS (*__memmgrDuplicateFromScanoutCarveoutRegion__)(POBJGPU, struct MemoryManager * /*this*/, PMEMORY_DESCRIPTOR); // halified (2 hals) body NvBool (*__memmgrIsMemoryIoCoherent__)(OBJGPU *, struct MemoryManager * /*this*/, NV_MEMORY_ALLOCATION_PARAMS *); // halified (2 hals) body NvU8 (*__memmgrGetLocalizedOffset__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body NvBool (*__memmgrIsFlaSysmemSupported__)(OBJGPU *, struct MemoryManager * /*this*/); // halified (2 hals) body @@ -619,6 +626,7 @@ struct MemoryManager { // NvBool PDB_PROP_MEMMGR_IS_MISSING inherited from OBJENGSTATE // Data members + OBJEHEAP *pScanoutHeap; NvBool bFbsrWddmModeEnabled; NvBool bFbRegionsSupported; NvBool bPmaSupportedOnPlatform; @@ -674,6 +682,7 @@ struct MemoryManager { NvBool bDisableGlobalCeUtils; OBJSCRUB eccScrubberState; struct __nvoc_inner_struc_MemoryManager_2__ Ram; + PMEMORY_DESCRIPTOR pReservedConsoleMemDesc; NvU32 PteKindOverride; NvU32 zbcSurfaces; NvU64 overrideInitHeapMin; @@ -1110,12 +1119,12 @@ static inline NV_STATUS memmgrReserveVbiosVgaRegions(OBJGPU *pGpu, struct Memory #endif // __nvoc_mem_mgr_h_disabled #ifdef __nvoc_mem_mgr_h_disabled -static inline NV_STATUS memmgrReserveConsoleRegion(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, FB_REGION_DESCRIPTOR *arg3) { +static inline NV_STATUS memmgrReserveConsoleRegion(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { NV_ASSERT_FAILED_PRECOMP("MemoryManager was disabled!"); return NV_ERR_NOT_SUPPORTED; } #else // __nvoc_mem_mgr_h_disabled -#define memmgrReserveConsoleRegion(pGpu, pMemoryManager, arg3) memmgrReserveConsoleRegion_56cd7a(pGpu, pMemoryManager, arg3) +#define memmgrReserveConsoleRegion(pGpu, pMemoryManager) memmgrReserveConsoleRegion_56cd7a(pGpu, pMemoryManager) #endif // __nvoc_mem_mgr_h_disabled void memmgrReleaseConsoleRegion_IMPL(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); @@ -1727,7 +1736,7 @@ static inline NV_STATUS memmgrGetCarveoutRegionInfo(POBJGPU pGpu, struct MemoryM return NV_ERR_NOT_SUPPORTED; } #else // __nvoc_mem_mgr_h_disabled -#define memmgrGetCarveoutRegionInfo(pGpu, pMemoryManager, pParams) memmgrGetCarveoutRegionInfo_56cd7a(pGpu, pMemoryManager, pParams) +#define memmgrGetCarveoutRegionInfo(pGpu, pMemoryManager, pParams) memmgrGetCarveoutRegionInfo_KERNEL(pGpu, pMemoryManager, pParams) #endif // __nvoc_mem_mgr_h_disabled @@ -1763,10 +1772,10 @@ static inline NV_STATUS memmgrGetCarveoutRegionInfo(POBJGPU pGpu, struct MemoryM #define memmgrInitFbRegions(pGpu, pMemoryManager) memmgrInitFbRegions_DISPATCH(pGpu, pMemoryManager) #define memmgrInitFbRegions_HAL(pGpu, pMemoryManager) memmgrInitFbRegions_DISPATCH(pGpu, pMemoryManager) #define memmgrReserveVbiosVgaRegions_HAL(pGpu, pMemoryManager) memmgrReserveVbiosVgaRegions(pGpu, pMemoryManager) -#define memmgrReserveConsoleRegion_HAL(pGpu, pMemoryManager, arg3) memmgrReserveConsoleRegion(pGpu, pMemoryManager, arg3) +#define memmgrReserveConsoleRegion_HAL(pGpu, pMemoryManager) memmgrReserveConsoleRegion(pGpu, pMemoryManager) #define memmgrAllocateConsoleRegion_FNPTR(pMemoryManager) pMemoryManager->__memmgrAllocateConsoleRegion__ -#define memmgrAllocateConsoleRegion(pGpu, pMemoryManager, arg3) memmgrAllocateConsoleRegion_DISPATCH(pGpu, pMemoryManager, arg3) -#define memmgrAllocateConsoleRegion_HAL(pGpu, pMemoryManager, arg3) memmgrAllocateConsoleRegion_DISPATCH(pGpu, pMemoryManager, arg3) +#define memmgrAllocateConsoleRegion(pGpu, pMemoryManager) memmgrAllocateConsoleRegion_DISPATCH(pGpu, pMemoryManager) +#define memmgrAllocateConsoleRegion_HAL(pGpu, pMemoryManager) memmgrAllocateConsoleRegion_DISPATCH(pGpu, pMemoryManager) #define memmgrGetKindComprForGpu_HAL(pMemoryManager, arg2, pGpu, offset, kind, pComprInfo) memmgrGetKindComprForGpu(pMemoryManager, arg2, pGpu, offset, kind, pComprInfo) #define memmgrScrubInit_HAL(pGpu, pMemoryManager) memmgrScrubInit(pGpu, pMemoryManager) #define memmgrScrubHandlePostSchedulingEnable_FNPTR(pMemoryManager) pMemoryManager->__memmgrScrubHandlePostSchedulingEnable__ @@ -2001,6 +2010,30 @@ static inline NV_STATUS memmgrGetCarveoutRegionInfo(POBJGPU pGpu, struct MemoryM #define memmgrFreeFbsrMemory_HAL(pGpu, pMemoryManager) memmgrFreeFbsrMemory(pGpu, pMemoryManager) #define memmgrReserveVgaWorkspaceMemDescForFbsr_HAL(pGpu, pMemoryManager) memmgrReserveVgaWorkspaceMemDescForFbsr(pGpu, pMemoryManager) #define memmgrCalculateHeapOffsetWithGSP_HAL(pGpu, pMemoryManager, offset) memmgrCalculateHeapOffsetWithGSP(pGpu, pMemoryManager, offset) +#define memmgrInitZeroFbRegionsHal_FNPTR(pMemoryManager) pMemoryManager->__memmgrInitZeroFbRegionsHal__ +#define memmgrInitZeroFbRegionsHal(pGpu, pMemoryManager) memmgrInitZeroFbRegionsHal_DISPATCH(pGpu, pMemoryManager) +#define memmgrInitZeroFbRegionsHal_HAL(pGpu, pMemoryManager) memmgrInitZeroFbRegionsHal_DISPATCH(pGpu, pMemoryManager) +#define memmgrAllocScanoutCarveoutRegionResources_FNPTR(pMemoryManager) pMemoryManager->__memmgrAllocScanoutCarveoutRegionResources__ +#define memmgrAllocScanoutCarveoutRegionResources(pMemoryManager, pAllocData, owner, pHeapFlag, pMemDesc) memmgrAllocScanoutCarveoutRegionResources_DISPATCH(pMemoryManager, pAllocData, owner, pHeapFlag, pMemDesc) +#define memmgrAllocScanoutCarveoutRegionResources_HAL(pMemoryManager, pAllocData, owner, pHeapFlag, pMemDesc) memmgrAllocScanoutCarveoutRegionResources_DISPATCH(pMemoryManager, pAllocData, owner, pHeapFlag, pMemDesc) +#define memmgrAllocFromScanoutCarveoutRegion_FNPTR(pMemoryManager) pMemoryManager->__memmgrAllocFromScanoutCarveoutRegion__ +#define memmgrAllocFromScanoutCarveoutRegion(pGpu, pMemoryManager, owner, pVidHeapAlloc, pHeapFlag, ppMemDesc) memmgrAllocFromScanoutCarveoutRegion_DISPATCH(pGpu, pMemoryManager, owner, pVidHeapAlloc, pHeapFlag, ppMemDesc) +#define memmgrAllocFromScanoutCarveoutRegion_HAL(pGpu, pMemoryManager, owner, pVidHeapAlloc, pHeapFlag, ppMemDesc) memmgrAllocFromScanoutCarveoutRegion_DISPATCH(pGpu, pMemoryManager, owner, pVidHeapAlloc, pHeapFlag, ppMemDesc) +#define memmgrFreeScanoutCarveoutRegionResources_FNPTR(pMemoryManager) pMemoryManager->__memmgrFreeScanoutCarveoutRegionResources__ +#define memmgrFreeScanoutCarveoutRegionResources(pMemoryManager, base) memmgrFreeScanoutCarveoutRegionResources_DISPATCH(pMemoryManager, base) +#define memmgrFreeScanoutCarveoutRegionResources_HAL(pMemoryManager, base) memmgrFreeScanoutCarveoutRegionResources_DISPATCH(pMemoryManager, base) +#define memmgrFreeFromScanoutCarveoutRegion_FNPTR(pMemoryManager) pMemoryManager->__memmgrFreeFromScanoutCarveoutRegion__ +#define memmgrFreeFromScanoutCarveoutRegion(pGpu, pMemoryManager, pMemDesc) memmgrFreeFromScanoutCarveoutRegion_DISPATCH(pGpu, pMemoryManager, pMemDesc) +#define memmgrFreeFromScanoutCarveoutRegion_HAL(pGpu, pMemoryManager, pMemDesc) memmgrFreeFromScanoutCarveoutRegion_DISPATCH(pGpu, pMemoryManager, pMemDesc) +#define memmgrCreateScanoutCarveoutHeap_FNPTR(pMemoryManager) pMemoryManager->__memmgrCreateScanoutCarveoutHeap__ +#define memmgrCreateScanoutCarveoutHeap(pGpu, pMemoryManager) memmgrCreateScanoutCarveoutHeap_DISPATCH(pGpu, pMemoryManager) +#define memmgrCreateScanoutCarveoutHeap_HAL(pGpu, pMemoryManager) memmgrCreateScanoutCarveoutHeap_DISPATCH(pGpu, pMemoryManager) +#define memmgrDestroyScanoutCarveoutHeap_FNPTR(pMemoryManager) pMemoryManager->__memmgrDestroyScanoutCarveoutHeap__ +#define memmgrDestroyScanoutCarveoutHeap(pGpu, pMemoryManager) memmgrDestroyScanoutCarveoutHeap_DISPATCH(pGpu, pMemoryManager) +#define memmgrDestroyScanoutCarveoutHeap_HAL(pGpu, pMemoryManager) memmgrDestroyScanoutCarveoutHeap_DISPATCH(pGpu, pMemoryManager) +#define memmgrDuplicateFromScanoutCarveoutRegion_FNPTR(pMemoryManager) pMemoryManager->__memmgrDuplicateFromScanoutCarveoutRegion__ +#define memmgrDuplicateFromScanoutCarveoutRegion(pGpu, pMemoryManager, pMemDesc) memmgrDuplicateFromScanoutCarveoutRegion_DISPATCH(pGpu, pMemoryManager, pMemDesc) +#define memmgrDuplicateFromScanoutCarveoutRegion_HAL(pGpu, pMemoryManager, pMemDesc) memmgrDuplicateFromScanoutCarveoutRegion_DISPATCH(pGpu, pMemoryManager, pMemDesc) #define memmgrGetCarveoutRegionInfo_HAL(pGpu, pMemoryManager, pParams) memmgrGetCarveoutRegionInfo(pGpu, pMemoryManager, pParams) #define memmgrIsMemoryIoCoherent_FNPTR(pMemoryManager) pMemoryManager->__memmgrIsMemoryIoCoherent__ #define memmgrIsMemoryIoCoherent(pGpu, pMemoryManager, pAllocData) memmgrIsMemoryIoCoherent_DISPATCH(pGpu, pMemoryManager, pAllocData) @@ -2076,8 +2109,8 @@ static inline NV_STATUS memmgrInitFbRegions_DISPATCH(OBJGPU *pGpu, struct Memory return pMemoryManager->__memmgrInitFbRegions__(pGpu, pMemoryManager); } -static inline NV_STATUS memmgrAllocateConsoleRegion_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, FB_REGION_DESCRIPTOR *arg3) { - return pMemoryManager->__memmgrAllocateConsoleRegion__(pGpu, pMemoryManager, arg3); +static inline NV_STATUS memmgrAllocateConsoleRegion_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return pMemoryManager->__memmgrAllocateConsoleRegion__(pGpu, pMemoryManager); } static inline NV_STATUS memmgrScrubHandlePostSchedulingEnable_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { @@ -2352,6 +2385,38 @@ static inline NvU32 memmgrGetFBEndReserveSizeEstimate_DISPATCH(OBJGPU *pGpu, str return pMemoryManager->__memmgrGetFBEndReserveSizeEstimate__(pGpu, pMemoryManager); } +static inline NV_STATUS memmgrInitZeroFbRegionsHal_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return pMemoryManager->__memmgrInitZeroFbRegionsHal__(pGpu, pMemoryManager); +} + +static inline NV_STATUS memmgrAllocScanoutCarveoutRegionResources_DISPATCH(struct MemoryManager *pMemoryManager, NV_MEMORY_ALLOCATION_PARAMS *pAllocData, NvU32 owner, NvU32 *pHeapFlag, MEMORY_DESCRIPTOR *pMemDesc) { + return pMemoryManager->__memmgrAllocScanoutCarveoutRegionResources__(pMemoryManager, pAllocData, owner, pHeapFlag, pMemDesc); +} + +static inline NV_STATUS memmgrAllocFromScanoutCarveoutRegion_DISPATCH(POBJGPU pGpu, struct MemoryManager *pMemoryManager, NvU32 owner, NV_MEMORY_ALLOCATION_PARAMS *pVidHeapAlloc, NvU32 *pHeapFlag, PMEMORY_DESCRIPTOR *ppMemDesc) { + return pMemoryManager->__memmgrAllocFromScanoutCarveoutRegion__(pGpu, pMemoryManager, owner, pVidHeapAlloc, pHeapFlag, ppMemDesc); +} + +static inline void memmgrFreeScanoutCarveoutRegionResources_DISPATCH(struct MemoryManager *pMemoryManager, NvU64 base) { + pMemoryManager->__memmgrFreeScanoutCarveoutRegionResources__(pMemoryManager, base); +} + +static inline void memmgrFreeFromScanoutCarveoutRegion_DISPATCH(POBJGPU pGpu, struct MemoryManager *pMemoryManager, PMEMORY_DESCRIPTOR pMemDesc) { + pMemoryManager->__memmgrFreeFromScanoutCarveoutRegion__(pGpu, pMemoryManager, pMemDesc); +} + +static inline NV_STATUS memmgrCreateScanoutCarveoutHeap_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return pMemoryManager->__memmgrCreateScanoutCarveoutHeap__(pGpu, pMemoryManager); +} + +static inline NV_STATUS memmgrDestroyScanoutCarveoutHeap_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return pMemoryManager->__memmgrDestroyScanoutCarveoutHeap__(pGpu, pMemoryManager); +} + +static inline NV_STATUS memmgrDuplicateFromScanoutCarveoutRegion_DISPATCH(POBJGPU pGpu, struct MemoryManager *pMemoryManager, PMEMORY_DESCRIPTOR pMemDesc) { + return pMemoryManager->__memmgrDuplicateFromScanoutCarveoutRegion__(pGpu, pMemoryManager, pMemDesc); +} + static inline NvBool memmgrIsMemoryIoCoherent_DISPATCH(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, NV_MEMORY_ALLOCATION_PARAMS *pAllocData) { return pMemoryManager->__memmgrIsMemoryIoCoherent__(pGpu, pMemoryManager, pAllocData); } @@ -2403,7 +2468,7 @@ static inline NV_STATUS memmgrReserveVbiosVgaRegions_56cd7a(OBJGPU *pGpu, struct } -static inline NV_STATUS memmgrReserveConsoleRegion_56cd7a(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, FB_REGION_DESCRIPTOR *arg3) { +static inline NV_STATUS memmgrReserveConsoleRegion_56cd7a(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { return NV_OK; } @@ -2580,6 +2645,10 @@ static inline NV_STATUS memmgrCalculateHeapOffsetWithGSP_46f6a7(OBJGPU *pGpu, st } +NV_STATUS memmgrGetCarveoutRegionInfo_KERNEL(POBJGPU pGpu, struct MemoryManager *pMemoryManager, NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS *pParams); + +NV_STATUS memmgrGetCarveoutRegionInfo_GB10B(POBJGPU pGpu, struct MemoryManager *pMemoryManager, NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS *pParams); + static inline NV_STATUS memmgrGetCarveoutRegionInfo_56cd7a(POBJGPU pGpu, struct MemoryManager *pMemoryManager, NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS *pParams) { return NV_OK; } @@ -2625,11 +2694,13 @@ static inline NV_STATUS memmgrInitFbRegions_56cd7a(OBJGPU *pGpu, struct MemoryMa NV_STATUS memmgrInitFbRegions_IMPL(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); -static inline NV_STATUS memmgrAllocateConsoleRegion_56cd7a(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, FB_REGION_DESCRIPTOR *arg3) { +static inline NV_STATUS memmgrAllocateConsoleRegion_56cd7a(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { return NV_OK; } -NV_STATUS memmgrAllocateConsoleRegion_IMPL(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, FB_REGION_DESCRIPTOR *arg3); +NV_STATUS memmgrAllocateConsoleRegion_GM107(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); + +NV_STATUS memmgrAllocateConsoleRegion_GB10B(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); NV_STATUS memmgrScrubHandlePostSchedulingEnable_GP100(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); @@ -3087,6 +3158,54 @@ NvU32 memmgrGetFBEndReserveSizeEstimate_GB100(OBJGPU *pGpu, struct MemoryManager NvU32 memmgrGetFBEndReserveSizeEstimate_GM107(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); +NV_STATUS memmgrInitZeroFbRegionsHal_GB10B(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); + +static inline NV_STATUS memmgrInitZeroFbRegionsHal_56cd7a(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return NV_OK; +} + +NV_STATUS memmgrAllocScanoutCarveoutRegionResources_GB10B(struct MemoryManager *pMemoryManager, NV_MEMORY_ALLOCATION_PARAMS *pAllocData, NvU32 owner, NvU32 *pHeapFlag, MEMORY_DESCRIPTOR *pMemDesc); + +static inline NV_STATUS memmgrAllocScanoutCarveoutRegionResources_46f6a7(struct MemoryManager *pMemoryManager, NV_MEMORY_ALLOCATION_PARAMS *pAllocData, NvU32 owner, NvU32 *pHeapFlag, MEMORY_DESCRIPTOR *pMemDesc) { + return NV_ERR_NOT_SUPPORTED; +} + +NV_STATUS memmgrAllocFromScanoutCarveoutRegion_GB10B(POBJGPU pGpu, struct MemoryManager *pMemoryManager, NvU32 owner, NV_MEMORY_ALLOCATION_PARAMS *pVidHeapAlloc, NvU32 *pHeapFlag, PMEMORY_DESCRIPTOR *ppMemDesc); + +static inline NV_STATUS memmgrAllocFromScanoutCarveoutRegion_46f6a7(POBJGPU pGpu, struct MemoryManager *pMemoryManager, NvU32 owner, NV_MEMORY_ALLOCATION_PARAMS *pVidHeapAlloc, NvU32 *pHeapFlag, PMEMORY_DESCRIPTOR *ppMemDesc) { + return NV_ERR_NOT_SUPPORTED; +} + +void memmgrFreeScanoutCarveoutRegionResources_GB10B(struct MemoryManager *pMemoryManager, NvU64 base); + +static inline void memmgrFreeScanoutCarveoutRegionResources_b3696a(struct MemoryManager *pMemoryManager, NvU64 base) { + return; +} + +void memmgrFreeFromScanoutCarveoutRegion_GB10B(POBJGPU pGpu, struct MemoryManager *pMemoryManager, PMEMORY_DESCRIPTOR pMemDesc); + +static inline void memmgrFreeFromScanoutCarveoutRegion_b3696a(POBJGPU pGpu, struct MemoryManager *pMemoryManager, PMEMORY_DESCRIPTOR pMemDesc) { + return; +} + +NV_STATUS memmgrCreateScanoutCarveoutHeap_GB10B(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); + +static inline NV_STATUS memmgrCreateScanoutCarveoutHeap_46f6a7(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return NV_ERR_NOT_SUPPORTED; +} + +NV_STATUS memmgrDestroyScanoutCarveoutHeap_GB10B(OBJGPU *pGpu, struct MemoryManager *pMemoryManager); + +static inline NV_STATUS memmgrDestroyScanoutCarveoutHeap_46f6a7(OBJGPU *pGpu, struct MemoryManager *pMemoryManager) { + return NV_ERR_NOT_SUPPORTED; +} + +NV_STATUS memmgrDuplicateFromScanoutCarveoutRegion_GB10B(POBJGPU pGpu, struct MemoryManager *pMemoryManager, PMEMORY_DESCRIPTOR pMemDesc); + +static inline NV_STATUS memmgrDuplicateFromScanoutCarveoutRegion_46f6a7(POBJGPU pGpu, struct MemoryManager *pMemoryManager, PMEMORY_DESCRIPTOR pMemDesc) { + return NV_ERR_NOT_SUPPORTED; +} + NvBool memmgrIsMemoryIoCoherent_GB20B(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, NV_MEMORY_ALLOCATION_PARAMS *pAllocData); static inline NvBool memmgrIsMemoryIoCoherent_88bc07(OBJGPU *pGpu, struct MemoryManager *pMemoryManager, NV_MEMORY_ALLOCATION_PARAMS *pAllocData) { diff --git a/src/nvidia/generated/g_nv_name_released.h b/src/nvidia/generated/g_nv_name_released.h index b0b950b93..2ead7be19 100644 --- a/src/nvidia/generated/g_nv_name_released.h +++ b/src/nvidia/generated/g_nv_name_released.h @@ -5416,6 +5416,7 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x2941, 0x21ca, 0x10de, "NVIDIA GB200" }, { 0x2B85, 0x0000, 0x0000, "NVIDIA GeForce RTX 5090" }, { 0x2B87, 0x0000, 0x0000, "NVIDIA GeForce RTX 5090 D" }, + { 0x2B8C, 0x0000, 0x0000, "NVIDIA GeForce RTX 5090 D V2" }, { 0x2BB1, 0x204b, 0x1028, "NVIDIA RTX PRO 6000 Blackwell Workstation Edition" }, { 0x2BB1, 0x204b, 0x103c, "NVIDIA RTX PRO 6000 Blackwell Workstation Edition" }, { 0x2BB1, 0x204b, 0x10de, "NVIDIA RTX PRO 6000 Blackwell Workstation Edition" }, @@ -5437,6 +5438,10 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x2C31, 0x2051, 0x103c, "NVIDIA RTX PRO 4500 Blackwell" }, { 0x2C31, 0x2051, 0x10de, "NVIDIA RTX PRO 4500 Blackwell" }, { 0x2C31, 0x2051, 0x17aa, "NVIDIA RTX PRO 4500 Blackwell" }, + { 0x2C33, 0x2053, 0x1028, "NVIDIA RTX PRO 4000 Blackwell SFF Edition" }, + { 0x2C33, 0x2053, 0x103c, "NVIDIA RTX PRO 4000 Blackwell SFF Edition" }, + { 0x2C33, 0x2053, 0x10de, "NVIDIA RTX PRO 4000 Blackwell SFF Edition" }, + { 0x2C33, 0x2053, 0x17aa, "NVIDIA RTX PRO 4000 Blackwell SFF Edition" }, { 0x2C34, 0x2052, 0x1028, "NVIDIA RTX PRO 4000 Blackwell" }, { 0x2C34, 0x2052, 0x103c, "NVIDIA RTX PRO 4000 Blackwell" }, { 0x2C34, 0x2052, 0x10de, "NVIDIA RTX PRO 4000 Blackwell" }, @@ -5449,6 +5454,10 @@ static const CHIPS_RELEASED sChipsReleased[] = { { 0x2D05, 0x0000, 0x0000, "NVIDIA GeForce RTX 5060" }, { 0x2D18, 0x0000, 0x0000, "NVIDIA GeForce RTX 5070 Laptop GPU" }, { 0x2D19, 0x0000, 0x0000, "NVIDIA GeForce RTX 5060 Laptop GPU" }, + { 0x2D30, 0x2054, 0x1028, "NVIDIA RTX PRO 2000 Blackwell" }, + { 0x2D30, 0x2054, 0x103c, "NVIDIA RTX PRO 2000 Blackwell" }, + { 0x2D30, 0x2054, 0x10de, "NVIDIA RTX PRO 2000 Blackwell" }, + { 0x2D30, 0x2054, 0x17aa, "NVIDIA RTX PRO 2000 Blackwell" }, { 0x2D39, 0x0000, 0x0000, "NVIDIA RTX PRO 2000 Blackwell Generation Laptop GPU" }, { 0x2D58, 0x0000, 0x0000, "NVIDIA GeForce RTX 5070 Laptop GPU" }, { 0x2D59, 0x0000, 0x0000, "NVIDIA GeForce RTX 5060 Laptop GPU" }, diff --git a/src/nvidia/generated/g_subdevice_nvoc.c b/src/nvidia/generated/g_subdevice_nvoc.c index 885dbbdd9..aee95c0fc 100644 --- a/src/nvidia/generated/g_subdevice_nvoc.c +++ b/src/nvidia/generated/g_subdevice_nvoc.c @@ -1583,6 +1583,21 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic #endif }, { /* [96] */ +#if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) + /*pFunc=*/ (void (*)(void)) NULL, +#else + /*pFunc=*/ (void (*)(void)) &subdeviceCtrlCmdGpuForceGspUnload_IMPL, +#endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) + /*flags=*/ 0x4u, + /*accessRight=*/0x0u, + /*methodId=*/ 0x208001ebu, + /*paramSize=*/ sizeof(NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS), + /*pClassInfo=*/ &(__nvoc_class_def_Subdevice.classInfo), +#if NV_PRINTF_STRINGS_ALLOWED + /*func=*/ "subdeviceCtrlCmdGpuForceGspUnload" +#endif + }, + { /* [97] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1597,7 +1612,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventSetNotification" #endif }, - { /* [97] */ + { /* [98] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1612,7 +1627,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventSetTrigger" #endif }, - { /* [98] */ + { /* [99] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1627,7 +1642,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventSetMemoryNotifies" #endif }, - { /* [99] */ + { /* [100] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1642,7 +1657,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventSetSemaphoreMemory" #endif }, - { /* [100] */ + { /* [101] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1657,7 +1672,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventSetSemaMemValidation" #endif }, - { /* [101] */ + { /* [102] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x9u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1672,7 +1687,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventSetTriggerFifo" #endif }, - { /* [102] */ + { /* [103] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1687,7 +1702,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventVideoBindEvtbuf" #endif }, - { /* [103] */ + { /* [104] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1702,7 +1717,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEventGspTraceRatsBindEvtbuf" #endif }, - { /* [104] */ + { /* [105] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1717,7 +1732,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdTimerSchedule" #endif }, - { /* [105] */ + { /* [106] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1732,7 +1747,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdTimerCancel" #endif }, - { /* [106] */ + { /* [107] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1747,7 +1762,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdTimerGetTime" #endif }, - { /* [107] */ + { /* [108] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x9u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1762,7 +1777,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdTimerGetRegisterOffset" #endif }, - { /* [108] */ + { /* [109] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1777,7 +1792,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdTimerGetGpuCpuTimeCorrelationInfo" #endif }, - { /* [109] */ + { /* [110] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10208u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1792,7 +1807,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdTimerSetGrTickFreq" #endif }, - { /* [110] */ + { /* [111] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1807,7 +1822,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdThermalSystemExecuteV2" #endif }, - { /* [111] */ + { /* [112] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1822,7 +1837,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdI2cReadBuffer" #endif }, - { /* [112] */ + { /* [113] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1837,7 +1852,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdI2cWriteBuffer" #endif }, - { /* [113] */ + { /* [114] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1852,7 +1867,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdI2cReadReg" #endif }, - { /* [114] */ + { /* [115] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1867,7 +1882,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdI2cWriteReg" #endif }, - { /* [115] */ + { /* [116] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1000au) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1882,7 +1897,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBiosGetSKUInfo" #endif }, - { /* [116] */ + { /* [117] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1897,7 +1912,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBiosGetPostTime" #endif }, - { /* [117] */ + { /* [118] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1912,7 +1927,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBiosGetUefiSupport" #endif }, - { /* [118] */ + { /* [119] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1927,7 +1942,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBiosGetNbsiV2" #endif }, - { /* [119] */ + { /* [120] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x60048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1942,7 +1957,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBiosGetInfoV2" #endif }, - { /* [120] */ + { /* [121] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1957,7 +1972,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayGetStaticInfo" #endif }, - { /* [121] */ + { /* [122] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1972,7 +1987,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncGetRasterSyncDecodeMode" #endif }, - { /* [122] */ + { /* [123] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x5c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -1987,7 +2002,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysGetStaticConfig" #endif }, - { /* [123] */ + { /* [124] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2002,7 +2017,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalUvmRegisterAccessCntrBuffer" #endif }, - { /* [124] */ + { /* [125] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2017,7 +2032,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalUvmUnregisterAccessCntrBuffer" #endif }, - { /* [125] */ + { /* [126] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2032,7 +2047,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetCaps" #endif }, - { /* [126] */ + { /* [127] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc1u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2047,7 +2062,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkEnableNvlinkPeer" #endif }, - { /* [127] */ + { /* [128] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2062,7 +2077,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetGlobalSmOrder" #endif }, - { /* [128] */ + { /* [129] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2077,7 +2092,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkCoreCallback" #endif }, - { /* [129] */ + { /* [130] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2092,7 +2107,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkUpdateRemoteLocalSid" #endif }, - { /* [130] */ + { /* [131] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2107,7 +2122,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetFloorsweepingMasks" #endif }, - { /* [131] */ + { /* [132] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8000u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2122,7 +2137,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCtxBufferPtes" #endif }, - { /* [132] */ + { /* [133] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2137,7 +2152,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetAliEnabled" #endif }, - { /* [133] */ + { /* [134] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2152,7 +2167,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetInfo" #endif }, - { /* [134] */ + { /* [135] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2167,7 +2182,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetZcullInfo" #endif }, - { /* [135] */ + { /* [136] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2182,7 +2197,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetRopInfo" #endif }, - { /* [136] */ + { /* [137] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2197,7 +2212,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetPpcMasks" #endif }, - { /* [137] */ + { /* [138] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c1c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2212,7 +2227,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetContextBuffersInfo" #endif }, - { /* [138] */ + { /* [139] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2227,7 +2242,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetSmIssueRateModifier" #endif }, - { /* [139] */ + { /* [140] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x404c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2242,7 +2257,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGetChipInfo" #endif }, - { /* [140] */ + { /* [141] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2257,7 +2272,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrInternalSetFecsTraceHwEnable" #endif }, - { /* [141] */ + { /* [142] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2272,7 +2287,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrInternalGetFecsTraceHwEnable" #endif }, - { /* [142] */ + { /* [143] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2287,7 +2302,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrInternalSetFecsTraceRdOffset" #endif }, - { /* [143] */ + { /* [144] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2302,7 +2317,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrInternalSetFecsTraceWrOffset" #endif }, - { /* [144] */ + { /* [145] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2317,7 +2332,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrInternalGetFecsTraceRdOffset" #endif }, - { /* [145] */ + { /* [146] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2332,7 +2347,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetFecsRecordSize" #endif }, - { /* [146] */ + { /* [147] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10040u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2347,7 +2362,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrStaticGetFecsTraceDefines" #endif }, - { /* [147] */ + { /* [148] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2362,7 +2377,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetFecsTraceDefines" #endif }, - { /* [148] */ + { /* [149] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c4c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2377,7 +2392,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGetDeviceInfoTable" #endif }, - { /* [149] */ + { /* [150] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2392,7 +2407,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGetUserRegisterAccessMap" #endif }, - { /* [150] */ + { /* [151] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2407,7 +2422,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkUpdateHshubMux" #endif }, - { /* [151] */ + { /* [152] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2422,7 +2437,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalKMIGmgrPromoteGpuInstanceMemRange" #endif }, - { /* [152] */ + { /* [153] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2437,7 +2452,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPfmReqHndlrDependencyCheck" #endif }, - { /* [153] */ + { /* [154] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2452,7 +2467,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalCheckCtsIdValid" #endif }, - { /* [154] */ + { /* [155] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2467,7 +2482,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetPdbProperties" #endif }, - { /* [155] */ + { /* [156] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2482,7 +2497,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayWriteInstMem" #endif }, - { /* [156] */ + { /* [157] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2497,7 +2512,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalRecoverAllComputeContexts" #endif }, - { /* [157] */ + { /* [158] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2512,7 +2527,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayGetIpVersion" #endif }, - { /* [158] */ + { /* [159] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2527,7 +2542,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGetSmcMode" #endif }, - { /* [159] */ + { /* [160] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2542,7 +2557,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplaySetupRgLineIntr" #endif }, - { /* [160] */ + { /* [161] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2557,7 +2572,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkPreSetupNvlinkPeer" #endif }, - { /* [161] */ + { /* [162] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2572,7 +2587,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkPostSetupNvlinkPeer" #endif }, - { /* [162] */ + { /* [163] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2587,7 +2602,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysSetPartitionableMem" #endif }, - { /* [163] */ + { /* [164] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2602,7 +2617,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalFifoPromoteRunlistBuffers" #endif }, - { /* [164] */ + { /* [165] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2617,7 +2632,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplaySetImportedImpData" #endif }, - { /* [165] */ + { /* [166] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2632,7 +2647,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdIsEgpuBridge" #endif }, - { /* [166] */ + { /* [167] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2647,7 +2662,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalLogOobXid" #endif }, - { /* [167] */ + { /* [168] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2662,7 +2677,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalVmmuGetSpaForGpaEntries" #endif }, - { /* [168] */ + { /* [169] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2677,7 +2692,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplaySetChannelPushbuffer" #endif }, - { /* [169] */ + { /* [170] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2692,7 +2707,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGmmuGetStaticInfo" #endif }, - { /* [170] */ + { /* [171] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2707,7 +2722,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetHeapReservationSize" #endif }, - { /* [171] */ + { /* [172] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2722,7 +2737,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdIntrGetKernelTable" #endif }, - { /* [172] */ + { /* [173] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2737,7 +2752,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayGetDisplayMask" #endif }, - { /* [173] */ + { /* [174] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2752,7 +2767,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkRemoveNvlinkMapping" #endif }, - { /* [174] */ + { /* [175] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1d8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2767,7 +2782,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalFifoGetNumChannels" #endif }, - { /* [175] */ + { /* [176] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2782,7 +2797,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkSaveRestoreHshubState" #endif }, - { /* [176] */ + { /* [177] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2797,7 +2812,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalStaticKMIGmgrGetProfiles" #endif }, - { /* [177] */ + { /* [178] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2812,7 +2827,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkProgramBufferready" #endif }, - { /* [178] */ + { /* [179] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2827,7 +2842,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalStaticKMIGmgrGetPartitionableEngines" #endif }, - { /* [179] */ + { /* [180] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2842,7 +2857,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalStaticKMIGmgrGetSwizzIdFbMemPageRanges" #endif }, - { /* [180] */ + { /* [181] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2857,7 +2872,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKMemSysGetMIGMemoryConfig" #endif }, - { /* [181] */ + { /* [182] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2872,7 +2887,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbSetZbcReferenced" #endif }, - { /* [182] */ + { /* [183] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2887,7 +2902,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalRcWatchdogTimeout" #endif }, - { /* [183] */ + { /* [184] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2902,7 +2917,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysGetMIGMemoryPartitionTable" #endif }, - { /* [184] */ + { /* [185] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2917,7 +2932,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysL2InvalidateEvict" #endif }, - { /* [185] */ + { /* [186] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2932,7 +2947,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysFlushL2AllRamsAndCaches" #endif }, - { /* [186] */ + { /* [187] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2947,7 +2962,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysDisableNvlinkPeers" #endif }, - { /* [187] */ + { /* [188] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2962,7 +2977,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysProgramRawCompressionMode" #endif }, - { /* [188] */ + { /* [189] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2977,7 +2992,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalBusFlushWithSysmembar" #endif }, - { /* [189] */ + { /* [190] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -2992,7 +3007,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalBusSetupP2pMailboxLocal" #endif }, - { /* [190] */ + { /* [191] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3007,7 +3022,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalBusSetupP2pMailboxRemote" #endif }, - { /* [191] */ + { /* [192] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3022,7 +3037,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalBusDestroyP2pMailbox" #endif }, - { /* [192] */ + { /* [193] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3037,7 +3052,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalBusCreateC2cPeerMapping" #endif }, - { /* [193] */ + { /* [194] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3052,7 +3067,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalBusRemoveC2cPeerMapping" #endif }, - { /* [194] */ + { /* [195] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3067,7 +3082,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayPreUnixConsole" #endif }, - { /* [195] */ + { /* [196] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3082,7 +3097,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayPostUnixConsole" #endif }, - { /* [196] */ + { /* [197] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3097,7 +3112,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkUpdateCurrentConfig" #endif }, - { /* [197] */ + { /* [198] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3112,7 +3127,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdHshubGetMaxHshubsPerShim" #endif }, - { /* [198] */ + { /* [199] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3127,7 +3142,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpuGetHfrpInfo" #endif }, - { /* [199] */ + { /* [200] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3142,7 +3157,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPmgrUnsetDynamicBoostLimit" #endif }, - { /* [200] */ + { /* [201] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc1u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3157,7 +3172,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkUpdatePeerLinkMask" #endif }, - { /* [201] */ + { /* [202] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3172,7 +3187,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfGpuBoostSyncSetControl" #endif }, - { /* [202] */ + { /* [203] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3187,7 +3202,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfSyncGpuBoostSetLimits" #endif }, - { /* [203] */ + { /* [204] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3202,7 +3217,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfGpuBoostSyncGetInfo" #endif }, - { /* [204] */ + { /* [205] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3217,7 +3232,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfGetAuxPowerState" #endif }, - { /* [205] */ + { /* [206] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc1u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3232,7 +3247,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkUpdateLinkConnection" #endif }, - { /* [206] */ + { /* [207] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3247,7 +3262,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkEnableLinksPostTopology" #endif }, - { /* [207] */ + { /* [208] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3262,7 +3277,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkPreLinkTrainAli" #endif }, - { /* [208] */ + { /* [209] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100d0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3277,7 +3292,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetLinkMaskPostRxDet" #endif }, - { /* [209] */ + { /* [210] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3292,7 +3307,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkLinkTrainAli" #endif }, - { /* [210] */ + { /* [211] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3307,7 +3322,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetNvlinkDeviceInfo" #endif }, - { /* [211] */ + { /* [212] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3322,7 +3337,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdHshubPeerConnConfig" #endif }, - { /* [212] */ + { /* [213] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3337,7 +3352,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdHshubGetHshubIdForLinks" #endif }, - { /* [213] */ + { /* [214] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3352,7 +3367,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdHshubGetNumUnits" #endif }, - { /* [214] */ + { /* [215] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3367,7 +3382,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdHshubNextHshubId" #endif }, - { /* [215] */ + { /* [216] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3382,7 +3397,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdHshubEgmConfig" #endif }, - { /* [216] */ + { /* [217] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3397,7 +3412,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetIoctrlDeviceInfo" #endif }, - { /* [217] */ + { /* [218] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3412,7 +3427,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkProgramLinkSpeed" #endif }, - { /* [218] */ + { /* [219] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3427,7 +3442,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkAreLinksTrained" #endif }, - { /* [219] */ + { /* [220] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3442,7 +3457,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkResetLinks" #endif }, - { /* [220] */ + { /* [221] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3457,7 +3472,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkDisableDlInterrupts" #endif }, - { /* [221] */ + { /* [222] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3472,7 +3487,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetLinkAndClockInfo" #endif }, - { /* [222] */ + { /* [223] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3487,7 +3502,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkSetupNvlinkSysmem" #endif }, - { /* [223] */ + { /* [224] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3502,7 +3517,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkProcessForcedConfigs" #endif }, - { /* [224] */ + { /* [225] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3517,7 +3532,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkSyncLaneShutdownProps" #endif }, - { /* [225] */ + { /* [226] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3532,7 +3547,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkEnableSysmemNvlinkAts" #endif }, - { /* [226] */ + { /* [227] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3547,7 +3562,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPerfmonClientReservationCheck" #endif }, - { /* [227] */ + { /* [228] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3562,7 +3577,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPerfmonClientReservationSet" #endif }, - { /* [228] */ + { /* [229] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3577,7 +3592,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfBoostSet_2x" #endif }, - { /* [229] */ + { /* [230] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3592,7 +3607,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGmmuRegisterFaultBuffer" #endif }, - { /* [230] */ + { /* [231] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3607,7 +3622,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGmmuUnregisterFaultBuffer" #endif }, - { /* [231] */ + { /* [232] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3622,7 +3637,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGmmuRegisterClientShadowFaultBuffer" #endif }, - { /* [232] */ + { /* [233] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3637,7 +3652,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGmmuUnregisterClientShadowFaultBuffer" #endif }, - { /* [233] */ + { /* [234] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3652,7 +3667,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGmmuCopyReservedSplitGVASpacePdesServer" #endif }, - { /* [234] */ + { /* [235] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3667,7 +3682,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfBoostSet_3x" #endif }, - { /* [235] */ + { /* [236] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3682,7 +3697,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfBoostClear_3x" #endif }, - { /* [236] */ + { /* [237] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x80u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3697,7 +3712,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalKMIGmgrExportGPUInstance" #endif }, - { /* [237] */ + { /* [238] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x80u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3712,7 +3727,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalKMIGmgrImportGPUInstance" #endif }, - { /* [238] */ + { /* [239] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3727,7 +3742,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkHshubGetSysmemNvlinkMask" #endif }, - { /* [239] */ + { /* [240] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3742,7 +3757,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBifGetStaticInfo" #endif }, - { /* [240] */ + { /* [241] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3757,7 +3772,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkEnableComputePeerAddr" #endif }, - { /* [241] */ + { /* [242] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3772,7 +3787,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetSetNvswitchFabricAddr" #endif }, - { /* [242] */ + { /* [243] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1d0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3787,7 +3802,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBifGetAspmL1Flags" #endif }, - { /* [243] */ + { /* [244] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3802,7 +3817,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfCfControllerSetMaxVGpuVMCount" #endif }, - { /* [244] */ + { /* [245] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x400c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3817,7 +3832,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCcuGetSampleInfo" #endif }, - { /* [245] */ + { /* [246] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3832,7 +3847,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCcuMap" #endif }, - { /* [246] */ + { /* [247] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3847,7 +3862,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCcuUnmap" #endif }, - { /* [247] */ + { /* [248] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3862,7 +3877,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalSetP2pCaps" #endif }, - { /* [248] */ + { /* [249] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3877,7 +3892,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalRemoveP2pCaps" #endif }, - { /* [249] */ + { /* [250] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3892,7 +3907,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGetPcieP2pCaps" #endif }, - { /* [250] */ + { /* [251] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3907,7 +3922,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBifSetPcieRo" #endif }, - { /* [251] */ + { /* [252] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3922,7 +3937,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalStaticKMIGmgrGetComputeInstanceProfiles" #endif }, - { /* [252] */ + { /* [253] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3937,7 +3952,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCcuSetStreamState" #endif }, - { /* [253] */ + { /* [254] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3952,7 +3967,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalInitGpuIntr" #endif }, - { /* [254] */ + { /* [255] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3967,7 +3982,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncOptimizeTiming" #endif }, - { /* [255] */ + { /* [256] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3982,7 +3997,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncGetDisplayIds" #endif }, - { /* [256] */ + { /* [257] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -3997,7 +4012,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncSetStereoSync" #endif }, - { /* [257] */ + { /* [258] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4012,7 +4027,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalFbsrInit" #endif }, - { /* [258] */ + { /* [259] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4027,7 +4042,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalFifoToggleActiveChannelScheduling" #endif }, - { /* [259] */ + { /* [260] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4042,7 +4057,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncGetVactiveLines" #endif }, - { /* [260] */ + { /* [261] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4057,7 +4072,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalMemmgrGetVgpuHostRmReservedFb" #endif }, - { /* [261] */ + { /* [262] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4072,7 +4087,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPostInitBrightcStateLoad" #endif }, - { /* [262] */ + { /* [263] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4087,7 +4102,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetNumActiveLinksPerIoctrl" #endif }, - { /* [263] */ + { /* [264] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4102,7 +4117,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkGetTotalNumLinksPerIoctrl" #endif }, - { /* [264] */ + { /* [265] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4117,7 +4132,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncIsDisplayIdValid" #endif }, - { /* [265] */ + { /* [266] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4132,7 +4147,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncSetOrRestoreGpioRasterSync" #endif }, - { /* [266] */ + { /* [267] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4147,7 +4162,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalSmbpbiPfmReqHndlrCapUpdate" #endif }, - { /* [267] */ + { /* [268] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4162,7 +4177,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPmgrPfmReqHndlrStateLoadSync" #endif }, - { /* [268] */ + { /* [269] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4177,7 +4192,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalThermPfmReqHndlrStateInitSync" #endif }, - { /* [269] */ + { /* [270] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4192,7 +4207,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPfmReqHndlrGetPm1State" #endif }, - { /* [270] */ + { /* [271] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4207,7 +4222,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPfmReqHndlrSetPm1State" #endif }, - { /* [271] */ + { /* [272] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4222,7 +4237,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPmgrPfmReqHndlrUpdateEdppLimit" #endif }, - { /* [272] */ + { /* [273] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4237,7 +4252,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalThermPfmReqHndlrUpdateTgpuLimit" #endif }, - { /* [273] */ + { /* [274] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4252,7 +4267,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPmgrPfmReqHndlrConfigureTgpMode" #endif }, - { /* [274] */ + { /* [275] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4267,7 +4282,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPmgrPfmReqHndlrConfigureTurboV2" #endif }, - { /* [275] */ + { /* [276] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4282,7 +4297,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPfmReqHndlrGetVpstateInfo" #endif }, - { /* [276] */ + { /* [277] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4297,7 +4312,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPfmReqHndlrGetVpstateMapping" #endif }, - { /* [277] */ + { /* [278] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4312,7 +4327,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPerfPfmReqHndlrSetVpstate" #endif }, - { /* [278] */ + { /* [279] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4327,7 +4342,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalFifoGetNumSecureChannels" #endif }, - { /* [279] */ + { /* [280] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4342,7 +4357,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdSpdmPartition" #endif }, - { /* [280] */ + { /* [281] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4357,7 +4372,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceSpdmRetrieveTranscript" #endif }, - { /* [281] */ + { /* [282] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4372,7 +4387,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBifDisableSystemMemoryAccess" #endif }, - { /* [282] */ + { /* [283] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4387,7 +4402,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplayPinsetsToLockpins" #endif }, - { /* [283] */ + { /* [284] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4402,7 +4417,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalDetectHsVideoBridge" #endif }, - { /* [284] */ + { /* [285] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4417,7 +4432,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDisplaySetSliLinkGpioSwControl" #endif }, - { /* [285] */ + { /* [286] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4432,7 +4447,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalSetStaticEdidData" #endif }, - { /* [286] */ + { /* [287] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4447,7 +4462,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeDeriveSwlKeys" #endif }, - { /* [287] */ + { /* [288] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4462,7 +4477,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeDeriveLceKeys" #endif }, - { /* [288] */ + { /* [289] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4477,7 +4492,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeRotateKeys" #endif }, - { /* [289] */ + { /* [290] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4492,7 +4507,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeRCChannelsForKeyRotation" #endif }, - { /* [290] */ + { /* [291] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4507,7 +4522,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeSetGpuState" #endif }, - { /* [291] */ + { /* [292] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4522,7 +4537,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeSetSecurityPolicy" #endif }, - { /* [292] */ + { /* [293] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4537,7 +4552,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpuClientLowPowerModeEnter" #endif }, - { /* [293] */ + { /* [294] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4552,7 +4567,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkPostFatalErrorRecovery" #endif }, - { /* [294] */ + { /* [295] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4567,7 +4582,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpuGetGspRmFreeHeap" #endif }, - { /* [295] */ + { /* [296] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4582,7 +4597,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpuSetIllum" #endif }, - { /* [296] */ + { /* [297] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4597,7 +4612,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGsyncApplyStereoPinAlwaysHiWar" #endif }, - { /* [297] */ + { /* [298] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4612,7 +4627,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpuGetPFBar1Spa" #endif }, - { /* [298] */ + { /* [299] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4627,7 +4642,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalDisplayAcpiSubsytemActivated" #endif }, - { /* [299] */ + { /* [300] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4642,7 +4657,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalDisplayPreModeSet" #endif }, - { /* [300] */ + { /* [301] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4657,7 +4672,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalDisplayPostModeSet" #endif }, - { /* [301] */ + { /* [302] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4672,7 +4687,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalConfComputeGetStaticInfo" #endif }, - { /* [302] */ + { /* [303] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4687,7 +4702,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalMemmgrMemoryTransferWithGsp" #endif }, - { /* [303] */ + { /* [304] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4702,7 +4717,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGetLocalAtsConfig" #endif }, - { /* [304] */ + { /* [305] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4717,7 +4732,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalSetPeerAtsConfig" #endif }, - { /* [305] */ + { /* [306] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4732,7 +4747,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalPmgrPfmReqHndlrGetEdppLimitInfo" #endif }, - { /* [306] */ + { /* [307] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4747,7 +4762,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalInitUserSharedData" #endif }, - { /* [307] */ + { /* [308] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4762,7 +4777,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalUserSharedDataSetDataPoll" #endif }, - { /* [308] */ + { /* [309] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xd0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4777,7 +4792,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalNvlinkReplaySuppressedErrors" #endif }, - { /* [309] */ + { /* [310] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4792,7 +4807,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetSmIssueRateModifierV2" #endif }, - { /* [310] */ + { /* [311] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c0c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4807,7 +4822,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrInternalStaticGetSmIssueThrottleCtrl" #endif }, - { /* [311] */ + { /* [312] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4822,7 +4837,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdSetGpfifo" #endif }, - { /* [312] */ + { /* [313] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4837,7 +4852,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoBindEngines" #endif }, - { /* [313] */ + { /* [314] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4852,7 +4867,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdSetOperationalProperties" #endif }, - { /* [314] */ + { /* [315] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4867,7 +4882,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetPhysicalChannelCount" #endif }, - { /* [315] */ + { /* [316] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x30008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4882,7 +4897,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoGetInfo" #endif }, - { /* [316] */ + { /* [317] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4897,7 +4912,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoDisableChannels" #endif }, - { /* [317] */ + { /* [318] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10004u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4912,7 +4927,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoGetChannelMemInfo" #endif }, - { /* [318] */ + { /* [319] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4927,7 +4942,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoGetUserdLocation" #endif }, - { /* [319] */ + { /* [320] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4942,7 +4957,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoObjschedSwGetLog" #endif }, - { /* [320] */ + { /* [321] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x5c040u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4957,7 +4972,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoGetDeviceInfoTable" #endif }, - { /* [321] */ + { /* [322] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x244u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4972,7 +4987,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoClearFaultedBit" #endif }, - { /* [322] */ + { /* [323] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x68u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -4987,7 +5002,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoRunlistSetSchedPolicy" #endif }, - { /* [323] */ + { /* [324] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5002,7 +5017,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoUpdateChannelInfo" #endif }, - { /* [324] */ + { /* [325] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5017,7 +5032,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoDisableUsermodeChannels" #endif }, - { /* [325] */ + { /* [326] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5032,7 +5047,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoSetupVfZombieSubctxPdb" #endif }, - { /* [326] */ + { /* [327] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5047,7 +5062,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoGetAllocatedChannels" #endif }, - { /* [327] */ + { /* [328] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5062,7 +5077,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoDisableChannelsForKeyRotation" #endif }, - { /* [328] */ + { /* [329] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5077,7 +5092,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoDisableChannelsForKeyRotationV2" #endif }, - { /* [329] */ + { /* [330] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5092,7 +5107,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoObjschedGetState" #endif }, - { /* [330] */ + { /* [331] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5107,7 +5122,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoObjschedSetState" #endif }, - { /* [331] */ + { /* [332] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5122,7 +5137,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoObjschedGetCaps" #endif }, - { /* [332] */ + { /* [333] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5137,7 +5152,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoGetChannelGroupUniqueIdInfo" #endif }, - { /* [333] */ + { /* [334] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5152,7 +5167,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFifoQueryChannelUniqueId" #endif }, - { /* [334] */ + { /* [335] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5167,7 +5182,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetInfo" #endif }, - { /* [335] */ + { /* [336] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5182,7 +5197,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswZcullMode" #endif }, - { /* [336] */ + { /* [337] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10109u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5197,7 +5212,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetZcullInfo" #endif }, - { /* [337] */ + { /* [338] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5212,7 +5227,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswPmMode" #endif }, - { /* [338] */ + { /* [339] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x90348u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5227,7 +5242,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswZcullBind" #endif }, - { /* [339] */ + { /* [340] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5242,7 +5257,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswPmBind" #endif }, - { /* [340] */ + { /* [341] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5257,7 +5272,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrSetGpcTileMap" #endif }, - { /* [341] */ + { /* [342] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5272,7 +5287,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswSmpcMode" #endif }, - { /* [342] */ + { /* [343] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5287,7 +5302,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetSmToGpcTpcMappings" #endif }, - { /* [343] */ + { /* [344] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10348u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5302,7 +5317,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrSetCtxswPreemptionMode" #endif }, - { /* [344] */ + { /* [345] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5317,7 +5332,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswPreemptionBind" #endif }, - { /* [345] */ + { /* [346] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5332,7 +5347,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrPcSamplingMode" #endif }, - { /* [346] */ + { /* [347] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5347,7 +5362,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetROPInfo" #endif }, - { /* [347] */ + { /* [348] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5362,7 +5377,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCtxswStats" #endif }, - { /* [348] */ + { /* [349] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5377,7 +5392,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCtxBufferSize" #endif }, - { /* [349] */ + { /* [350] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8000u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5392,7 +5407,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCtxBufferInfo" #endif }, - { /* [350] */ + { /* [351] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5407,7 +5422,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetGlobalSmOrder" #endif }, - { /* [351] */ + { /* [352] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5422,7 +5437,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCurrentResidentChannel" #endif }, - { /* [352] */ + { /* [353] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5437,7 +5452,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetVatAlarmData" #endif }, - { /* [353] */ + { /* [354] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5452,7 +5467,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetAttributeBufferSize" #endif }, - { /* [354] */ + { /* [355] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5467,7 +5482,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGfxPoolQuerySize" #endif }, - { /* [355] */ + { /* [356] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5482,7 +5497,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGfxPoolInitialize" #endif }, - { /* [356] */ + { /* [357] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5497,7 +5512,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGfxPoolAddSlots" #endif }, - { /* [357] */ + { /* [358] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5512,7 +5527,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGfxPoolRemoveSlots" #endif }, - { /* [358] */ + { /* [359] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10au) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5527,7 +5542,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCapsV2" #endif }, - { /* [359] */ + { /* [360] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5542,7 +5557,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetInfoV2" #endif }, - { /* [360] */ + { /* [361] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5557,7 +5572,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetGpcMask" #endif }, - { /* [361] */ + { /* [362] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5572,7 +5587,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetTpcMask" #endif }, - { /* [362] */ + { /* [363] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5587,7 +5602,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrSetTpcPartitionMode" #endif }, - { /* [363] */ + { /* [364] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5602,7 +5617,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetEngineContextProperties" #endif }, - { /* [364] */ + { /* [365] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5617,7 +5632,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetSmIssueRateModifier" #endif }, - { /* [365] */ + { /* [366] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5632,7 +5647,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrFecsBindEvtbufForUid" #endif }, - { /* [366] */ + { /* [367] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x14u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5647,7 +5662,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetPhysGpcMask" #endif }, - { /* [367] */ + { /* [368] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5662,7 +5677,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetPpcMask" #endif }, - { /* [368] */ + { /* [369] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5677,7 +5692,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetNumTpcsForGpc" #endif }, - { /* [369] */ + { /* [370] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5692,7 +5707,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetCtxswModes" #endif }, - { /* [370] */ + { /* [371] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5707,7 +5722,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetGpcTileMap" #endif }, - { /* [371] */ + { /* [372] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10018u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5722,7 +5737,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetZcullMask" #endif }, - { /* [372] */ + { /* [373] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x918u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5737,7 +5752,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrFecsBindEvtbufForUidV2" #endif }, - { /* [373] */ + { /* [374] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5752,7 +5767,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetGfxGpcAndTpcInfo" #endif }, - { /* [374] */ + { /* [375] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5767,7 +5782,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrCtxswSetupBind" #endif }, - { /* [375] */ + { /* [376] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5782,7 +5797,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetSmIssueRateModifierV2" #endif }, - { /* [376] */ + { /* [377] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5797,7 +5812,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKGrGetSmIssueThrottleCtrl" #endif }, - { /* [377] */ + { /* [378] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5812,7 +5827,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetInfoV2" #endif }, - { /* [378] */ + { /* [379] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5827,7 +5842,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetCalibrationLockFailed" #endif }, - { /* [379] */ + { /* [380] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5842,7 +5857,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbFlushGpuCache" #endif }, - { /* [380] */ + { /* [381] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5857,7 +5872,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetBar1Offset" #endif }, - { /* [381] */ + { /* [382] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x9u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5872,7 +5887,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbIsKind" #endif }, - { /* [382] */ + { /* [383] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40148u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5887,7 +5902,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetGpuCacheInfo" #endif }, - { /* [383] */ + { /* [384] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5902,7 +5917,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetFBRegionInfo" #endif }, - { /* [384] */ + { /* [385] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5917,7 +5932,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetOfflinedPages" #endif }, - { /* [385] */ + { /* [386] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50158u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5932,7 +5947,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetLTCInfoForFBP" #endif }, - { /* [386] */ + { /* [387] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5947,7 +5962,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbCBCOp" #endif }, - { /* [387] */ + { /* [388] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5962,7 +5977,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetCtagsForCbcEviction" #endif }, - { /* [388] */ + { /* [389] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5977,7 +5992,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbSetupVprRegion" #endif }, - { /* [389] */ + { /* [390] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -5992,7 +6007,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetCliManagedOfflinedPages" #endif }, - { /* [390] */ + { /* [391] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6007,7 +6022,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetCompBitCopyConstructInfo" #endif }, - { /* [391] */ + { /* [392] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6022,7 +6037,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbSetRrd" #endif }, - { /* [392] */ + { /* [393] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6037,7 +6052,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbSetReadLimit" #endif }, - { /* [393] */ + { /* [394] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6052,7 +6067,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbSetWriteLimit" #endif }, - { /* [394] */ + { /* [395] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6067,7 +6082,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbPatchPbrForMining" #endif }, - { /* [395] */ + { /* [396] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6082,7 +6097,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetMemAlignment" #endif }, - { /* [396] */ + { /* [397] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x58u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6097,7 +6112,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetRemappedRows" #endif }, - { /* [397] */ + { /* [398] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6112,7 +6127,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetFsInfo" #endif }, - { /* [398] */ + { /* [399] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x58u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6127,7 +6142,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetRowRemapperHistogram" #endif }, - { /* [399] */ + { /* [400] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6142,7 +6157,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetDynamicOfflinedPages" #endif }, - { /* [400] */ + { /* [401] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6157,7 +6172,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbUpdateNumaStatus" #endif }, - { /* [401] */ + { /* [402] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6172,7 +6187,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetNumaInfo" #endif }, - { /* [402] */ + { /* [403] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x509u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6187,7 +6202,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGbGetSemaphoreSurfaceLayout" #endif }, - { /* [403] */ + { /* [404] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6202,7 +6217,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGmmuCommitTlbInvalidate" #endif }, - { /* [404] */ + { /* [405] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6217,7 +6232,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetStaticBar1Info" #endif }, - { /* [405] */ + { /* [406] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6232,7 +6247,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysQueryDramEncryptionPendingConfiguration" #endif }, - { /* [406] */ + { /* [407] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40044u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6247,7 +6262,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysSetDramEncryptionConfiguration" #endif }, - { /* [407] */ + { /* [408] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6262,7 +6277,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysQueryDramEncryptionInforomSupport" #endif }, - { /* [408] */ + { /* [409] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6277,13 +6292,13 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMemSysQueryDramEncryptionStatus" #endif }, - { /* [409] */ -#if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x108u) + { /* [410] */ +#if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x148u) /*pFunc=*/ (void (*)(void)) NULL, #else /*pFunc=*/ (void (*)(void)) &subdeviceCtrlCmdFbGetCarveoutRegionInfo_IMPL, -#endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x108u) - /*flags=*/ 0x108u, +#endif // NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x148u) + /*flags=*/ 0x148u, /*accessRight=*/0x0u, /*methodId=*/ 0x20801360u, /*paramSize=*/ sizeof(NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS), @@ -6292,7 +6307,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFbGetCarveoutRegionInfo" #endif }, - { /* [410] */ + { /* [411] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1050bu) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6307,7 +6322,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcGetArchInfo" #endif }, - { /* [411] */ + { /* [412] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6322,7 +6337,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcServiceInterrupts" #endif }, - { /* [412] */ + { /* [413] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6337,7 +6352,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcGetManufacturer" #endif }, - { /* [413] */ + { /* [414] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6352,7 +6367,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcChangeReplayableFaultOwnership" #endif }, - { /* [414] */ + { /* [415] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6367,7 +6382,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcGetEngineNotificationIntrVectors" #endif }, - { /* [415] */ + { /* [416] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6382,7 +6397,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcGetStaticIntrTable" #endif }, - { /* [416] */ + { /* [417] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6397,7 +6412,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdMcGetIntrCategorySubtreeMap" #endif }, - { /* [417] */ + { /* [418] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10518u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6412,7 +6427,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPciInfo" #endif }, - { /* [418] */ + { /* [419] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10518u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6427,7 +6442,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPciBarInfo" #endif }, - { /* [419] */ + { /* [420] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6442,7 +6457,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSetPcieLinkWidth" #endif }, - { /* [420] */ + { /* [421] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6457,7 +6472,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSetPcieSpeed" #endif }, - { /* [421] */ + { /* [422] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6472,7 +6487,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusServiceGpuMultifunctionState" #endif }, - { /* [422] */ + { /* [423] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6487,7 +6502,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPexCounters" #endif }, - { /* [423] */ + { /* [424] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6502,7 +6517,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusClearPexCounters" #endif }, - { /* [424] */ + { /* [425] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6517,7 +6532,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusFreezePexCounters" #endif }, - { /* [425] */ + { /* [426] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6532,7 +6547,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPexLaneCounters" #endif }, - { /* [426] */ + { /* [427] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6547,7 +6562,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPcieLtrLatency" #endif }, - { /* [427] */ + { /* [428] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6562,7 +6577,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSetPcieLtrLatency" #endif }, - { /* [428] */ + { /* [429] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6577,7 +6592,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPexUtilCounters" #endif }, - { /* [429] */ + { /* [430] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6592,7 +6607,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusClearPexUtilCounters" #endif }, - { /* [430] */ + { /* [431] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6607,7 +6622,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetBFD" #endif }, - { /* [431] */ + { /* [432] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6622,7 +6637,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetAspmDisableFlags" #endif }, - { /* [432] */ + { /* [433] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x30118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6637,7 +6652,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetInfoV2" #endif }, - { /* [433] */ + { /* [434] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6652,7 +6667,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusControlPublicAspmBits" #endif }, - { /* [434] */ + { /* [435] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6667,7 +6682,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetNvlinkPeerIdMask" #endif }, - { /* [435] */ + { /* [436] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6682,7 +6697,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSetEomParameters" #endif }, - { /* [436] */ + { /* [437] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6697,7 +6712,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetUphyDlnCfgSpace" #endif }, - { /* [437] */ + { /* [438] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6712,7 +6727,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetEomStatus" #endif }, - { /* [438] */ + { /* [439] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6727,7 +6742,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPcieReqAtomicsCaps" #endif }, - { /* [439] */ + { /* [440] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6742,7 +6757,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPcieSupportedGpuAtomics" #endif }, - { /* [440] */ + { /* [441] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6757,7 +6772,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetC2CInfo" #endif }, - { /* [441] */ + { /* [442] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1000u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6772,7 +6787,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSysmemAccess" #endif }, - { /* [442] */ + { /* [443] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6787,7 +6802,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetC2CErrorInfo" #endif }, - { /* [443] */ + { /* [444] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50040u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6802,7 +6817,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSetP2pMapping" #endif }, - { /* [444] */ + { /* [445] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50040u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6817,7 +6832,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusUnsetP2pMapping" #endif }, - { /* [445] */ + { /* [446] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40448u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6832,7 +6847,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetPcieCplAtomicsCaps" #endif }, - { /* [446] */ + { /* [447] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6847,7 +6862,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetC2CLpwrStats" #endif }, - { /* [447] */ + { /* [448] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6862,7 +6877,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusSetC2CLpwrStateVote" #endif }, - { /* [448] */ + { /* [449] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10318u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6877,7 +6892,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdKPerfBoost" #endif }, - { /* [449] */ + { /* [450] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6892,7 +6907,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfGetLevelInfo_V2" #endif }, - { /* [450] */ + { /* [451] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6907,7 +6922,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfGetPowerstate" #endif }, - { /* [451] */ + { /* [452] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6922,7 +6937,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfSetPowerstate" #endif }, - { /* [452] */ + { /* [453] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6937,7 +6952,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfNotifyVideoevent" #endif }, - { /* [453] */ + { /* [454] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6952,7 +6967,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfGetCurrentPstate" #endif }, - { /* [454] */ + { /* [455] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6967,7 +6982,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfGetTegraPerfmonSample" #endif }, - { /* [455] */ + { /* [456] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4au) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6982,7 +6997,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfRatedTdpGetControl" #endif }, - { /* [456] */ + { /* [457] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -6997,7 +7012,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfRatedTdpSetControl" #endif }, - { /* [457] */ + { /* [458] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40048u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7012,7 +7027,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfGetVideoEnginePerfmonSample" #endif }, - { /* [458] */ + { /* [459] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7027,7 +7042,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfSetAuxPowerState" #endif }, - { /* [459] */ + { /* [460] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7042,7 +7057,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfReservePerfmonHw" #endif }, - { /* [460] */ + { /* [461] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x50008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7057,7 +7072,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPerfGetGpumonPerfmonUtilSamplesV2" #endif }, - { /* [461] */ + { /* [462] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7072,7 +7087,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcReadVirtualMem" #endif }, - { /* [462] */ + { /* [463] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7087,7 +7102,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcGetErrorCount" #endif }, - { /* [463] */ + { /* [464] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7102,7 +7117,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcSetCleanErrorHistory" #endif }, - { /* [464] */ + { /* [465] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7117,7 +7132,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcGetWatchdogInfo" #endif }, - { /* [465] */ + { /* [466] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7132,7 +7147,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcDisableWatchdog" #endif }, - { /* [466] */ + { /* [467] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7147,7 +7162,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcEnableWatchdog" #endif }, - { /* [467] */ + { /* [468] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7162,7 +7177,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcReleaseWatchdogRequests" #endif }, - { /* [468] */ + { /* [469] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40154u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7177,7 +7192,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdSetRcRecovery" #endif }, - { /* [469] */ + { /* [470] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40154u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7192,7 +7207,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetRcRecovery" #endif }, - { /* [470] */ + { /* [471] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x18u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7207,7 +7222,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcSoftDisableWatchdog" #endif }, - { /* [471] */ + { /* [472] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7222,7 +7237,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdSetRcInfo" #endif }, - { /* [472] */ + { /* [473] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7237,7 +7252,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetRcInfo" #endif }, - { /* [473] */ + { /* [474] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7252,7 +7267,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRcGetErrorV2" #endif }, - { /* [474] */ + { /* [475] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7267,7 +7282,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpioProgramDirection" #endif }, - { /* [475] */ + { /* [476] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7282,7 +7297,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpioProgramOutput" #endif }, - { /* [476] */ + { /* [477] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7297,7 +7312,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpioReadInput" #endif }, - { /* [477] */ + { /* [478] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7312,7 +7327,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdInternalGpioActivateHwFunction" #endif }, - { /* [478] */ + { /* [479] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7327,7 +7342,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvdGetDumpSize" #endif }, - { /* [479] */ + { /* [480] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7342,7 +7357,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvdGetDump" #endif }, - { /* [480] */ + { /* [481] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x7u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7357,7 +7372,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvdGetNocatJournalRpt" #endif }, - { /* [481] */ + { /* [482] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x7u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7372,7 +7387,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvdSetNocatJournalData" #endif }, - { /* [482] */ + { /* [483] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x7u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7387,7 +7402,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvdInsertNocatJournalRecord" #endif }, - { /* [483] */ + { /* [484] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7402,7 +7417,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDmaInvalidateTLB" #endif }, - { /* [484] */ + { /* [485] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7417,7 +7432,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdDmaGetInfo" #endif }, - { /* [485] */ + { /* [486] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x158u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7432,7 +7447,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdPmgrGetModuleInfo" #endif }, - { /* [486] */ + { /* [487] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7447,7 +7462,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGc6Entry" #endif }, - { /* [487] */ + { /* [488] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x2u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7462,7 +7477,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGc6Exit" #endif }, - { /* [488] */ + { /* [489] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7477,7 +7492,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdLpwrDifrCtrl" #endif }, - { /* [489] */ + { /* [490] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7492,7 +7507,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdLpwrDifrPrefetchResponse" #endif }, - { /* [490] */ + { /* [491] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7507,7 +7522,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetCaps" #endif }, - { /* [491] */ + { /* [492] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x30349u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7522,7 +7537,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetCePceMask" #endif }, - { /* [492] */ + { /* [493] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7537,7 +7552,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetCapsV2" #endif }, - { /* [493] */ + { /* [494] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7552,7 +7567,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeUpdatePceLceMappings" #endif }, - { /* [494] */ + { /* [495] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7567,7 +7582,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeUpdateClassDB" #endif }, - { /* [495] */ + { /* [496] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x301d0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7582,7 +7597,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetPhysicalCaps" #endif }, - { /* [496] */ + { /* [497] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1c040u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7597,7 +7612,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetFaultMethodBufferSize" #endif }, - { /* [497] */ + { /* [498] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7612,7 +7627,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetHubPceMask" #endif }, - { /* [498] */ + { /* [499] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7627,7 +7642,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetAllCaps" #endif }, - { /* [499] */ + { /* [500] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x101d0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7642,7 +7657,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetAllPhysicalCaps" #endif }, - { /* [500] */ + { /* [501] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x145u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7657,7 +7672,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetLceShimInfo" #endif }, - { /* [501] */ + { /* [502] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7672,7 +7687,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeUpdatePceLceMappingsV2" #endif }, - { /* [502] */ + { /* [503] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7687,7 +7702,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetHubPceMaskV2" #endif }, - { /* [503] */ + { /* [504] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x100c0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7702,7 +7717,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetPceConfigForLceType" #endif }, - { /* [504] */ + { /* [505] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x154u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7717,7 +7732,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeGetDecompLceMask" #endif }, - { /* [505] */ + { /* [506] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x154u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7732,7 +7747,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdCeIsDecompLceEnabled" #endif }, - { /* [506] */ + { /* [507] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10118u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7747,7 +7762,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetNvlinkCaps" #endif }, - { /* [507] */ + { /* [508] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7762,7 +7777,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetNvlinkStatus" #endif }, - { /* [508] */ + { /* [509] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7777,7 +7792,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdBusGetNvlinkErrInfo" #endif }, - { /* [509] */ + { /* [510] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7792,7 +7807,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetNvlinkCounters" #endif }, - { /* [510] */ + { /* [511] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7807,7 +7822,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdClearNvlinkCounters" #endif }, - { /* [511] */ + { /* [512] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7822,7 +7837,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetLinkFatalErrorCounts" #endif }, - { /* [512] */ + { /* [513] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7837,7 +7852,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkSetupEom" #endif }, - { /* [513] */ + { /* [514] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7852,7 +7867,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetPowerState" #endif }, - { /* [514] */ + { /* [515] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7867,7 +7882,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinGetLinkFomValues" #endif }, - { /* [515] */ + { /* [516] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7882,7 +7897,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetNvlinkEccErrors" #endif }, - { /* [516] */ + { /* [517] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7897,7 +7912,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkReadTpCounters" #endif }, - { /* [517] */ + { /* [518] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7912,7 +7927,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetLpCounters" #endif }, - { /* [518] */ + { /* [519] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7927,7 +7942,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkSetLoopbackMode" #endif }, - { /* [519] */ + { /* [520] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7942,7 +7957,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetRefreshCounters" #endif }, - { /* [520] */ + { /* [521] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7957,7 +7972,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkClearRefreshCounters" #endif }, - { /* [521] */ + { /* [522] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7972,7 +7987,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetSetNvswitchFlaAddr" #endif }, - { /* [522] */ + { /* [523] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10041u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -7987,7 +8002,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkSyncLinkMasksAndVbiosInfo" #endif }, - { /* [523] */ + { /* [524] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8002,7 +8017,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkEnableLinks" #endif }, - { /* [524] */ + { /* [525] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8017,7 +8032,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkProcessInitDisabledLinks" #endif }, - { /* [525] */ + { /* [526] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8032,7 +8047,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkEomControl" #endif }, - { /* [526] */ + { /* [527] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8047,7 +8062,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkSetL1Threshold" #endif }, - { /* [527] */ + { /* [528] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8062,7 +8077,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetL1Threshold" #endif }, - { /* [528] */ + { /* [529] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10250u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8077,7 +8092,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkInbandSendData" #endif }, - { /* [529] */ + { /* [530] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8092,7 +8107,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkIsGpuDegraded" #endif }, - { /* [530] */ + { /* [531] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8107,7 +8122,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkDirectConnectCheck" #endif }, - { /* [531] */ + { /* [532] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8122,7 +8137,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPostFaultUp" #endif }, - { /* [532] */ + { /* [533] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8137,7 +8152,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetPortEvents" #endif }, - { /* [533] */ + { /* [534] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8152,7 +8167,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdIsNvlinkReducedConfig" #endif }, - { /* [534] */ + { /* [535] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8167,7 +8182,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPAOS" #endif }, - { /* [535] */ + { /* [536] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8182,7 +8197,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetNvlinkCountersV2" #endif }, - { /* [536] */ + { /* [537] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8197,7 +8212,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdClearNvlinkCountersV2" #endif }, - { /* [537] */ + { /* [538] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8212,7 +8227,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkClearLpCounters" #endif }, - { /* [538] */ + { /* [539] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8227,7 +8242,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPLTC" #endif }, - { /* [539] */ + { /* [540] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8242,7 +8257,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPLM" #endif }, - { /* [540] */ + { /* [541] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8257,7 +8272,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPSLC" #endif }, - { /* [541] */ + { /* [542] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8272,7 +8287,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMCAM" #endif }, - { /* [542] */ + { /* [543] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8287,7 +8302,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTECR" #endif }, - { /* [543] */ + { /* [544] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8302,7 +8317,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTEWE" #endif }, - { /* [544] */ + { /* [545] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8317,7 +8332,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTSDE" #endif }, - { /* [545] */ + { /* [546] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8332,7 +8347,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTCAP" #endif }, - { /* [546] */ + { /* [547] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8347,7 +8362,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPMTU" #endif }, - { /* [547] */ + { /* [548] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8362,7 +8377,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPMLP" #endif }, - { /* [548] */ + { /* [549] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8377,7 +8392,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessGHPKT" #endif }, - { /* [549] */ + { /* [550] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8392,7 +8407,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPDDR" #endif }, - { /* [550] */ + { /* [551] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8407,7 +8422,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPTT" #endif }, - { /* [551] */ + { /* [552] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8422,7 +8437,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPCNT" #endif }, - { /* [552] */ + { /* [553] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8437,7 +8452,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMGIR" #endif }, - { /* [553] */ + { /* [554] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8452,7 +8467,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPAOS" #endif }, - { /* [554] */ + { /* [555] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8467,7 +8482,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPHCR" #endif }, - { /* [555] */ + { /* [556] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8482,7 +8497,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessSLTP" #endif }, - { /* [556] */ + { /* [557] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8497,7 +8512,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPGUID" #endif }, - { /* [557] */ + { /* [558] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8512,7 +8527,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPRT" #endif }, - { /* [558] */ + { /* [559] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8527,7 +8542,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPTYS" #endif }, - { /* [559] */ + { /* [560] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8542,7 +8557,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessSLRG" #endif }, - { /* [560] */ + { /* [561] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8557,7 +8572,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPMAOS" #endif }, - { /* [561] */ + { /* [562] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8572,7 +8587,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPLR" #endif }, - { /* [562] */ + { /* [563] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8587,7 +8602,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetSupportedCounters" #endif }, - { /* [563] */ + { /* [564] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8602,7 +8617,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMORD" #endif }, - { /* [564] */ + { /* [565] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8617,7 +8632,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTRC_CAP" #endif }, - { /* [565] */ + { /* [566] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8632,7 +8647,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTRC_CONF" #endif }, - { /* [566] */ + { /* [567] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8647,7 +8662,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTRC_CTRL" #endif }, - { /* [567] */ + { /* [568] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8662,7 +8677,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTEIM" #endif }, - { /* [568] */ + { /* [569] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8677,7 +8692,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTIE" #endif }, - { /* [569] */ + { /* [570] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8692,7 +8707,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTIM" #endif }, - { /* [570] */ + { /* [571] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8707,7 +8722,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMPSCR" #endif }, - { /* [571] */ + { /* [572] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8722,7 +8737,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMTSR" #endif }, - { /* [572] */ + { /* [573] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8737,7 +8752,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPSLS" #endif }, - { /* [573] */ + { /* [574] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8752,7 +8767,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMLPC" #endif }, - { /* [574] */ + { /* [575] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8767,7 +8782,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPLIB" #endif }, - { /* [575] */ + { /* [576] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8782,7 +8797,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdSetNvlinkHwErrorInjectSettings" #endif }, - { /* [576] */ + { /* [577] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8797,7 +8812,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetNvlinkHwErrorInjectSettings" #endif }, - { /* [577] */ + { /* [578] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8812,7 +8827,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetPlatformInfo" #endif }, - { /* [578] */ + { /* [579] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8827,7 +8842,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetSupportedBWMode" #endif }, - { /* [579] */ + { /* [580] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x4u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8842,7 +8857,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkSetBWMode" #endif }, - { /* [580] */ + { /* [581] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8857,7 +8872,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetBWMode" #endif }, - { /* [581] */ + { /* [582] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8872,7 +8887,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetLocalDeviceInfo" #endif }, - { /* [582] */ + { /* [583] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8887,7 +8902,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkInjectSWError" #endif }, - { /* [583] */ + { /* [584] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8902,7 +8917,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPostLazyErrorRecovery" #endif }, - { /* [584] */ + { /* [585] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8917,7 +8932,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetNvleEncryptEnInfo" #endif }, - { /* [585] */ + { /* [586] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8932,7 +8947,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkUpdateNvleTopology" #endif }, - { /* [586] */ + { /* [587] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8947,7 +8962,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetNvleLids" #endif }, - { /* [587] */ + { /* [588] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8962,7 +8977,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkConfigureL1Toggle" #endif }, - { /* [588] */ + { /* [589] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8977,7 +8992,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlNvlinkGetL1Toggle" #endif }, - { /* [589] */ + { /* [590] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -8992,7 +9007,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessMCSR" #endif }, - { /* [590] */ + { /* [591] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9007,7 +9022,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkGetFirmwareVersionInfo" #endif }, - { /* [591] */ + { /* [592] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9022,7 +9037,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkSetNvleEnabledState" #endif }, - { /* [592] */ + { /* [593] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9037,7 +9052,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPTASV2" #endif }, - { /* [593] */ + { /* [594] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9052,7 +9067,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessSLLM_5NM" #endif }, - { /* [594] */ + { /* [595] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9067,7 +9082,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccess" #endif }, - { /* [595] */ + { /* [596] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9082,7 +9097,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdNvlinkPRMAccessPPRM" #endif }, - { /* [596] */ + { /* [597] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9097,7 +9112,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnGetDmemUsage" #endif }, - { /* [597] */ + { /* [598] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9112,7 +9127,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnGetEngineArch" #endif }, - { /* [598] */ + { /* [599] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9127,7 +9142,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnUstreamerQueueInfo" #endif }, - { /* [599] */ + { /* [600] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9142,7 +9157,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnUstreamerControlGet" #endif }, - { /* [600] */ + { /* [601] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9157,7 +9172,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnUstreamerControlSet" #endif }, - { /* [601] */ + { /* [602] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9172,7 +9187,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnGetCtxBufferInfo" #endif }, - { /* [602] */ + { /* [603] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x8u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9187,7 +9202,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlcnGetCtxBufferSize" #endif }, - { /* [603] */ + { /* [604] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9202,7 +9217,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEccGetClientExposedCounters" #endif }, - { /* [604] */ + { /* [605] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9217,7 +9232,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEccGetVolatileCounts" #endif }, - { /* [605] */ + { /* [606] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9232,7 +9247,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEccGetSramUniqueUncorrCounts" #endif }, - { /* [606] */ + { /* [607] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x44u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9247,7 +9262,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEccInjectError" #endif }, - { /* [607] */ + { /* [608] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9262,7 +9277,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdEccGetRepairStatus" #endif }, - { /* [608] */ + { /* [609] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10008u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9277,7 +9292,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlaRange" #endif }, - { /* [609] */ + { /* [610] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10244u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9292,7 +9307,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlaSetupInstanceMemBlock" #endif }, - { /* [610] */ + { /* [611] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10004u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9307,7 +9322,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlaGetRange" #endif }, - { /* [611] */ + { /* [612] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10108u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9322,7 +9337,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdFlaGetFabricMemStats" #endif }, - { /* [612] */ + { /* [613] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x40549u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9337,7 +9352,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGspGetFeatures" #endif }, - { /* [613] */ + { /* [614] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x48u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9352,7 +9367,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGspGetRmHeapStats" #endif }, - { /* [614] */ + { /* [615] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x204u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9367,7 +9382,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGpuGetVgpuHeapStats" #endif }, - { /* [615] */ + { /* [616] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9382,7 +9397,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdLibosGetHeapStats" #endif }, - { /* [616] */ + { /* [617] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10248u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9397,7 +9412,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGrmgrGetGrFsInfo" #endif }, - { /* [617] */ + { /* [618] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x3u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9412,7 +9427,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdOsUnixGc6BlockerRefCnt" #endif }, - { /* [618] */ + { /* [619] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x9u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9427,7 +9442,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdOsUnixAllowDisallowGcoff" #endif }, - { /* [619] */ + { /* [620] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9442,7 +9457,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdOsUnixAudioDynamicPower" #endif }, - { /* [620] */ + { /* [621] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xbu) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9457,7 +9472,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdOsUnixVidmemPersistenceStatus" #endif }, - { /* [621] */ + { /* [622] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x7u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9472,7 +9487,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdOsUnixUpdateTgpStatus" #endif }, - { /* [622] */ + { /* [623] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9487,7 +9502,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalBootloadGspVgpuPluginTask" #endif }, - { /* [623] */ + { /* [624] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9502,7 +9517,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalShutdownGspVgpuPluginTask" #endif }, - { /* [624] */ + { /* [625] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9517,7 +9532,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalPgpuAddVgpuType" #endif }, - { /* [625] */ + { /* [626] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9532,7 +9547,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalEnumerateVgpuPerPgpu" #endif }, - { /* [626] */ + { /* [627] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9547,7 +9562,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalClearGuestVmInfo" #endif }, - { /* [627] */ + { /* [628] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9562,7 +9577,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalGetVgpuFbUsage" #endif }, - { /* [628] */ + { /* [629] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x1d0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9577,7 +9592,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalSetVgpuEncoderCapacity" #endif }, - { /* [629] */ + { /* [630] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9592,7 +9607,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalCleanupGspVgpuPluginResources" #endif }, - { /* [630] */ + { /* [631] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9607,7 +9622,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalGetPgpuFsEncoding" #endif }, - { /* [631] */ + { /* [632] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9622,7 +9637,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalGetPgpuMigrationSupport" #endif }, - { /* [632] */ + { /* [633] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9637,7 +9652,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalSetVgpuMgrConfig" #endif }, - { /* [633] */ + { /* [634] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9652,7 +9667,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalFreeStates" #endif }, - { /* [634] */ + { /* [635] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9667,7 +9682,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalGetFrameRateLimiterStatus" #endif }, - { /* [635] */ + { /* [636] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9682,7 +9697,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalSetVgpuHeterogeneousMode" #endif }, - { /* [636] */ + { /* [637] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9697,7 +9712,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdVgpuMgrInternalSetVgpuMigTimesliceMode" #endif }, - { /* [637] */ + { /* [638] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x158u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9712,7 +9727,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdGetAvailableHshubMask" #endif }, - { /* [638] */ + { /* [639] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x158u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9727,7 +9742,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlSetEcThrottleMode" #endif }, - { /* [639] */ + { /* [640] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0x10bu) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -9742,7 +9757,7 @@ static const struct NVOC_EXPORTED_METHOD_DEF __nvoc_exported_method_def_Subdevic /*func=*/ "subdeviceCtrlCmdRusdGetSupportedFeatures" #endif }, - { /* [640] */ + { /* [641] */ #if NVOC_EXPORTED_METHOD_DISABLED_BY_FLAG(0xc0u) /*pFunc=*/ (void (*)(void)) NULL, #else @@ -10067,7 +10082,7 @@ NV_STATUS __nvoc_up_thunk_Notifier_subdeviceGetOrAllocNotifShare(struct Subdevic const struct NVOC_EXPORT_INFO __nvoc_export_info__Subdevice = { - /*numEntries=*/ 641, + /*numEntries=*/ 642, /*pExportEntries=*/ __nvoc_exported_method_def_Subdevice }; diff --git a/src/nvidia/generated/g_subdevice_nvoc.h b/src/nvidia/generated/g_subdevice_nvoc.h index af998628b..c8a50dced 100644 --- a/src/nvidia/generated/g_subdevice_nvoc.h +++ b/src/nvidia/generated/g_subdevice_nvoc.h @@ -2932,6 +2932,16 @@ static inline NV_STATUS subdeviceCtrlCmdGpuGetCachedInfo(struct Subdevice *pSubd #define subdeviceCtrlCmdGpuGetCachedInfo(pSubdevice, pGpuInfoParams) subdeviceCtrlCmdGpuGetCachedInfo_IMPL(pSubdevice, pGpuInfoParams) #endif // __nvoc_subdevice_h_disabled +NV_STATUS subdeviceCtrlCmdGpuForceGspUnload_IMPL(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS *pGpuInfoParams); +#ifdef __nvoc_subdevice_h_disabled +static inline NV_STATUS subdeviceCtrlCmdGpuForceGspUnload(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS *pGpuInfoParams) { + NV_ASSERT_FAILED_PRECOMP("Subdevice was disabled!"); + return NV_ERR_NOT_SUPPORTED; +} +#else // __nvoc_subdevice_h_disabled +#define subdeviceCtrlCmdGpuForceGspUnload(pSubdevice, pGpuInfoParams) subdeviceCtrlCmdGpuForceGspUnload_IMPL(pSubdevice, pGpuInfoParams) +#endif // __nvoc_subdevice_h_disabled + NV_STATUS subdeviceCtrlCmdGpuGetInfoV2_IMPL(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_GET_INFO_V2_PARAMS *pGpuInfoParams); #ifdef __nvoc_subdevice_h_disabled static inline NV_STATUS subdeviceCtrlCmdGpuGetInfoV2(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_GET_INFO_V2_PARAMS *pGpuInfoParams) { @@ -7555,6 +7565,8 @@ NV_STATUS subdeviceCtrlCmdGrStaticGetFecsTraceDefines_IMPL(struct Subdevice *pSu NV_STATUS subdeviceCtrlCmdGpuGetCachedInfo_IMPL(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_GET_INFO_V2_PARAMS *pGpuInfoParams); +NV_STATUS subdeviceCtrlCmdGpuForceGspUnload_IMPL(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS *pGpuInfoParams); + NV_STATUS subdeviceCtrlCmdGpuGetInfoV2_IMPL(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_GET_INFO_V2_PARAMS *pGpuInfoParams); NV_STATUS subdeviceCtrlCmdGpuGetIpVersion_IMPL(struct Subdevice *pSubdevice, NV2080_CTRL_GPU_GET_IP_VERSION_PARAMS *pGpuIpVersionParams); diff --git a/src/nvidia/generated/g_system_mem_nvoc.c b/src/nvidia/generated/g_system_mem_nvoc.c index c86b95416..b2402d0c1 100644 --- a/src/nvidia/generated/g_system_mem_nvoc.c +++ b/src/nvidia/generated/g_system_mem_nvoc.c @@ -487,8 +487,10 @@ const struct NVOC_EXPORT_INFO __nvoc_export_info__SystemMemory = /*pExportEntries=*/ __nvoc_exported_method_def_SystemMemory }; +void __nvoc_sysmemDestruct(SystemMemory*); void __nvoc_dtor_StandardMemory(StandardMemory*); void __nvoc_dtor_SystemMemory(SystemMemory *pThis) { + __nvoc_sysmemDestruct(pThis); __nvoc_dtor_StandardMemory(&pThis->__nvoc_base_StandardMemory); PORT_UNREFERENCED_VARIABLE(pThis); } diff --git a/src/nvidia/generated/g_system_mem_nvoc.h b/src/nvidia/generated/g_system_mem_nvoc.h index a05ad2ce2..35ebe4cfb 100644 --- a/src/nvidia/generated/g_system_mem_nvoc.h +++ b/src/nvidia/generated/g_system_mem_nvoc.h @@ -180,6 +180,9 @@ static inline NV_STATUS sysmemCtrlCmdGetSurfacePhysPages(struct SystemMemory *pS #define sysmemCtrlCmdGetSurfacePhysPages(pStandardMemory, pParams) sysmemCtrlCmdGetSurfacePhysPages_IMPL(pStandardMemory, pParams) #endif // __nvoc_system_mem_h_disabled +void sysmemDestruct_IMPL(struct SystemMemory *pSystemMemory); +#define __nvoc_sysmemDestruct(pSystemMemory) sysmemDestruct_IMPL(pSystemMemory) + // Wrapper macros for halified functions #define sysmemInitAllocRequest_FNPTR(pSystemMemory) pSystemMemory->__sysmemInitAllocRequest__ diff --git a/src/nvidia/generated/g_system_nvoc.c b/src/nvidia/generated/g_system_nvoc.c index ee5aee94e..0b23ced13 100644 --- a/src/nvidia/generated/g_system_nvoc.c +++ b/src/nvidia/generated/g_system_nvoc.c @@ -116,6 +116,7 @@ void __nvoc_init_dataField_OBJSYS(OBJSYS *pThis) { pThis->clientListDeferredFreeLimit = 0; pThis->setProperty(pThis, PDB_PROP_SYS_RECOVERY_REBOOT_REQUIRED, NV_FALSE); + pThis->setProperty(pThis, PDB_PROP_SYS_SUPPORTS_S0IX, (0)); } NV_STATUS __nvoc_ctor_Object(Object* ); diff --git a/src/nvidia/generated/g_system_nvoc.h b/src/nvidia/generated/g_system_nvoc.h index 90e834894..be21f8250 100644 --- a/src/nvidia/generated/g_system_nvoc.h +++ b/src/nvidia/generated/g_system_nvoc.h @@ -430,7 +430,7 @@ struct OBJSYS { struct OBJTRACEABLE *__nvoc_pbase_OBJTRACEABLE; // traceable super struct OBJSYS *__nvoc_pbase_OBJSYS; // sys - // 35 PDB properties + // 36 PDB properties NvBool PDB_PROP_SYS_SBIOS_NVIF_POWERMIZER_LIMIT; NvBool PDB_PROP_SYS_MXM_THERMAL_CONTROL_PRESENT; NvBool PDB_PROP_SYS_POWER_BATTERY; @@ -466,6 +466,7 @@ struct OBJSYS { NvBool PDB_PROP_SYS_DESTRUCTING; NvBool PDB_PROP_SYS_ALLOW_UNKNOWN_4PART_IDS; NvBool PDB_PROP_SYS_RECOVERY_REBOOT_REQUIRED; + NvBool PDB_PROP_SYS_SUPPORTS_S0IX; // Data members NvU32 apiLockMask; @@ -619,6 +620,8 @@ extern const struct NVOC_CLASS_DEF __nvoc_class_def_OBJSYS; #define PDB_PROP_SYS_ALLOW_UNKNOWN_4PART_IDS_BASE_NAME PDB_PROP_SYS_ALLOW_UNKNOWN_4PART_IDS #define PDB_PROP_SYS_RECOVERY_REBOOT_REQUIRED_BASE_CAST #define PDB_PROP_SYS_RECOVERY_REBOOT_REQUIRED_BASE_NAME PDB_PROP_SYS_RECOVERY_REBOOT_REQUIRED +#define PDB_PROP_SYS_SUPPORTS_S0IX_BASE_CAST +#define PDB_PROP_SYS_SUPPORTS_S0IX_BASE_NAME PDB_PROP_SYS_SUPPORTS_S0IX NV_STATUS __nvoc_objCreateDynamic_OBJSYS(OBJSYS**, Dynamic*, NvU32, va_list); diff --git a/src/nvidia/generated/rmconfig.h b/src/nvidia/generated/rmconfig.h index d3563aba2..84a71d667 100644 --- a/src/nvidia/generated/rmconfig.h +++ b/src/nvidia/generated/rmconfig.h @@ -323,6 +323,7 @@ #define RMCFG_FEATURE_VBLANK_CALLBACK 1 // Vblank callback functionality within RM #define RMCFG_FEATURE_TEGRA_SOC_NVDISPLAY 1 // Tegra SOC NvDisplay Driver #define RMCFG_FEATURE_TEGRA_SOC_NVDISPLAY_MINIMAL 0 // Enable only those parts of display code which are needed for Tegra SOC NvDisplay Driver +#define RMCFG_FEATURE_TEGRA_SOC_SCANOUT_CARVEOUT 1 // Enable scanout carveout Tegra SOC NvDisplay Driver #define RMCFG_FEATURE_HEAD_REGIONAL_CRC 1 // Display Head Regional CRC support #define RMCFG_FEATURE_FEATURE_GH180 1 // RMconfig to encapsulate GH180 features #define RMCFG_FEATURE_MIG_GFX 1 // RMconfig to encapsulate MIG With GFX support (SMG) diff --git a/src/nvidia/inc/kernel/gpu/gsp/gsp_static_config.h b/src/nvidia/inc/kernel/gpu/gsp/gsp_static_config.h index 4d9d7ce43..66bd4faa9 100644 --- a/src/nvidia/inc/kernel/gpu/gsp/gsp_static_config.h +++ b/src/nvidia/inc/kernel/gpu/gsp/gsp_static_config.h @@ -221,6 +221,7 @@ typedef struct GspSystemInfo NvU64 hostPageSize; NvBool bIsCmcBasedHws; NvBool bGspNocatEnabled; + NvBool bS0ixSupport; } GspSystemInfo; diff --git a/src/nvidia/inc/kernel/gpuvideo/rmifvideng.h b/src/nvidia/inc/kernel/gpuvideo/rmifvideng.h index 8296b1496..b250084f9 100644 --- a/src/nvidia/inc/kernel/gpuvideo/rmifvideng.h +++ b/src/nvidia/inc/kernel/gpuvideo/rmifvideng.h @@ -85,8 +85,16 @@ typedef struct * You can reorder or change below this point but update version. * Make sure to align it to 16B as ucode expect 16byte alignment to DMA efficiently. */ - NvU32 videoPgPmuHandshake; // Handshake between PMU and Video Ucode for SW controlled IDLE signal. - NvU64 rsvd2; // reserved field + NvU32 videoPgPmuHandshake; // Handshake between PMU and Video Ucode for SW controlled IDLE signal. + +#if (defined(NVRM) || defined(GB10X_OVERRIDE_TIMEOUT)) + NvU32 videngTimeoutMs; // SW WAR for bug 5203864, increasing timeouts on GB10x via regkey RmOverrideInternalTimeoutsMs. + // Specify the timeout value in ms. If the value is 0, do not override the timeouts sent from KMD and/or UMD. + NvU32 rsvd2; // reserved field +#else + NvU64 rsvd2; // reserved field +#endif + } NV_VIDENG_BOOT_PARAMS, *PNV_VIDENG_BOOT_PARAMS; #endif // RMIFVIDENG_H diff --git a/src/nvidia/interface/nvrm_registry.h b/src/nvidia/interface/nvrm_registry.h index dd60bd6d4..bd560bdbd 100644 --- a/src/nvidia/interface/nvrm_registry.h +++ b/src/nvidia/interface/nvrm_registry.h @@ -64,7 +64,7 @@ // Type Dword // Change all RM internal timeouts to experiment with Bug 5203024. // -// Some timeouts may still silently clamp to differnt min/max values and this +// Some timeouts may still silently clamp to different min/max values and this // regkey does NOT validate their range. // #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT "RmOverrideInternalTimeoutsMs" @@ -74,16 +74,30 @@ #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT_FLAGS_SET_RM_DEFAULT_TIMEOUT 31:31 // Same effect as setting "RmWatchDogTimeOut" to VALUE_MS (converted to seconds) #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT_FLAGS_SET_RC_WATCHDOG_TIMEOUT 30:30 -// Same effect as setting "RmEngineContextSwitchTimeout" to VALUE_MS (converted to usec) +// Same effect as setting "RmEngineContextSwitchTimeoutUs" to VALUE_MS (converted to usec) #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT_FLAGS_SET_CTXSW_TIMEOUT 29:29 // Currently has no effect #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT_FLAGS_SET_VIDENG_TIMEOUT 28:28 // Currently has no effect #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT_FLAGS_SET_PMU_INTERNAL_TIMEOUT 27:27 -// Currently has no effect +// Disables FECS watchdog (timeout value is ignored) #define NV_REG_STR_RM_BUG5203024_OVERRIDE_TIMEOUT_FLAGS_SET_FECS_WATCHDOG_TIMEOUT 26:26 +// +// This regkey is experimental +// +// Type Dword +// Change video Watchdog and GP timeouts to experiment with Bug 5203024. +// Stores the timeout value in ms. +// If this regkey is set and has non-zero value, also disables MB timeouts. +// +// Some timeouts may still silently clamp to different min/max values and this +// regkey does NOT validate their range. +// +#define NV_REG_STR_RM_BUG5203024_OVERRIDE_VIDEO_TIMEOUT "RmVideoEngineTimeoutMs" + + // // Type Dword // Override default RM timeout. Measured in milliseconds. @@ -1415,6 +1429,33 @@ #define NV_REG_PROCESS_NONSTALL_INTR_IN_LOCKLESS_ISR_DISABLE 0x00000000 #define NV_REG_PROCESS_NONSTALL_INTR_IN_LOCKLESS_ISR_ENABLE 0x00000001 + +// +// Type: DWORD +// Sets the Initial runlist Context switch timeout value in base 2 microseconds +// (1024 nanosecond timer ticks). +// Default: 0x003fffff base2 usec ~ 4.3 seconds +// +// The lower 31 bits have these limits +// Min: 0x00000002 +// Max: 0x7fffffff +// A value of 0 means CTXSW timeout is disabled entirely. +// +// It is possible for a privileged client to change this value for all engines +// using a ctrl call. +// +// If MSB (bit 31) is set, then the timeout value set will be "locked" and the +// ctrl call to change it will fail. +// +#define NV_REG_STR_RM_CTXSW_TIMEOUT "RmEngineContextSwitchTimeoutUs" +#define NV_REG_STR_RM_CTXSW_TIMEOUT_DEFAULT 0x003fffff +#define NV_REG_STR_RM_CTXSW_TIMEOUT_TIME 30:0 +#define NV_REG_STR_RM_CTXSW_TIMEOUT_TIME_DISABLE 0x00000000 +#define NV_REG_STR_RM_CTXSW_TIMEOUT_LOCK 31:31 +#define NV_REG_STR_RM_CTXSW_TIMEOUT_LOCK_FALSE 0x0 +#define NV_REG_STR_RM_CTXSW_TIMEOUT_LOCK_TRUE 0x1 + + #define NV_REG_STR_RM_ROBUST_CHANNELS "RmRobustChannels" #define NV_REG_STR_RM_ROBUST_CHANNELS_ENABLE 0x00000001 #define NV_REG_STR_RM_ROBUST_CHANNELS_DISABLE 0x00000000 @@ -1426,14 +1467,14 @@ #define NV_REG_STR_RM_RC_WATCHDOG_DEFAULT NV_REG_STR_RM_RC_WATCHDOG_ENABLE #define NV_REG_STR_RM_WATCHDOG_TIMEOUT "RmWatchDogTimeOut" -#define NV_REG_STR_RM_WATCHDOG_TIMEOUT_LOW 0x00000007 -#define NV_REG_STR_RM_WATCHDOG_TIMEOUT_HI 0x0000000C -#define NV_REG_STR_RM_WATCHDOG_TIMEOUT_DEFAULT NV_REG_STR_RM_WATCHDOG_TIMEOUT_LOW +#define NV_REG_STR_RM_WATCHDOG_TIMEOUT_LOW 5 +#define NV_REG_STR_RM_WATCHDOG_TIMEOUT_HI 60 +#define NV_REG_STR_RM_WATCHDOG_TIMEOUT_DEFAULT 7 -#define NV_REG_STR_RM_WATCHDOG_INTERVAL "RmWatchDogInterval" -#define NV_REG_STR_RM_WATCHDOG_INTERVAL_LOW 0x00000007 -#define NV_REG_STR_RM_WATCHDOG_INTERVAL_HI 0x0000000C -#define NV_REG_STR_RM_WATCHDOG_INTERVAL_DEFAULT NV_REG_STR_RM_WATCHDOG_INTERVAL_LOW +#define NV_REG_STR_RM_WATCHDOG_INTERVAL "RmWatchDogInterval" +#define NV_REG_STR_RM_WATCHDOG_INTERVAL_LOW 5 +#define NV_REG_STR_RM_WATCHDOG_INTERVAL_HI 30 +#define NV_REG_STR_RM_WATCHDOG_INTERVAL_DEFAULT 7 // Enable/Disable watchcat in GSP-RM partition // Default is Enabled @@ -2664,6 +2705,12 @@ #define NV_REG_STR_RM_FORCE_GR_SCRUBBER_CHANNEL_DISABLE 0x00000000 #define NV_REG_STR_RM_FORCE_GR_SCRUBBER_CHANNEL_ENABLE 0x00000001 +// Type DWORD +// Allows extending PMU FB Operationg Timeout (DMA / FBFlush) on certain profiles +// This currently takes effect on GB10X profile only +#define NV_REG_STR_RM_PMU_FB_TIMEOUT_US "RmPmuFBTimeoutUs" +#define NV_REG_STR_RM_PMU_FB_TIMEOUT_US_DEFAULT (0) + // // Type: Dword // diff --git a/src/nvidia/src/kernel/gpu/bus/arch/maxwell/kern_bus_gm107.c b/src/nvidia/src/kernel/gpu/bus/arch/maxwell/kern_bus_gm107.c index 1db16f687..97037fcae 100644 --- a/src/nvidia/src/kernel/gpu/bus/arch/maxwell/kern_bus_gm107.c +++ b/src/nvidia/src/kernel/gpu/bus/arch/maxwell/kern_bus_gm107.c @@ -4925,6 +4925,7 @@ kbusIsDirectMappingAllowed_GM107 } *bDirectSysMappingAllowed = + (memdescGetCustomHeap(pMemDesc) == MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT) || (!(bAllowReflectedMapping) && (!memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ENCRYPTED)) && (memdescGetGpuCacheAttrib(pMemDesc) != NV_MEMORY_CACHED) && diff --git a/src/nvidia/src/kernel/gpu/conf_compute/arch/blackwell/conf_compute_keystore_gb100.c b/src/nvidia/src/kernel/gpu/conf_compute/arch/blackwell/conf_compute_keystore_gb100.c index 895de5e88..3802226a9 100644 --- a/src/nvidia/src/kernel/gpu/conf_compute/arch/blackwell/conf_compute_keystore_gb100.c +++ b/src/nvidia/src/kernel/gpu/conf_compute/arch/blackwell/conf_compute_keystore_gb100.c @@ -79,7 +79,6 @@ confComputeKeyStoreDeriveViaChannel_GB100 const uint8_t *pStr = NULL; NvU8 curKeySeed[CC_EXPORT_MASTER_KEY_SIZE_BYTES] = {0}; - // // SEC2 Per Channel key support has not been added yet. Hence SEC2 keys need to be restored from keystore. // For CE, keys would be derived per channel. Replace the return with logic for deriving SEC2 keys @@ -119,25 +118,6 @@ confComputeKeyStoreDeriveViaChannel_GB100 portMemSet(pKey, 0, sizeof(pConfCompute->channelKeySeed)); return NV_ERR_FATAL_ERROR; } - - // - // IVs are moved to per channel from Blackwell onwards. Hence setting IV to 0. - // In Blackwell, message counter and channel counter start at 0. Channel - // counter is used to track the number of IV rotations done. - // - pKernelChannel->clientKmb.encryptBundle.iv[2] = 0; - pKernelChannel->clientKmb.encryptBundle.iv[1] = 0; - pKernelChannel->clientKmb.encryptBundle.iv[0] = 0; - pKernelChannel->clientKmb.encryptBundle.ivMask[2] = 0; - pKernelChannel->clientKmb.encryptBundle.ivMask[1] = 0; - pKernelChannel->clientKmb.encryptBundle.ivMask[0] = 0; - - pKernelChannel->clientKmb.decryptBundle.iv[2] = 0; - pKernelChannel->clientKmb.decryptBundle.iv[1] = 0; - pKernelChannel->clientKmb.decryptBundle.iv[0] = 0; - pKernelChannel->clientKmb.decryptBundle.ivMask[2] = 0; - pKernelChannel->clientKmb.decryptBundle.ivMask[1] = 0; - pKernelChannel->clientKmb.decryptBundle.ivMask[0] = 0; } } @@ -174,6 +154,11 @@ confComputeKeyStoreRetrieveViaChannel_GB100 ) { + if ((ivOperation < CHANNEL_IV_OPERATION_NONE) || (ivOperation >= CHANNEL_IV_OPERATION_INVALID)) + { + return NV_ERR_INVALID_ARGUMENT; + } + // // SEC2 Per Channel key support has not been added yet. Hence SEC2 keys need to be restored from keystore. // For CE, keys would be derived per channel. @@ -185,26 +170,46 @@ confComputeKeyStoreRetrieveViaChannel_GB100 } else if (RM_ENGINE_TYPE_IS_COPY(kchannelGetEngineType(pKernelChannel))) { - if (ivOperation < CHANNEL_IV_OPERATION_NONE || ivOperation >= CHANNEL_IV_OPERATION_INVALID) + // On Blackwell per-channel CE keys initialize to all zeroes. + if (ivOperation == CHANNEL_IV_OPERATION_INCLUDE_ONLY) { - return NV_ERR_INVALID_ARGUMENT; - } - const NvBool bIvRotate = (ivOperation == CHANNEL_IV_OPERATION_ROTATE_ONLY) - || (ivOperation == CHANNEL_IV_OPERATION_INCLUDE_AND_ROTATE); - const NvBool bRotateEncrypt = (rotateOperation == ROTATE_IV_ENCRYPT) || (rotateOperation == ROTATE_IV_ALL_VALID); - const NvBool bRotateDecrypt = (rotateOperation == ROTATE_IV_DECRYPT) || (rotateOperation == ROTATE_IV_ALL_VALID); + NV_ASSERT(rotateOperation == ROTATE_IV_ALL_VALID); - // Handle encryption IV rotation - if (bRotateEncrypt && bIvRotate) - { - confComputeIncChannelCounter(&keyMaterialBundle->encryptBundle); - } + pKernelChannel->clientKmb.encryptBundle.iv[2] = 0; + pKernelChannel->clientKmb.encryptBundle.iv[1] = 0; + pKernelChannel->clientKmb.encryptBundle.iv[0] = 0; + pKernelChannel->clientKmb.encryptBundle.ivMask[2] = 0; + pKernelChannel->clientKmb.encryptBundle.ivMask[1] = 0; + pKernelChannel->clientKmb.encryptBundle.ivMask[0] = 0; - // Handle decryption IV rotation - if (bRotateDecrypt && bIvRotate) + pKernelChannel->clientKmb.decryptBundle.iv[2] = 0; + pKernelChannel->clientKmb.decryptBundle.iv[1] = 0; + pKernelChannel->clientKmb.decryptBundle.iv[0] = 0; + pKernelChannel->clientKmb.decryptBundle.ivMask[2] = 0; + pKernelChannel->clientKmb.decryptBundle.ivMask[1] = 0; + pKernelChannel->clientKmb.decryptBundle.ivMask[0] = 0; + } + else { - confComputeIncChannelCounter(&keyMaterialBundle->decryptBundle); - keyMaterialBundle->bIsWorkLaunch = NV_FALSE; + const NvBool bIvRotate = (ivOperation == CHANNEL_IV_OPERATION_ROTATE_ONLY) || + (ivOperation == CHANNEL_IV_OPERATION_INCLUDE_AND_ROTATE); + const NvBool bRotateEncrypt = (rotateOperation == ROTATE_IV_ENCRYPT) || + (rotateOperation == ROTATE_IV_ALL_VALID); + const NvBool bRotateDecrypt = (rotateOperation == ROTATE_IV_DECRYPT) || + (rotateOperation == ROTATE_IV_ALL_VALID); + + // Handle encryption IV rotation + if (bRotateEncrypt && bIvRotate) + { + confComputeIncChannelCounter(&keyMaterialBundle->encryptBundle); + } + + // Handle decryption IV rotation + if (bRotateDecrypt && bIvRotate) + { + confComputeIncChannelCounter(&keyMaterialBundle->decryptBundle); + keyMaterialBundle->bIsWorkLaunch = NV_FALSE; + } } } else diff --git a/src/nvidia/src/kernel/gpu/dce_client/dce_client_rpc.c b/src/nvidia/src/kernel/gpu/dce_client/dce_client_rpc.c index 572fa6e04..f8c0adf81 100644 --- a/src/nvidia/src/kernel/gpu/dce_client/dce_client_rpc.c +++ b/src/nvidia/src/kernel/gpu/dce_client/dce_client_rpc.c @@ -259,6 +259,7 @@ static NV_STATUS _dceRpcAllocateMemory { NvU32 *message_buffer; + NV_ASSERT_OR_RETURN(pRpc != NULL, NV_ERR_INVALID_ARGUMENT); message_buffer = portMemAllocNonPaged(DCE_MAX_RPC_MSG_SIZE); if (message_buffer == NULL) { @@ -420,8 +421,8 @@ NV_STATUS rpcRmApiControl_dce NvU32 paramsSize ) { - OBJGPU *pGpu = (OBJGPU*)pRmApi->pPrivateContext; - OBJRPC *pRpc = GPU_GET_RPC(pGpu); + OBJGPU *pGpu = NULL; + OBJRPC *pRpc = NULL; rpc_generic_union *msg_data; rpc_gsp_rm_control_v *rpc_params = NULL; @@ -429,12 +430,11 @@ NV_STATUS rpcRmApiControl_dce NV_PRINTF(LEVEL_INFO, "NVRM_RPC_DCE : Prepare and send RmApiControl RPC [cmd:0x%x]\n", cmd); - status = _dceRpcAllocateMemory(pRpc); - if (status != NV_OK) - { - NV_PRINTF(LEVEL_ERROR, "NVRM_RPC_DCE: Memory Allocation Failed\n"); - goto done; - } + NV_ASSERT_OR_RETURN(pRmApi != NULL, NV_ERR_INVALID_ARGUMENT); + pGpu = (OBJGPU*)pRmApi->pPrivateContext; + NV_ASSERT_OR_RETURN(pGpu != NULL, NV_ERR_INVALID_STATE); + pRpc = GPU_GET_RPC(pGpu); + NV_ASSERT_OK_OR_RETURN(_dceRpcAllocateMemory(pRpc)); msg_data = _dceRpcGetMessageData(pRpc); rpc_params = &msg_data->gsp_rm_control_v; @@ -491,8 +491,8 @@ NV_STATUS rpcRmApiAlloc_dce NvU32 allocParamSize ) { - OBJGPU *pGpu = (OBJGPU*)pRmApi->pPrivateContext; - OBJRPC *pRpc = GPU_GET_RPC(pGpu); + OBJGPU *pGpu = NULL; + OBJRPC *pRpc = NULL; rpc_generic_union *msg_data; rpc_gsp_rm_alloc_v *rpc_params; @@ -502,9 +502,11 @@ NV_STATUS rpcRmApiAlloc_dce NV_PRINTF(LEVEL_INFO, "NVRM_RPC_DCE: Prepare and send RmApiAlloc RPC\n"); - NV_ASSERT_OK_OR_GOTO(status, - _dceRpcAllocateMemory(pRpc), - done); + NV_ASSERT_OR_RETURN(pRmApi != NULL, NV_ERR_INVALID_ARGUMENT); + pGpu = (OBJGPU*)pRmApi->pPrivateContext; + NV_ASSERT_OR_RETURN(pGpu != NULL, NV_ERR_INVALID_STATE); + pRpc = GPU_GET_RPC(pGpu); + NV_ASSERT_OK_OR_RETURN(_dceRpcAllocateMemory(pRpc)); msg_data = _dceRpcGetMessageData(pRpc); rpc_params = &msg_data->gsp_rm_alloc_v; @@ -567,8 +569,8 @@ done: NV_STATUS rpcRmApiFree_dce(RM_API *pRmApi, NvHandle hClient, NvHandle hObject) { - OBJGPU *pGpu = (OBJGPU*)pRmApi->pPrivateContext; - OBJRPC *pRpc = GPU_GET_RPC(pGpu); + OBJGPU *pGpu = NULL; + OBJRPC *pRpc = NULL; rpc_generic_union *msg_data; NVOS00_PARAMETERS_v *rpc_params; @@ -577,8 +579,11 @@ NV_STATUS rpcRmApiFree_dce(RM_API *pRmApi, NvHandle hClient, NvHandle hObject) NV_PRINTF(LEVEL_INFO, "NVRM_RPC_DCE Free " "RPC Called for hClient: 0x%x\n", hClient); - status = _dceRpcAllocateMemory(pRpc); - NV_ASSERT_OK_OR_RETURN(status); + NV_ASSERT_OR_RETURN(pRmApi != NULL, NV_ERR_INVALID_ARGUMENT); + pGpu = (OBJGPU*)pRmApi->pPrivateContext; + NV_ASSERT_OR_RETURN(pGpu != NULL, NV_ERR_INVALID_STATE); + pRpc = GPU_GET_RPC(pGpu); + NV_ASSERT_OK_OR_RETURN(_dceRpcAllocateMemory(pRpc)); msg_data = _dceRpcGetMessageData(pRpc); rpc_params = &msg_data->free_v.params; @@ -628,8 +633,8 @@ NV_STATUS rpcRmApiDupObject_dce NvU32 flags ) { - OBJGPU *pGpu = (OBJGPU*)pRmApi->pPrivateContext; - OBJRPC *pRpc = GPU_GET_RPC(pGpu); + OBJGPU *pGpu = NULL; + OBJRPC *pRpc = NULL; rpc_generic_union *msg_data; NVOS55_PARAMETERS_v03_00 *rpc_params = NULL; @@ -639,8 +644,11 @@ NV_STATUS rpcRmApiDupObject_dce "RPC Called for hClient: 0x%x\n", hClient); - status = _dceRpcAllocateMemory(pRpc); - NV_ASSERT_OK_OR_RETURN(status); + NV_ASSERT_OR_RETURN(pRmApi != NULL, NV_ERR_INVALID_ARGUMENT); + pGpu = (OBJGPU*)pRmApi->pPrivateContext; + NV_ASSERT_OR_RETURN(pGpu != NULL, NV_ERR_INVALID_STATE); + pRpc = GPU_GET_RPC(pGpu); + NV_ASSERT_OK_OR_RETURN(_dceRpcAllocateMemory(pRpc)); msg_data = _dceRpcGetMessageData(pRpc); rpc_params = &msg_data->dup_object_v.params; @@ -687,9 +695,9 @@ rpcDceRmInit_dce NvBool bInit ) { - OBJGPU *pGpu = (OBJGPU*)pRmApi->pPrivateContext; - OBJRPC *pRpc = GPU_GET_RPC(pGpu); - DceClient *pDceClientrm = GPU_GET_DCECLIENTRM(pGpu); + OBJGPU *pGpu = NULL; + OBJRPC *pRpc = NULL; + DceClient *pDceClientrm = NULL; rpc_generic_union *msg_data; NV_STATUS status = NV_ERR_NOT_SUPPORTED; @@ -698,8 +706,12 @@ rpcDceRmInit_dce NV_PRINTF(LEVEL_INFO, "NVRM_RPC_DCE RPC to trigger %s called\n", bInit ? "RmInitAdapter" : "RmShutdownAdapter"); - status = _dceRpcAllocateMemory(pRpc); - NV_ASSERT_OK_OR_RETURN(status); + NV_ASSERT_OR_RETURN(pRmApi != NULL, NV_ERR_INVALID_ARGUMENT); + pGpu = (OBJGPU*)pRmApi->pPrivateContext; + NV_ASSERT_OR_RETURN(pGpu != NULL, NV_ERR_INVALID_STATE); + pRpc = GPU_GET_RPC(pGpu); + pDceClientrm = GPU_GET_DCECLIENTRM(pGpu); + NV_ASSERT_OK_OR_RETURN(_dceRpcAllocateMemory(pRpc)); msg_data = _dceRpcGetMessageData(pRpc); rpc_params = &msg_data->dce_rm_init_v; diff --git a/src/nvidia/src/kernel/gpu/disp/kern_disp.c b/src/nvidia/src/kernel/gpu/disp/kern_disp.c index 9b529e776..d061de8ae 100644 --- a/src/nvidia/src/kernel/gpu/disp/kern_disp.c +++ b/src/nvidia/src/kernel/gpu/disp/kern_disp.c @@ -1100,10 +1100,7 @@ NV_STATUS kdispOptimizePerFrameOsCallbacks_IMPL // kdispServiceAwakenIntr_HAL(pGpu, pKernelDisplay, pThreadState); - if (!IS_GSP_CLIENT(pGpu)) - { - exVblankServiceHeadMask = kdispGetDeferredVblankHeadMask(pKernelDisplay); - } + exVblankServiceHeadMask = kdispGetDeferredVblankHeadMask(pKernelDisplay); for (head = 0; head < kdispGetNumHeads(pKernelDisplay); ++head) { @@ -1135,11 +1132,8 @@ NV_STATUS kdispOptimizePerFrameOsCallbacks_IMPL VBLANKCALLBACK *pCallback = NULL; NvBool dataValid = NV_FALSE; - if (!IS_GSP_CLIENT(pGpu)) - { - // Keep track of which heads that we serviced - vblankServicedHeadMask |= NVBIT(head); - } + // Keep track of which heads that we serviced + vblankServicedHeadMask |= NVBIT(head); // Clear the intr if we were asked to if (clearIntr == NV_TRUE) diff --git a/src/nvidia/src/kernel/gpu/fifo/kernel_channel.c b/src/nvidia/src/kernel/gpu/fifo/kernel_channel.c index 18afc2485..6509f1fb7 100644 --- a/src/nvidia/src/kernel/gpu/fifo/kernel_channel.c +++ b/src/nvidia/src/kernel/gpu/fifo/kernel_channel.c @@ -753,7 +753,7 @@ kchannelConstruct_IMPL pKernelChannel->bUseScrubKey = FLD_TEST_DRF(OS04, _FLAGS, _CHANNEL_SKIP_SCRUBBER, _TRUE, pChannelGpfifoParams->flags); if (pKernelChannel->bCCSecureChannel) { - ConfidentialCompute* pConfCompute = GPU_GET_CONF_COMPUTE(pGpu); + ConfidentialCompute *pConfCompute = GPU_GET_CONF_COMPUTE(pGpu); // return early if gpu is not ready to accept work if ((pConfCompute != NULL) && kchannelCheckIsUserMode(pKernelChannel) @@ -778,8 +778,18 @@ kchannelConstruct_IMPL goto cleanup; } } - status = kchannelDeriveAndRetrieveKmb_HAL(pGpu, pKernelChannel, &pKernelChannel->clientKmb); - NV_ASSERT_OR_GOTO(status == NV_OK, cleanup); + + // + // Retrieve IV from keystore as it needs to be transmitted to GPU. + // On Hopper this will also retrieve the key and IV mask. + // On Blackwell and later the key and IV mask are retrieved after a successful control + // call to GSP-RM to ensure that the keystore and keymanager keyseeds stay in sync. + // + NV_ASSERT_OK_OR_GOTO(status, + confComputeKeyStoreRetrieveViaChannel_HAL(pConfCompute, pKernelChannel, ROTATE_IV_ALL_VALID, + CHANNEL_IV_OPERATION_INCLUDE_ONLY, + &pKernelChannel->clientKmb), + cleanup); portMemCopy(pChannelGpfifoParams->encryptIv, sizeof(pChannelGpfifoParams->encryptIv), @@ -795,7 +805,6 @@ kchannelConstruct_IMPL sizeof(pChannelGpfifoParams->hmacNonce), pKernelChannel->clientKmb.hmacBundle.nonce, sizeof(pKernelChannel->clientKmb.hmacBundle.nonce)); - } // Set TLS state and BAR0 window if we are working with Gr @@ -937,6 +946,17 @@ kchannelConstruct_IMPL bRpcAllocated = NV_TRUE; } + if (pKernelChannel->bCCSecureChannel) + { + ConfidentialCompute *pConfCompute = GPU_GET_CONF_COMPUTE(pGpu); + + NV_ASSERT_OK_OR_GOTO(status, + confComputeKeyStoreDeriveViaChannel_HAL(pConfCompute, pKernelChannel, + ROTATE_IV_ALL_VALID, + &pKernelChannel->clientKmb), + cleanup); + } + if (kfifoIsPerRunlistChramEnabled(pKernelFifo) || (gpuIsCCorApmFeatureEnabled(pGpu) || bMIGInUse)) { @@ -4462,12 +4482,9 @@ NV_STATUS kchannelDeriveAndRetrieveKmb_KERNEL ) { ConfidentialCompute *pCC = GPU_GET_CONF_COMPUTE(pGpu); - NV_ASSERT(pCC != NULL); - NV_ASSERT_OK_OR_RETURN(confComputeKeyStoreDeriveViaChannel_HAL(pCC, pKernelChannel, ROTATE_IV_ALL_VALID, keyMaterialBundle)); - return (confComputeKeyStoreRetrieveViaChannel_HAL(pCC, pKernelChannel, ROTATE_IV_ALL_VALID, CHANNEL_IV_OPERATION_INCLUDE_ONLY, keyMaterialBundle)); } @@ -4538,14 +4555,14 @@ kchannelCtrlCmdGetKmb_KERNEL NV_ASSERT_OK_OR_RETURN(pRmApi->DupObject(pRmApi, hClient, hDevice, &pKernelChannel->hEncryptStatsBuf, hClient, pGetKmbParams->hMemory, 0)); - NV_ASSERT_OK_OR_GOTO(status, + NV_ASSERT_OK_OR_GOTO(status, clientGetResourceRef(pRsClient, pKernelChannel->hEncryptStatsBuf, &pResourceRef), cleanup); Memory *pMemory = dynamicCast(pResourceRef->pResource, Memory); NV_ASSERT_OR_ELSE((pMemory != NULL) && (pMemory->pMemDesc != NULL), status = NV_ERR_INVALID_ARGUMENT; goto cleanup); - NV_ASSERT_OK_OR_GOTO(status, + NV_ASSERT_OK_OR_GOTO(status, kchannelSetEncryptionStatsBuffer_HAL(pGpu, pKernelChannel, pMemory->pMemDesc, NV_TRUE), cleanup); } diff --git a/src/nvidia/src/kernel/gpu/fifo/kernel_channel_group_api.c b/src/nvidia/src/kernel/gpu/fifo/kernel_channel_group_api.c index e9719067e..e4c6d467f 100644 --- a/src/nvidia/src/kernel/gpu/fifo/kernel_channel_group_api.c +++ b/src/nvidia/src/kernel/gpu/fifo/kernel_channel_group_api.c @@ -559,7 +559,7 @@ done: if (rmStatus != NV_OK) { // Acquire the lock again for the cleanup path - NV_ASSERT_OK_OR_RETURN(rmGpuLocksAcquire(GPUS_LOCK_FLAGS_NONE, RM_LOCK_MODULES_FIFO)); + NV_ASSERT_OK_OR_RETURN(rmDeviceGpuLocksAcquire(pGpu, GPUS_LOCK_FLAGS_NONE, RM_LOCK_MODULES_FIFO)); bLockAcquired = NV_TRUE; goto failed; } diff --git a/src/nvidia/src/kernel/gpu/gpu_timeout.c b/src/nvidia/src/kernel/gpu/gpu_timeout.c index 408c313f7..9b01f1580 100644 --- a/src/nvidia/src/kernel/gpu/gpu_timeout.c +++ b/src/nvidia/src/kernel/gpu/gpu_timeout.c @@ -111,6 +111,8 @@ timeoutRegistryOverride data32 : 0); + pGpu->bug5203024OverrideTimeouts = bug5203024OverrideTimeouts; + NvBool bOverrideDefaultTimeout = (DRF_VAL(_REG_STR, _RM_BUG5203024_OVERRIDE_TIMEOUT, _FLAGS_SET_RM_DEFAULT_TIMEOUT, diff --git a/src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c b/src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c index 4b6e26002..435cbe79f 100644 --- a/src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c +++ b/src/nvidia/src/kernel/gpu/gsp/kernel_gsp.c @@ -2698,6 +2698,7 @@ kgspInitVgpuPartitionLogging_IMPL char sourceName[SOURCE_NAME_MAX_LENGTH]; NvBool bPreserveLogBufferFull = NV_FALSE; NvBool bMergeNvlog = NV_TRUE; + OBJTMR *pTmr = GPU_GET_TIMER(pGpu); if (gfid > MAX_PARTITIONS_WITH_GFID) { @@ -2800,6 +2801,8 @@ kgspInitVgpuPartitionLogging_IMPL *pPreserveLogBufferFull = bPreserveLogBufferFull; + libosLogUpdateTimerDelta(&pKernelGsp->logDecodeVgpuPartition[gfid - 1], pTmr->sysTimerOffsetNs); + exit: if (nvStatus != NV_OK) _kgspFreeLibosVgpuPartitionLoggingStructures(pGpu, pKernelGsp, gfid); diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb10b_phys.c b/src/nvidia/src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb10b_phys.c new file mode 100644 index 000000000..7127876ad --- /dev/null +++ b/src/nvidia/src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb10b_phys.c @@ -0,0 +1,484 @@ +/* + * SPDX-FileCopyrightText: Copyright (c) 2023-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved. + * SPDX-License-Identifier: MIT + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER + * DEALINGS IN THE SOFTWARE. + */ + +#include "core/core.h" +#include "gpu/gpu.h" +#include "os/nv_memory_type.h" +#include "mem_mgr/system_mem.h" +#include "gpu/mem_mgr/mem_mgr.h" + +#include "containers/eheap_old.h" + +static NV_STATUS _memmgrSocGetScanoutCarveout +( + OBJGPU *pGpu, + NvU64 *pBase, + NvU64 *pSize +) +{ + MemoryManager *pMemoryManager = GPU_GET_MEMORY_MANAGER(pGpu); + NV_STATUS status; + NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS params; + NvU32 i; + + portMemSet(¶ms, 0x0, sizeof(params)); + status = memmgrGetCarveoutRegionInfo(pGpu, pMemoryManager, ¶ms); + if (status != NV_OK) + { + return status; + } + + *pBase = *pSize = 0; + + for (i = 0; i < params.numCarveoutRegions; i++) + { + // On Linux, the complete display FRM will be managed by RM carveout code. + if (params.carveoutRegion[i].carveoutType == + NV2080_CTRL_FB_GET_CARVEOUT_REGION_CARVEOUT_TYPE_DISPLAY_FRM) + { + *pBase = params.carveoutRegion[i].base; + *pSize = params.carveoutRegion[i].size; + break; + } + } + + return NV_OK; +} + +/** + * @brief Initializes FB regions + * + * This function is responsible for setting up a carveout if one is required. + * This is a different type of carveout from what has been done on MCP in the + * past. The main difference is that even though it will be treated as "video + * memory", all addresses will be fully resolved system memory addresses. This + * is done by setting up a reserved region of FB from 0 to the sysmem base of + * carveout as described in the picture below. + * + * dGPU Video Memory + * +-----------------------------| + * | Vidmem | + * +-----------------------------| + * + * @returns OK if success, ERROR otherwise + */ +NV_STATUS +memmgrInitZeroFbRegionsHal_GB10B +( + OBJGPU *pGpu, + MemoryManager *pMemoryManager +) +{ + NV_STATUS status = NV_OK; + + // Simulation won't have carveout support + if (IS_SIMULATION(pGpu)) + { + NV_PRINTF(LEVEL_INFO, "Carveout support not available on simulation\n"); + return NV_OK; + } + + status = memmgrCreateScanoutCarveoutHeap(pGpu, pMemoryManager); + + // + // Check if platform has carveout support configured, if not configured, + // return early with NV_OK. In this case, all allocations will happen + // in the system memory itself. + // + if (status == NV_ERR_NOT_SUPPORTED) + { + NV_PRINTF(LEVEL_INFO, "Carveout supported not configured on this platform\n"); + return NV_OK; + } + + if (status != NV_OK) + { + NV_PRINTF(LEVEL_ERROR, "Failed to create scanout carveout heap.\n"); + return status; + } + + return status; +} + +NV_STATUS +memmgrCreateScanoutCarveoutHeap_GB10B +( + OBJGPU *pGpu, + MemoryManager *pMemoryManager +) +{ + NvU64 base, size; + + if (_memmgrSocGetScanoutCarveout(pGpu, &base, &size) != NV_OK) { + pGpu->setProperty(pGpu, PDB_PROP_GPU_ALLOC_ISO_SYS_MEM_FROM_CARVEOUT, NV_FALSE); + return NV_OK; + } + + pMemoryManager->pScanoutHeap = (OBJEHEAP*)portMemAllocNonPaged(sizeof(OBJEHEAP)); + if (pMemoryManager->pScanoutHeap == NULL) + { + return NV_ERR_NO_MEMORY; + } + + constructObjEHeap(pMemoryManager->pScanoutHeap, base, base + size, 0, 0); + + NV_PRINTF(LEVEL_INFO, "Created scanout carveout heap with base address=0x%llx and size=%llx\n", base, size); + + return NV_OK; +} + +NV_STATUS +memmgrDestroyScanoutCarveoutHeap_GB10B +( + OBJGPU *pGpu, + MemoryManager *pMemoryManager +) +{ + if (pMemoryManager->pScanoutHeap) + { + pMemoryManager->pScanoutHeap->eheapDestruct(pMemoryManager->pScanoutHeap); + portMemFree(pMemoryManager->pScanoutHeap); + pMemoryManager->pScanoutHeap = NULL; + } + + return NV_OK; +} + +/** + * @brief Allocates memory from scanout carveout region + * + * This function request a free range (base address and size) first from + * scanout carveout heap and update a memory descriptor for that. + * The memory is already reserved, so we can set the physical address with + * memdescSetPte(). + * + * @returns OK if success, ERROR otherwise + */ +NV_STATUS +memmgrAllocScanoutCarveoutRegionResources_GB10B +( + MemoryManager *pMemoryManager, + NV_MEMORY_ALLOCATION_PARAMS *pAllocData, + NvU32 heapOwner, + NvU32 *pHeapFlag, + MEMORY_DESCRIPTOR *pMemDesc +) +{ + OBJEHEAP *pHeap = pMemoryManager->pScanoutHeap; + NvU64 alignment = pAllocData->alignment; + NvU64 offset = pAllocData->offset; + NvU64 size = pMemDesc->Size; + NV_STATUS status = NV_OK; + + NV_CHECK_OR_RETURN(LEVEL_INFO, pHeap != NULL, NV_ERR_INVALID_STATE); + + NV_ASSERT(memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)); + + status = pHeap->eheapAlloc(pHeap, heapOwner, pHeapFlag, + &offset, &size, alignment, alignment, + NULL, NULL, NULL); + if (status != NV_OK) { + NV_PRINTF(LEVEL_ERROR, "EheapAlloc returns error 0x%0x\n", status); + return status; + } + + memdescSetPte(pMemDesc, AT_CPU, 0, offset); + memdescSetContiguity(pMemDesc, AT_CPU, NV_TRUE); + pMemDesc->Size = size; + + return NV_OK; +} + +/** + * @brief Allocates memory from scanout carveout region + * + * This function request a free range (base address and size) first from + * scanout carveout heap and setup a memory descriptor for that. + * The memory is already reserved, so we can set the physical address with + * memdescSetPte(). + * + * @returns OK if success, ERROR otherwise + */ +NV_STATUS +memmgrAllocFromScanoutCarveoutRegion_GB10B +( + POBJGPU pGpu, + MemoryManager *pMemoryManager, + NvU32 owner, + NV_MEMORY_ALLOCATION_PARAMS *pVidHeapAlloc, + NvU32 *pHeapFlag, + PMEMORY_DESCRIPTOR *ppMemDesc +) +{ + MemorySystem *pMemorySystem = GPU_GET_MEMORY_SYSTEM(pGpu); + MEMORY_DESCRIPTOR *pMemDesc = NULL; + OBJEHEAP *pHeap = pMemoryManager->pScanoutHeap; + NvU64 offset = pVidHeapAlloc->offset; + NvU64 size = pVidHeapAlloc->size; + NV_STATUS status; + + NV_CHECK_OR_RETURN(LEVEL_INFO, pMemorySystem != NULL, NV_ERR_INVALID_STATE); + + NV_CHECK_OR_RETURN(LEVEL_INFO, pVidHeapAlloc != NULL, NV_ERR_INVALID_ARGUMENT); + NV_CHECK_OR_RETURN(LEVEL_INFO, pHeapFlag != NULL, NV_ERR_INVALID_ARGUMENT); + NV_CHECK_OR_RETURN(LEVEL_INFO, ppMemDesc != NULL, NV_ERR_INVALID_ARGUMENT); + + status = memdescCreate(&pMemDesc, pGpu, size, 0, NV_MEMORY_CONTIGUOUS, + ADDR_SYSMEM, NV_MEMORY_UNCACHED, + MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT); + if (status != NV_OK) + { + NV_PRINTF(LEVEL_ERROR, "memdescCreate returns error 0x%0x\n", status); + DBG_BREAKPOINT(); + pHeap->eheapFree(pHeap, offset); + return status; + } + + memSetSysmemCacheAttrib(pGpu, pVidHeapAlloc, pMemDesc); + + status = memmgrAllocScanoutCarveoutRegionResources(pMemoryManager, + pVidHeapAlloc, + owner, + pHeapFlag, + pMemDesc); + if (status != NV_OK) { + DBG_BREAKPOINT(); + memdescDestroy(pMemDesc); + return status; + } + + status = memdescAlloc(pMemDesc); + if (status != NV_OK) + { + NV_PRINTF(LEVEL_ERROR, "memdescAlloc returns error 0x%0x\n", status); + DBG_BREAKPOINT(); + memdescDestroy(pMemDesc); + memmgrFreeScanoutCarveoutRegionResources(pMemoryManager, offset); + return status; + } + + *ppMemDesc = pMemDesc; + pVidHeapAlloc->offset = memdescGetPte(pMemDesc, AT_CPU, 0); + pVidHeapAlloc->size = pMemDesc->Size; + + return NV_OK; +} + +/** + * @brief Frees memory from scanout carveout region + * + * This function performs free operation for the memory allocated at given base + * offset from scanout carveout region. + * + * @returns void + */ +void +memmgrFreeScanoutCarveoutRegionResources_GB10B +( + MemoryManager *pMemoryManager, + NvU64 base +) +{ + OBJEHEAP *pHeap = pMemoryManager->pScanoutHeap; + NV_STATUS status; + EMEMBLOCK *pBlock; + + NV_CHECK_OR_RETURN_VOID(LEVEL_INFO, pHeap != NULL); + + pBlock = (EMEMBLOCK *)pHeap->eheapGetBlock(pHeap, base, 0); + + if (pBlock == NULL) + { + NV_PRINTF(LEVEL_ERROR, "Not found allocation in carveout region"); + return; + } + + status = pHeap->eheapFree(pHeap, base); + if (status != NV_OK) + { + NV_PRINTF(LEVEL_ERROR, "Error in freeing eheap 0x%0x\n", status); + } +} + +/** + * @brief Frees memory from scanout carveout region + * + * This function performs free operation for the memory allocated from scanout + * carveout region. + * + * @returns void + */ +void +memmgrFreeFromScanoutCarveoutRegion_GB10B +( + POBJGPU pGpu, + MemoryManager *pMemoryManager, + PMEMORY_DESCRIPTOR pMemDesc +) +{ + OBJEHEAP *pEHeap = pMemoryManager->pScanoutHeap; + NvU64 base; + EMEMBLOCK *pBlock; + + NV_CHECK_OR_RETURN_VOID(LEVEL_INFO, pMemDesc != NULL); + NV_CHECK_OR_RETURN_VOID(LEVEL_INFO, pEHeap != NULL); + + base = memdescGetPte(pMemDesc, AT_CPU, 0); + pBlock = (EMEMBLOCK *)pEHeap->eheapGetBlock(pEHeap, base, 0); + NV_CHECK_OR_RETURN_VOID(LEVEL_INFO, pBlock != NULL); + + // + // If reference count is zero then free the memory descriptor; otherwise + // decrease the reference count (increased by memCopyConstruct_IMPL()). + // + if (pBlock->refCount == 0) + { + memdescFree(pMemDesc); + memdescDestroy(pMemDesc); + } + else + { + memdescRemoveRef(pMemDesc); + } + + memmgrFreeScanoutCarveoutRegionResources(pMemoryManager, base); +} + +/** + * @brief Duplicate memory descriptor allocated from scanout carveout region. + * + * This function gets the heap block for the scanout carveout memory descriptor + * and increase the reference count. + * + * @returns OK if success, ERROR otherwise + */ +NV_STATUS +memmgrDuplicateFromScanoutCarveoutRegion_GB10B +( + POBJGPU pGpu, + MemoryManager *pMemoryManager, + PMEMORY_DESCRIPTOR pMemDesc +) +{ + OBJEHEAP *pEHeap = pMemoryManager->pScanoutHeap; + NvU64 base; + EMEMBLOCK *pBlock; + + NV_CHECK_OR_RETURN(LEVEL_INFO, pMemDesc != NULL, NV_ERR_INVALID_ARGUMENT); + NV_CHECK_OR_RETURN(LEVEL_INFO, pEHeap != NULL, NV_ERR_INVALID_STATE); + + base = memdescGetPte(pMemDesc, AT_CPU, 0); + pBlock = (EMEMBLOCK *)pEHeap->eheapGetBlock(pEHeap, base, 0); + NV_CHECK_OR_RETURN(LEVEL_INFO, pBlock != NULL, NV_ERR_INVALID_STATE); + + pBlock->refCount++; + return NV_OK; +} + +/** + * @brief Return the carveout region information. + * + * @returns OK if success, ERROR otherwise + */ +NV_STATUS +memmgrGetCarveoutRegionInfo_KERNEL +( + OBJGPU *pGpu, + MemoryManager *pMemoryManager, + NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS *pParams +) +{ + RM_API *pRmApi = GPU_GET_PHYSICAL_RMAPI(pGpu); + + return pRmApi->Control(pRmApi, + pGpu->hInternalClient, + pGpu->hInternalSubdevice, + NV2080_CTRL_CMD_FB_GET_CARVEOUT_REGION_INFO, + pParams, + sizeof(*pParams)); +} + +/*! + * Allocate console region in CPU-RM from UEFI carveout region. + */ +NV_STATUS +memmgrAllocateConsoleRegion_GB10B +( + OBJGPU *pGpu, + MemoryManager *pMemoryManager +) +{ + NvU32 i; + NV_STATUS status; + NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS infoParams; + + portMemSet(&infoParams, 0, sizeof(infoParams)); + status = memmgrGetCarveoutRegionInfo(pGpu, pMemoryManager, &infoParams); + if (status != NV_OK) + { + return status; + } + + // Once the console is reserved, we don't expect to reserve it again + NV_ASSERT_OR_RETURN(pMemoryManager->pReservedConsoleMemDesc == NULL, + NV_ERR_STATE_IN_USE); + + for (i = 0; i < infoParams.numCarveoutRegions; i++) + { + const NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO *pRegion = + &infoParams.carveoutRegion[i]; + + if (pRegion->carveoutType == + NV2080_CTRL_FB_GET_CARVEOUT_REGION_CARVEOUT_TYPE_UEFI) + { + + status = memdescCreate(&pMemoryManager->pReservedConsoleMemDesc, + pGpu, + pRegion->size, + RM_PAGE_SIZE_64K, + NV_TRUE, + ADDR_SYSMEM, + NV_MEMORY_UNCACHED, + MEMDESC_FLAGS_SKIP_RESOURCE_COMPUTE | + MEMDESC_FLAGS_ALLOC_FROM_UEFI_CARVEOUT); + if (status != NV_OK) + { + return status; + } + + memdescDescribe(pMemoryManager->pReservedConsoleMemDesc, + ADDR_SYSMEM, + pRegion->base, + pRegion->size); + memdescSetPageSize(pMemoryManager->pReservedConsoleMemDesc, + AT_CPU, + RM_PAGE_SIZE); + + NV_PRINTF(LEVEL_INFO, "Allocating console region of size: %llx, at base : %llx \n ", + pRegion->size, pRegion->base); + break; + } + } + + return NV_OK; +} diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/arch/maxwell/mem_mgr_gm107.c b/src/nvidia/src/kernel/gpu/mem_mgr/arch/maxwell/mem_mgr_gm107.c index 0daf790b0..102a0062a 100644 --- a/src/nvidia/src/kernel/gpu/mem_mgr/arch/maxwell/mem_mgr_gm107.c +++ b/src/nvidia/src/kernel/gpu/mem_mgr/arch/maxwell/mem_mgr_gm107.c @@ -2055,3 +2055,54 @@ memmgrPreInitReservedMemory_GM107 return status; } + +/*! + * Allocate console region in CPU-RM based on region table passed from Physical RM + */ +NV_STATUS +memmgrAllocateConsoleRegion_GM107 +( + OBJGPU *pGpu, + MemoryManager *pMemoryManager +) +{ + + NV_STATUS status = NV_OK; + NvU32 consoleRegionId = 0x0; + NvU64 regionSize, base, limit; + + if (pMemoryManager->Ram.ReservedConsoleDispMemSize > 0) + { + pMemoryManager->Ram.fbRegion[consoleRegionId].bLostOnSuspend = NV_FALSE; + pMemoryManager->Ram.fbRegion[consoleRegionId].bPreserveOnSuspend = NV_TRUE; + + base = pMemoryManager->Ram.fbRegion[consoleRegionId].base; + limit = pMemoryManager->Ram.fbRegion[consoleRegionId].limit; + + regionSize = limit - base + 1; + + // Once the console is reserved, we don't expect to reserve it again + NV_ASSERT_OR_RETURN(pMemoryManager->pReservedConsoleMemDesc == NULL, + NV_ERR_STATE_IN_USE); + + status = memdescCreate(&pMemoryManager->pReservedConsoleMemDesc, pGpu, + regionSize, RM_PAGE_SIZE_64K, NV_TRUE, ADDR_FBMEM, + NV_MEMORY_UNCACHED, + MEMDESC_FLAGS_SKIP_RESOURCE_COMPUTE); + if (status != NV_OK) + { + return status; + } + + memdescDescribe(pMemoryManager->pReservedConsoleMemDesc, ADDR_FBMEM, + base, regionSize); + memdescSetPageSize(pMemoryManager->pReservedConsoleMemDesc, + AT_GPU, RM_PAGE_SIZE); + + + NV_PRINTF(LEVEL_INFO, "Allocating console region of size: %llx, at base : %llx \n ", + regionSize, base); + } + + return status; +} diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/heap.c b/src/nvidia/src/kernel/gpu/mem_mgr/heap.c index 82b6de6a7..6b93a035d 100644 --- a/src/nvidia/src/kernel/gpu/mem_mgr/heap.c +++ b/src/nvidia/src/kernel/gpu/mem_mgr/heap.c @@ -532,26 +532,6 @@ NV_STATUS heapInitInternal_IMPL // if ((pMemoryManager->Ram.numFBRegions > 0) && (pHeap->bHasFbRegions)) { - FB_REGION_DESCRIPTOR consoleFbRegion; - portMemSet(&consoleFbRegion, 0, sizeof(consoleFbRegion)); - - if (heapType != HEAP_TYPE_PARTITION_LOCAL) - { - // - // If a region of FB is actively being used for console display memory - // on this GPU, mark it reserved in-place. - // In case of legacy SLI on Linux, console size is only known at StateInit - // - memmgrReserveConsoleRegion_HAL(pGpu, pMemoryManager, &consoleFbRegion); - status = memmgrAllocateConsoleRegion_HAL(pGpu, pMemoryManager, &consoleFbRegion); - if (status != NV_OK) - { - NV_PRINTF(LEVEL_WARNING, "Squashing the error status after failing to allocate console region, status: %x\n", - status); - status = NV_OK; - } - } - // // Define PMA-managed regions // This will be moved to memmgr once we refactor SMC partitions @@ -739,13 +719,6 @@ heapDestruct_IMPL } while (headptr_updated); - // - // Now that the console region is no longer reserved, free the console - // memdesc. - // - if (pHeap->heapType != HEAP_TYPE_PARTITION_LOCAL) - memmgrReleaseConsoleRegion(pGpu, pMemoryManager); - // // Free the heap structure, if we freed everything // (the first block represents the entire free space of the heap). diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/mem_desc.c b/src/nvidia/src/kernel/gpu/mem_mgr/mem_desc.c index 7f0e9055f..209b093ec 100644 --- a/src/nvidia/src/kernel/gpu/mem_mgr/mem_desc.c +++ b/src/nvidia/src/kernel/gpu/mem_mgr/mem_desc.c @@ -4339,7 +4339,11 @@ memdescSetCustomHeap MEMDESC_CUSTOM_HEAP heap ) { - NV_ASSERT(0); + if (heap == MEMDESC_CUSTOM_HEAP_ACR) + pMemDesc->_flags |= MEMDESC_FLAGS_CUSTOM_HEAP_ACR; + + if (heap == MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT) + pMemDesc->_flags |= MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT; } /*! @@ -4356,6 +4360,11 @@ memdescGetCustomHeap PMEMORY_DESCRIPTOR pMemDesc ) { + if (!!(pMemDesc->_flags & MEMDESC_FLAGS_CUSTOM_HEAP_ACR)) + return MEMDESC_CUSTOM_HEAP_ACR; + + if (!!(pMemDesc->_flags & MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)) + return MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT; return MEMDESC_CUSTOM_HEAP_NONE; } diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr.c b/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr.c index 444b7feba..8016a2f1a 100644 --- a/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr.c +++ b/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr.c @@ -113,6 +113,10 @@ memmgrDestruct_IMPL { NvU32 i; + OBJGPU *pGpu = ENG_GET_GPU(pMemoryManager); + + memmgrDestroyScanoutCarveoutHeap_HAL(pGpu, pMemoryManager); + for (i = 0; i < NUM_FBSR_TYPES; i++) { objDelete(pMemoryManager->pFbsr[i]); @@ -648,6 +652,16 @@ memmgrStateInitLocked_IMPL memmgrPreSchedulingDisableHandler, NULL)); } + // + // If a region of FB or system memory is actively being used for console + // display memory on this GPU, mark it reserved in-place. + // In case of legacy SLI on Linux, console size is only known at StateInit + // + + memmgrReserveConsoleRegion_HAL(pGpu, pMemoryManager); + + NV_ASSERT_OK_OR_RETURN(memmgrAllocateConsoleRegion_HAL(pGpu, pMemoryManager)); + // // Allocate framebuffer heap. All memory must be allocated from here to keep the world // consistent (N.B. the heap size has been reduced by the amount of instance memory). @@ -945,6 +959,8 @@ memmgrStateDestroy_IMPL pMemoryManager->pHeap = NULL; } + memmgrReleaseConsoleRegion(pGpu, pMemoryManager); + // RMCONFIG: only if FBSR engine is enabled if (RMCFG_MODULE_FBSR) { @@ -1987,59 +2003,6 @@ memmgrSetPlatformPmaSupport_IMPL return (NV_OK); } -/*! - * Allocate console region in CPU-RM based on region table passed from Physical RM - */ -NV_STATUS -memmgrAllocateConsoleRegion_IMPL -( - OBJGPU *pGpu, - MemoryManager *pMemoryManager, - FB_REGION_DESCRIPTOR *pConsoleFbRegion -) -{ - - NV_STATUS status = NV_OK; - NvU32 consoleRegionId = 0x0; - NvU64 regionSize; - - if (pMemoryManager->Ram.ReservedConsoleDispMemSize > 0) - { - pMemoryManager->Ram.fbRegion[consoleRegionId].bLostOnSuspend = NV_FALSE; - pMemoryManager->Ram.fbRegion[consoleRegionId].bPreserveOnSuspend = NV_TRUE; - - pConsoleFbRegion->base = pMemoryManager->Ram.fbRegion[consoleRegionId].base; - pConsoleFbRegion->limit = pMemoryManager->Ram.fbRegion[consoleRegionId].limit; - - regionSize = pConsoleFbRegion->limit - pConsoleFbRegion->base + 1; - - // Once the console is reserved, we don't expect to reserve it again - NV_ASSERT_OR_RETURN(pMemoryManager->Ram.pReservedConsoleMemDesc == NULL, - NV_ERR_STATE_IN_USE); - - status = memdescCreate(&pMemoryManager->Ram.pReservedConsoleMemDesc, pGpu, - regionSize, RM_PAGE_SIZE_64K, NV_TRUE, ADDR_FBMEM, - NV_MEMORY_UNCACHED, - MEMDESC_FLAGS_SKIP_RESOURCE_COMPUTE); - if (status != NV_OK) - { - pConsoleFbRegion->base = pConsoleFbRegion->limit = 0; - return status; - } - - memdescDescribe(pMemoryManager->Ram.pReservedConsoleMemDesc, ADDR_FBMEM, - pConsoleFbRegion->base, regionSize); - memdescSetPageSize(pMemoryManager->Ram.pReservedConsoleMemDesc, - AT_GPU, RM_PAGE_SIZE); - - - NV_PRINTF(LEVEL_INFO, "Allocating console region of size: %llx, at base : %llx \n ", - regionSize, pConsoleFbRegion->base); - } - - return status; -} - void memmgrReleaseConsoleRegion_IMPL ( @@ -2047,8 +2010,8 @@ memmgrReleaseConsoleRegion_IMPL MemoryManager *pMemoryManager ) { - memdescDestroy(pMemoryManager->Ram.pReservedConsoleMemDesc); - pMemoryManager->Ram.pReservedConsoleMemDesc = NULL; + memdescDestroy(pMemoryManager->pReservedConsoleMemDesc); + pMemoryManager->pReservedConsoleMemDesc = NULL; } PMEMORY_DESCRIPTOR @@ -2058,7 +2021,7 @@ memmgrGetReservedConsoleMemDesc_IMPL MemoryManager *pMemoryManager ) { - return pMemoryManager->Ram.pReservedConsoleMemDesc; + return pMemoryManager->pReservedConsoleMemDesc; } /*! @@ -3426,6 +3389,16 @@ memmgrInitFbRegions_IMPL } + // + // The carveout needs support from firmware side which is not + // configured in all the platforms. + // + if (memmgrInitZeroFbRegionsHal_HAL(pGpu, pMemoryManager) != NV_OK) + { + NV_PRINTF(LEVEL_INFO, + "Failed to setup carveout. Carevout functionality is disabled\n"); + } + return NV_OK; } diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr_ctrl.c b/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr_ctrl.c index f4f1753bf..77b46b8cb 100644 --- a/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr_ctrl.c +++ b/src/nvidia/src/kernel/gpu/mem_mgr/mem_mgr_ctrl.c @@ -768,25 +768,3 @@ subdeviceCtrlCmdGbGetSemaphoreSurfaceLayout_IMPL return NV_OK; } -// -// subdeviceCtrlCmdFbGetCarveoutRegionInfo -// -// Lock Requirements: -// Assert that API and GPUs lock held on entry -// -NV_STATUS -subdeviceCtrlCmdFbGetCarveoutRegionInfo_IMPL -( - Subdevice *pSubdevice, - NV2080_CTRL_FB_GET_CARVEOUT_REGION_INFO_PARAMS *pParams -) -{ - OBJGPU *pGpu = GPU_RES_GET_GPU(pSubdevice); - MemoryManager *pMemoryManager = GPU_GET_MEMORY_MANAGER(pGpu); - - NV_ASSERT_OR_RETURN(rmapiLockIsOwner() && rmGpuLockIsOwner(), NV_ERR_INVALID_LOCK_STATE); - - pParams->numCarveoutRegions = 0; - - return memmgrGetCarveoutRegionInfo(pGpu, pMemoryManager, pParams); -} diff --git a/src/nvidia/src/kernel/gpu/mem_mgr/mem_utils.c b/src/nvidia/src/kernel/gpu/mem_mgr/mem_utils.c index a9560bbd2..c1318ad49 100644 --- a/src/nvidia/src/kernel/gpu/mem_mgr/mem_utils.c +++ b/src/nvidia/src/kernel/gpu/mem_mgr/mem_utils.c @@ -1694,6 +1694,18 @@ memUtilsAllocMemDesc { NvU64 memDescFlags = MEMDESC_FLAGS_SKIP_RESOURCE_COMPUTE; + if (pGpu->getProperty(pGpu, PDB_PROP_GPU_IS_SOC_SDM)) + { + if (FLD_TEST_DRF(OS32, _ATTR2, _USE_SCANOUT_CARVEOUT, _TRUE, pFbAllocInfo->retAttr2)) + { + memDescFlags |= MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT; + } + if (pGpu->getProperty(pGpu, PDB_PROP_GPU_ALLOC_ISO_SYS_MEM_FROM_CARVEOUT) && + FLD_TEST_DRF(OS32, _ATTR2, _ISO, _YES, pFbAllocInfo->retAttr2)) + { + memDescFlags |= MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT; + } + } if (FLD_TEST_DRF(OS32, _ATTR2, _USE_EGM, _TRUE, pFbAllocInfo->retAttr2)) { memDescFlags |= MEMDESC_FLAGS_ALLOC_FROM_EGM; diff --git a/src/nvidia/src/kernel/gpu/mig_mgr/kernel_mig_manager.c b/src/nvidia/src/kernel/gpu/mig_mgr/kernel_mig_manager.c index 17eaf7c92..b06afd6c9 100644 --- a/src/nvidia/src/kernel/gpu/mig_mgr/kernel_mig_manager.c +++ b/src/nvidia/src/kernel/gpu/mig_mgr/kernel_mig_manager.c @@ -1089,7 +1089,7 @@ static NV_STATUS _kmigmgrHandlePreSchedulingDisableCallback swizzId = pKernelMIGGpuInstance->swizzId; // Shouldn't be any valid gpu instances - NV_PRINTF(LEVEL_ERROR, + NV_PRINTF(LEVEL_INFO, "Invalidating valid gpu instance with swizzId = %d\n", swizzId); @@ -1105,7 +1105,7 @@ static NV_STATUS _kmigmgrHandlePreSchedulingDisableCallback continue; // Shouldn't be any valid compute instances - NV_PRINTF(LEVEL_ERROR, + NV_PRINTF(LEVEL_INFO, "Invalidating valid compute instance with id = %d\n", CIIdx); diff --git a/src/nvidia/src/kernel/gpu/subdevice/subdevice_ctrl_gpu_kernel.c b/src/nvidia/src/kernel/gpu/subdevice/subdevice_ctrl_gpu_kernel.c index aa4e4d9e8..b16d5a7ac 100644 --- a/src/nvidia/src/kernel/gpu/subdevice/subdevice_ctrl_gpu_kernel.c +++ b/src/nvidia/src/kernel/gpu/subdevice/subdevice_ctrl_gpu_kernel.c @@ -39,6 +39,7 @@ #include "gpu/bif/kernel_bif.h" #include "gpu/bus/kern_bus.h" #include "gpu/gsp/gsp_static_config.h" +#include "gpu/gsp/kernel_gsp.h" #include "gpu/disp/kern_disp.h" #include "disp/nvfbc_session.h" #include "gpu/mmu/kern_gmmu.h" @@ -613,6 +614,30 @@ subdeviceCtrlCmdGpuGetCachedInfo_IMPL return getGpuInfos(pSubdevice, pGpuInfoParams, NV_FALSE); } + +NV_STATUS +subdeviceCtrlCmdGpuForceGspUnload_IMPL +( + Subdevice *pSubdevice, + NV2080_CTRL_GPU_FORCE_GSP_UNLOAD_PARAMS *pGpuInfoParams +) +{ + NV_STATUS rmStatus = NV_OK; + OBJGPU *pGpu = GPU_RES_GET_GPU(pSubdevice); + KernelGsp *pKernelGsp = GPU_GET_KERNEL_GSP(pGpu); + + NV_CHECK_OR_RETURN(LEVEL_INFO, !IS_MIG_IN_USE(pGpu), NV_ERR_NOT_SUPPORTED); + + NV_CHECK_OR_RETURN(LEVEL_INFO, IS_VGPU_GSP_PLUGIN_OFFLOAD_ENABLED(pGpu), NV_ERR_NOT_SUPPORTED); + + // Call gsp unload now. + rmStatus = kgspUnloadRm(pGpu, pKernelGsp, KGSP_UNLOAD_MODE_NORMAL, GPU_STATE_FLAGS_FAST_UNLOAD); + + pKernelGsp->bFatalError = NV_TRUE; + + return rmStatus;; +} + static OBJHWBC * getBridgeObject(OBJHWBC *pHWBC, NvU32 hwbcId) { @@ -3439,6 +3464,18 @@ subdeviceCtrlCmdGetGpuFabricProbeInfo_IMPL healthMask |= FLD_SET_DRF(2080, _CTRL_GPU_FABRIC_HEALTH_MASK, _INCORRECT_CONFIGURATION, _INSUFFICIENT_NVLINKS, healthMask); } + else if (FLD_TEST_DRF(LINK, _INBAND_FABRIC_HEALTH_MASK, _INCORRECT_CONFIGURATION, + _INCOMPATIBLE_GPU_FW, mask)) + { + healthMask |= FLD_SET_DRF(2080, _CTRL_GPU_FABRIC_HEALTH_MASK, + _INCORRECT_CONFIGURATION, _INCOMPATIBLE_GPU_FW, healthMask); + } + else if (FLD_TEST_DRF(LINK, _INBAND_FABRIC_HEALTH_MASK, _INCORRECT_CONFIGURATION, + _INVALID_LOCATION, mask)) + { + healthMask |= FLD_SET_DRF(2080, _CTRL_GPU_FABRIC_HEALTH_MASK, + _INCORRECT_CONFIGURATION, _INVALID_LOCATION, healthMask); + } else if (FLD_TEST_DRF(LINK, _INBAND_FABRIC_HEALTH_MASK, _INCORRECT_CONFIGURATION, _NOT_SUPPORTED, mask)) { @@ -3467,23 +3504,29 @@ subdeviceCtrlCmdGetGpuFabricProbeInfo_IMPL { healthMask |= FLD_SET_DRF(2080, _CTRL_GPU_FABRIC_HEALTH_MASK, _ACCESS_TIMEOUT_RECOVERY, _TRUE, healthMask); + mask |= FLD_SET_DRF(LINK, _INBAND_FABRIC_HEALTH_MASK, + _ACCESS_TIMEOUT_RECOVERY, _TRUE, mask); } else { healthMask |= FLD_SET_DRF(2080, _CTRL_GPU_FABRIC_HEALTH_MASK, _ACCESS_TIMEOUT_RECOVERY, _FALSE, healthMask); + mask |= FLD_SET_DRF(LINK, _INBAND_FABRIC_HEALTH_MASK, + _ACCESS_TIMEOUT_RECOVERY, _FALSE, mask); } } else { healthMask |= FLD_SET_DRF(2080, _CTRL_GPU_FABRIC_HEALTH_MASK, _ACCESS_TIMEOUT_RECOVERY, _NOT_SUPPORTED, healthMask); + mask |= FLD_SET_DRF(LINK, _INBAND_FABRIC_HEALTH_MASK, + _ACCESS_TIMEOUT_RECOVERY, _NOT_SUPPORTED, mask); } pParams->fabricHealthMask = healthMask; pParams->fabricHealthSummary = - _convertGpuFabricProbeHealthSummary(nvlinkGetFabricHealthSummary(healthMask)); + _convertGpuFabricProbeHealthSummary(nvlinkGetFabricHealthSummary(mask)); return NV_OK; } diff --git a/src/nvidia/src/kernel/gpu_mgr/gpu_mgr.c b/src/nvidia/src/kernel/gpu_mgr/gpu_mgr.c index 7e0e16ce6..e2e135d4d 100644 --- a/src/nvidia/src/kernel/gpu_mgr/gpu_mgr.c +++ b/src/nvidia/src/kernel/gpu_mgr/gpu_mgr.c @@ -4254,6 +4254,9 @@ gpumgrUnregisterRmCapsForMIGGI_IMPL(NvU64 gpuDomainBusDevice) pGPUInstanceSave->bValid = NV_FALSE; } } + + // Reset during teardown as static info not restored since boot + pTopologySave->bVgpuRestoredFromStaticInfo = NV_FALSE; } void diff --git a/src/nvidia/src/kernel/mem_mgr/console_mem.c b/src/nvidia/src/kernel/mem_mgr/console_mem.c index 48c04eaa0..39025b28d 100644 --- a/src/nvidia/src/kernel/mem_mgr/console_mem.c +++ b/src/nvidia/src/kernel/mem_mgr/console_mem.c @@ -31,6 +31,7 @@ #include "gpu/bus/kern_bus.h" #include "class/cl0040.h" // NV01_MEMORY_LOCAL_USER +#include "class/cl003e.h" // NV01_MEMORY_SYSTEM NV_STATUS conmemConstruct_IMPL @@ -45,6 +46,7 @@ conmemConstruct_IMPL OBJGPU *pGpu = pMemory->pGpu; MemoryManager *pMemoryManager = GPU_GET_MEMORY_MANAGER(pGpu); MEMORY_DESCRIPTOR *pMemDesc = memmgrGetReservedConsoleMemDesc(pGpu, pMemoryManager); + NvU32 memClassId; NV_ASSERT_OR_RETURN(RMCFG_FEATURE_KERNEL_RM, NV_ERR_NOT_SUPPORTED); @@ -57,16 +59,28 @@ conmemConstruct_IMPL return NV_ERR_INVALID_ARGUMENT; } + switch (pMemDesc->_addressSpace) + { + case ADDR_SYSMEM: + memClassId = NV01_MEMORY_SYSTEM; + break; + case ADDR_FBMEM: + memClassId = NV01_MEMORY_LOCAL_USER; + break; + default: + return NV_ERR_NOT_SUPPORTED; + } + NV_ASSERT(pMemDesc->Allocated == 0); memdescAddRef(pMemDesc); pMemDesc->DupCount++; // // NV01_MEMORY_FRAMEBUFFER_CONSOLE is just a way to get at the reserved - // framebuffer console memDesc rather than allocating a new one. Otherwise, - // it's treated as normal memory. + // video memory or system memory console memDesc rather than allocating + // a new one. Otherwise, it's treated as normal memory. // - status = memConstructCommon(pMemory, NV01_MEMORY_LOCAL_USER, 0, pMemDesc, + status = memConstructCommon(pMemory, memClassId, 0, pMemDesc, 0, NULL, 0, 0, 0, 0, NVOS32_MEM_TAG_NONE, (HWRESOURCE_INFO *)NULL); if (status != NV_OK) diff --git a/src/nvidia/src/kernel/mem_mgr/system_mem.c b/src/nvidia/src/kernel/mem_mgr/system_mem.c index 097fbb1e1..bb732e16b 100644 --- a/src/nvidia/src/kernel/mem_mgr/system_mem.c +++ b/src/nvidia/src/kernel/mem_mgr/system_mem.c @@ -175,6 +175,16 @@ sysmemConstruct_IMPL // Copy-construction has already been done by the base Memory class if (RS_IS_COPY_CTOR(pParams)) { + Memory *pMemorySrc = dynamicCast(pParams->pSrcRef->pResource, Memory); + MEMORY_DESCRIPTOR *pMemDesc = pMemorySrc->pMemDesc; + NV_STATUS status = NV_ERR_INVALID_ARGUMENT; + + if (memdescGetCustomHeap(pMemDesc) == MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT) { + status = memmgrDuplicateFromScanoutCarveoutRegion(pGpu, + GPU_GET_MEMORY_MANAGER(pGpu), + pMemDesc); + return status; + } return NV_OK; } @@ -305,6 +315,21 @@ sysmemConstruct_IMPL AT_GPU, pageSizeAttr), failed_destroy_memdesc); + if (memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)) + { + NvU32 heapFlag = NVOS32_ALLOC_FLAGS_FORCE_MEM_GROWS_DOWN; + + rmStatus = memmgrAllocScanoutCarveoutRegionResources(GPU_GET_MEMORY_MANAGER(pGpu), + pAllocData, + pAllocRequest->hClient, + &heapFlag, + pMemDesc); + NV_CHECK_OK_OR_GOTO(rmStatus, LEVEL_ERROR, rmStatus, failed_destroy_memdesc); + + sizeOut = pMemDesc->Size; + pAllocData->limit = sizeOut - 1; + } + memdescTagAlloc(rmStatus, NV_FB_ALLOC_RM_INTERNAL_OWNER_UNNAMED_TAG_132, pMemDesc); if (rmStatus != NV_OK) { @@ -324,7 +349,7 @@ sysmemConstruct_IMPL } else { - NV_CHECK_OK_OR_GOTO(rmStatus, LEVEL_ERROR, rmStatus, failed_destroy_memdesc); + NV_CHECK_OK_OR_GOTO(rmStatus, LEVEL_ERROR, rmStatus, failed_free_scanout_carveout); } } else @@ -484,6 +509,11 @@ failed_destruct_common: memDestructCommon(pMemory); failed_free_memdesc: memdescFree(pMemDesc); +failed_free_scanout_carveout: + if (memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)) { + memmgrFreeScanoutCarveoutRegionResources(GPU_GET_MEMORY_MANAGER(pGpu), + memdescGetPte(pMemDesc, AT_CPU, 0)); + } failed_destroy_memdesc: memdescDestroy(pMemDesc); @@ -792,3 +822,17 @@ failed: return status; } +void sysmemDestruct_IMPL(SystemMemory *pSystemMemory) +{ + Memory *pMemory = staticCast(pSystemMemory, Memory); + OBJGPU *pGpu = pMemory->pGpu; + MEMORY_DESCRIPTOR *pMemDesc = pMemory->pMemDesc; + + if ((pMemDesc != NULL) && + memdescGetFlag(pMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)) + { + memmgrFreeScanoutCarveoutRegionResources(GPU_GET_MEMORY_MANAGER(pGpu), + memdescGetPte(pMemDesc, AT_CPU, 0)); + } + +} diff --git a/src/nvidia/src/kernel/mem_mgr/video_mem.c b/src/nvidia/src/kernel/mem_mgr/video_mem.c index 9c01d87dd..6a6fd5f53 100644 --- a/src/nvidia/src/kernel/mem_mgr/video_mem.c +++ b/src/nvidia/src/kernel/mem_mgr/video_mem.c @@ -486,6 +486,10 @@ vidmemCopyConstruct switch (memdescGetCustomHeap(pMemDesc)) { + case MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT: + status = memmgrDuplicateFromScanoutCarveoutRegion(pGpu, + GPU_GET_MEMORY_MANAGER(pGpu), pMemDesc); + break; case MEMDESC_CUSTOM_HEAP_NONE: SLI_LOOP_START(SLI_LOOP_FLAGS_BC_ONLY) MEMORY_DESCRIPTOR *pSrcMemDesc = memdescGetMemDescFromGpu(pMemorySrc->pMemDesc, pGpu); @@ -650,6 +654,7 @@ vidmemConstruct_IMPL bIsPmaAlloc = memmgrIsPmaInitialized(pMemoryManager) && !bSubheap && !bRsvdHeap && + !FLD_TEST_DRF(OS32, _ATTR2, _USE_SCANOUT_CARVEOUT, _TRUE, attr2) && !(pAllocData->flags & NVOS32_ALLOC_FLAGS_WPR1) && !(pAllocData->flags & NVOS32_ALLOC_FLAGS_WPR2) && (!(pAllocData->flags & NVOS32_ALLOC_FLAGS_FIXED_ADDRESS_ALLOCATE) || @@ -718,6 +723,7 @@ vidmemConstruct_IMPL // Don't allow FB allocations if FB is broken unless it is a virtual allocation or running in L2 cache only mode if (pGpu->getProperty(pGpu, PDB_PROP_GPU_BROKEN_FB) && + !FLD_TEST_DRF(OS32, _ATTR2, _USE_SCANOUT_CARVEOUT, _TRUE, pAllocData->attr2) && !gpuIsCacheOnlyModeEnabled(pGpu)) { NV_ASSERT_FAILED("Video memory requested despite BROKEN FB"); @@ -874,6 +880,7 @@ vidmemConstruct_IMPL SLI_LOOP_END; } + if (!memdescGetFlag(pTempMemDesc, MEMDESC_FLAGS_ALLOC_FROM_SCANOUT_CARVEOUT)) { // // Video memory is always locally transparently cached. It does not require @@ -1193,6 +1200,11 @@ vidmemDestruct_IMPL } } + else if (customHeap == MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT) + { + MemoryManager *pMemoryManager = GPU_GET_MEMORY_MANAGER(pGpu); + memmgrFreeFromScanoutCarveoutRegion(pGpu, pMemoryManager, pMemDesc); + } } NV_STATUS @@ -1270,6 +1282,39 @@ vidmemAllocResources goto failed; } + if (pGpu->getProperty(pGpu, PDB_PROP_GPU_IS_SOC_SDM)) + { + if (FLD_TEST_DRF(OS32, _ATTR2, _USE_SCANOUT_CARVEOUT, _TRUE, pVidHeapAlloc->attr2)) + { + NvU32 heapFlag = NVOS32_ALLOC_FLAGS_FORCE_MEM_GROWS_DOWN; + + status = memmgrAllocFromScanoutCarveoutRegion(pGpu, + pMemoryManager, + pFbAllocInfo->hClient, + pVidHeapAlloc, + &heapFlag, + &pAllocRequest->pMemDesc); + + if (status == NV_OK) + { + pMemDesc = pAllocRequest->pMemDesc; + pMemDesc->pHeap = (Heap *)pMemoryManager->pScanoutHeap; + memdescSetCustomHeap(pMemDesc, MEMDESC_CUSTOM_HEAP_SCANOUT_CARVEOUT); + // Force the format to whatever is required by client. + memdescSetPteKind(pMemDesc, pFbAllocInfo->format); + NV_PRINTF(LEVEL_INFO, "Allocated surface in scanout region\n"); + } + else + { + NV_PRINTF(LEVEL_WARNING, + "Failed to allocate surface in scanout region\n"); + goto failed; + } + + goto pre_alloc_done; + } + } + // Prior to this change, heap was silently ignoring non-contig Vidmem allocation requests. // With this change to allow non-contig vidmem allocation, I was getting a DVS Extended Sanity failures & regression on Windows. // It seems Windows is making some allocations with non-contig flag, but was expecting contig allocation. @@ -1448,6 +1493,8 @@ vidmemAllocResources pHwResource->ctagOffset = pFbAllocInfo->ctagOffset; } +pre_alloc_done: + pVidHeapAlloc->offset = pFbAllocInfo->offset; if (pAllocRequest->pHwResource != NULL) diff --git a/src/nvidia/src/kernel/vgpu/rpc.c b/src/nvidia/src/kernel/vgpu/rpc.c index b877039a3..82670b39b 100644 --- a/src/nvidia/src/kernel/vgpu/rpc.c +++ b/src/nvidia/src/kernel/vgpu/rpc.c @@ -1497,6 +1497,9 @@ NV_STATUS vgpuGspSetupBuffers(OBJGPU *pGpu) return NV_ERR_NOT_SUPPORTED; } + // Modifying the DMA address size to the value supported by the hardware + osDmaSetAddressSize(pGpu->pOsGpuInfo, gpuarchGetSystemPhysAddrWidth_HAL(gpuGetArch(pGpu))); + rpcSendMessage_FNPTR(pVGpu->pRpc) = _rpcSendMessage_VGPUGSP; rpcRecvPoll_FNPTR(pVGpu->pRpc) = _rpcRecvPoll_VGPUGSP; @@ -10597,6 +10600,7 @@ NV_STATUS rpcGspSetSystemInfo_v17_00 rpcInfo->bIsPrimary = pGpu->getProperty(pGpu, PDB_PROP_GPU_PRIMARY_DEVICE); + rpcInfo->bS0ixSupport = pSys->getProperty(pSys, PDB_PROP_SYS_SUPPORTS_S0IX); #if defined(NV_UNIX) && !RMCFG_FEATURE_MODS_FEATURES rpcInfo->isGridBuild = os_is_grid_supported(); #endif diff --git a/src/nvidia/srcs.mk b/src/nvidia/srcs.mk index 8c60eb90b..ecf3b2d6f 100644 --- a/src/nvidia/srcs.mk +++ b/src/nvidia/srcs.mk @@ -608,6 +608,7 @@ SRCS += src/kernel/gpu/mem_mgr/arch/ampere/fbsr_ga100.c SRCS += src/kernel/gpu/mem_mgr/arch/ampere/mem_mgr_ga100.c SRCS += src/kernel/gpu/mem_mgr/arch/ampere/mem_mgr_ga102.c SRCS += src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb100.c +SRCS += src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb10b_phys.c SRCS += src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb202.c SRCS += src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb202_base.c SRCS += src/kernel/gpu/mem_mgr/arch/blackwell/mem_mgr_gb20b.c diff --git a/version.mk b/version.mk index bc4f873e9..76c9bf3c6 100644 --- a/version.mk +++ b/version.mk @@ -1,5 +1,5 @@ -NVIDIA_VERSION = 580.65.06 -NVIDIA_NVID_VERSION = 580.65.06 +NVIDIA_VERSION = 580.76.05 +NVIDIA_NVID_VERSION = 580.76.05 NVIDIA_NVID_EXTRA = # This file.