Files
open-gpu-kernel-modules/src/nvidia/generated/g_rpc_iom.c
Andy Ritger 4397463e73 530.30.02
2023-02-28 11:12:44 -08:00

141 lines
2.6 KiB
C

// This file is automatically generated by rmconfig - DO NOT EDIT!
//
// Profile: shipping-gpus-openrm
// Template: templates/gt_eng_iom.c
//
#include "nvstatus.h"
#include "nvport/inline/util_valist.h"
#include "nvport/nvport.h"
#include "core/core.h"
#include "nvoc/rtti.h"
#include "os/os.h"
#include "gpu/gpu.h"
#include "objrpc.h"
#include "g_rpc_private.h"
//
// RPC's object-level _STUB, _MISSING, _VGPUSTUB interface routines
// (if any)
//
//
// Initialize RPC's object-level interfaces
//
void rpcObjIfacesSetup(OBJRPC *pRpc)
{
RPC_OBJ_IFACES *pRpcMethods = &pRpc->obj;
pRpcMethods->__rpcConstruct__ = rpcConstruct_IMPL;
pRpcMethods->__rpcDestroy__ = rpcDestroy_IMPL;
pRpcMethods->__rpcSendMessage__ = rpcSendMessage_IMPL;
pRpcMethods->__rpcRecvPoll__ = rpcRecvPoll_IMPL;
// pRpcMethods->__rpcSendMessageUvm__ = rpcSendMessageUvm_IMPL; # ONLY_IF => VIRTUALIZATION
// pRpcMethods->__rpcRecvPollUvm__ = rpcRecvPollUvm_IMPL; # ONLY_IF => VIRTUALIZATION
}
static void
rpcSetPropertiesSpecial
(
POBJRPC pRpc
)
{
}
//
// RPC's run-time type information
//
extern const struct NVOC_CLASS_DEF __iom_class_def_OBJRPC;
void __iom_dtor_OBJRPC(POBJRPC);
const struct NVOC_RTTI __iom_rtti_OBJRPC_OBJRPC =
{
&__iom_class_def_OBJRPC,
(NVOC_DYNAMIC_DTOR)&__iom_dtor_OBJRPC,
0,
};
static const struct NVOC_CASTINFO __iom_castinfo_OBJRPC =
{
1,
{
&__iom_rtti_OBJRPC_OBJRPC
}
};
extern const NVOC_RTTI_PROVIDER __iom_rtti_provider;
const struct NVOC_CLASS_DEF __iom_class_def_OBJRPC =
{
{
sizeof(OBJRPC),
classId(OBJRPC),
&__iom_rtti_provider,
#if NV_PRINTF_STRINGS_ALLOWED
"OBJRPC",
#endif
},
NULL,
&__iom_castinfo_OBJRPC,
};
//
// RPC's object infrastructure boilerplate
//
// initializers, constructors, and destructors for RPC's base classes
NV_STATUS __iom_ctor_OBJRPC(POBJRPC pRpc)
{
RMCFG_MODULE_ENABLED_OR_ASSERT_AND_BAIL(RPC);
return NV_OK;
}
NV_STATUS __iom_vctor_OBJRPC(Dynamic *pDynamic, va_list args)
{
NV_STATUS status;
POBJRPC pThis = dynamicCast(pDynamic, OBJRPC);
if (pThis != NULL)
{
status = __iom_ctor_OBJRPC(pThis);
}
else
{
status = NV_ERR_INVALID_OBJECT;
}
return status;
}
void __iom_dtor_OBJRPC(POBJRPC pRpc)
{
}
// RPC's object initializer function to set up vtables and RTTI
void __iom_init_OBJRPC(POBJRPC pRpc)
{
rpcObjIfacesSetup(pRpc);
rpcSetPropertiesSpecial(pRpc);
}
//
// RPC's object creation routine
//