mirror of
https://github.com/NVIDIA/open-gpu-kernel-modules.git
synced 2026-02-07 08:39:58 +00:00
535.54.03
This commit is contained in:
@@ -57,14 +57,10 @@ typedef struct
|
||||
NVOC_PREFIX(ceutils) class CeUtils : Object
|
||||
{
|
||||
public:
|
||||
NV_STATUS ceutilsConstruct(CeUtils *pCeUtils, OBJGPU *pGpu, NV0050_ALLOCATION_PARAMETERS *pAllocParams);
|
||||
|
||||
NV_STATUS ceutilsConstruct(CeUtils *pCeUtils, OBJGPU *pGpu, KERNEL_MIG_GPU_INSTANCE *pKernelMIGGPUInstance,
|
||||
NV0050_ALLOCATION_PARAMETERS *pAllocParams);
|
||||
void ceutilsDestruct(CeUtils *pCeUtils);
|
||||
|
||||
NV_STATUS ceutilsInitialize(CeUtils *pCeUtils, OBJGPU *pGpu, NV0050_ALLOCATION_PARAMETERS *pAllocParams);
|
||||
void ceutilsDeinit(CeUtils *pCeUtils);
|
||||
void ceutilsRegisterGPUInstance(CeUtils *pCeUtils, KERNEL_MIG_GPU_INSTANCE *pKernelMIGGPUInstance);
|
||||
|
||||
NV_STATUS ceutilsMemset(CeUtils *pCeUtils, CEUTILS_MEMSET_PARAMS *pParams);
|
||||
NV_STATUS ceutilsMemcopy(CeUtils *pCeUtils, CEUTILS_MEMCOPY_PARAMS *pParams);
|
||||
|
||||
@@ -80,7 +76,6 @@ public:
|
||||
NvHandle hSubdevice;
|
||||
|
||||
OBJCHANNEL *pChannel;
|
||||
KERNEL_MIG_GPU_INSTANCE *pKernelMIGGPUInstance;
|
||||
OBJGPU *pGpu;
|
||||
|
||||
KernelCE *pKCe;
|
||||
|
||||
@@ -107,17 +107,8 @@
|
||||
NV_PUSH_DATA(d4); \
|
||||
} while (0)
|
||||
|
||||
#define READ_CHANNEL_PAYLOAD_SEMA(channel) MEM_RD32((NvU8*)channel->pbCpuVA + \
|
||||
channel->finishPayloadOffset)
|
||||
|
||||
#define READ_CHANNEL_PB_SEMA(channel) MEM_RD32((NvU8*)channel->pbCpuVA + \
|
||||
channel->semaOffset)
|
||||
|
||||
#define WRITE_CHANNEL_PB_SEMA(channel, val) MEM_WR32((NvU8*)channel->pbCpuVA + \
|
||||
channel->semaOffset, val);
|
||||
|
||||
#define WRITE_CHANNEL_PAYLOAD_SEMA(channel,val) MEM_WR32((NvU8*)channel->pbCpuVA + \
|
||||
channel->finishPayloadOffset, val);
|
||||
#define READ_CHANNEL_PAYLOAD_SEMA(channel) channelReadChannelMemdesc(channel, channel->finishPayloadOffset)
|
||||
#define READ_CHANNEL_PB_SEMA(channel) channelReadChannelMemdesc(channel, channel->semaOffset)
|
||||
|
||||
//
|
||||
// This struct contains parameters needed to send a pushbuffer for a CE
|
||||
@@ -141,6 +132,7 @@ typedef struct
|
||||
|
||||
NV_STATUS channelSetupIDs(OBJCHANNEL *pChannel, OBJGPU *pGpu, NvBool bUseVasForCeCopy, NvBool bMIGInUse);
|
||||
void channelSetupChannelBufferSizes(OBJCHANNEL *pChannel);
|
||||
NvU32 channelReadChannelMemdesc(OBJCHANNEL *pChannel, NvU32 offset);
|
||||
|
||||
// Needed for pushbuffer management
|
||||
NV_STATUS channelWaitForFreeEntry(OBJCHANNEL *pChannel, NvU32 *pPutIndex);
|
||||
|
||||
@@ -87,7 +87,7 @@ typedef struct OBJMEMSCRUB {
|
||||
PSCRUB_NODE pScrubList;
|
||||
#if !defined(SRT_BUILD)
|
||||
// Scrubber uses ceUtils to manage CE channel
|
||||
CeUtils ceUtilsObject;
|
||||
CeUtils *pCeUtils;
|
||||
#endif
|
||||
struct OBJGPU *pGpu;
|
||||
VGPU_GUEST_PMA_SCRUB_BUFFER_RING vgpuScrubBuffRing;
|
||||
|
||||
Reference in New Issue
Block a user