// Generated by the protocol buffer compiler.  DO NOT EDIT!

#include "nvtypes.h"
#include "prbrt.h"
#include "g_rc_pb.h"

// 'RobustChannelError' enum descriptor
static const PRB_ENUM_MAPPING prb_enum_mappings_robustchannelerror[] = {
    {
        1024,
        PRB_MAYBE_ENUM_NAME("ROBUST_CHANNEL_OTHER")
    },
};

const PRB_ENUM_DESC prb_enums_rc_robustchannelerror = {
    prb_enum_mappings_robustchannelerror,
    1,
   PRB_MAYBE_ENUM_NAME("RobustChannelError")
};

// 'MMUFaultType' enum descriptor
static const PRB_ENUM_MAPPING prb_enum_mappings_mmufaulttype[] = {
    {
        255,
        PRB_MAYBE_ENUM_NAME("NV_PFAULT_FAULT_TYPE_UNKNOWN")
    },
};

const PRB_ENUM_DESC prb_enums_rc_mmufaulttype = {
    prb_enum_mappings_mmufaulttype,
    1,
   PRB_MAYBE_ENUM_NAME("MMUFaultType")
};

// 'MMUErrSrc' enum descriptor
static const PRB_ENUM_MAPPING prb_enum_mappings_mmuerrsrc[] = {
    {
        255,
        PRB_MAYBE_ENUM_NAME("NV_PFIFO_INTR_MMU_FAULT_INFO_CLIENT_UNKNOWN")
    },
};

const PRB_ENUM_DESC prb_enums_rc_mmuerrsrc = {
    prb_enum_mappings_mmuerrsrc,
    1,
   PRB_MAYBE_ENUM_NAME("MMUErrSrc")
};

// 'MMUFltAccessType' enum descriptor
static const PRB_ENUM_MAPPING prb_enum_mappings_mmufltaccesstype[] = {
    {
        0,
        PRB_MAYBE_ENUM_NAME("NV_PFAULT_ACCESS_TYPE_VIRT_READ")
    },
    {
        1,
        PRB_MAYBE_ENUM_NAME("NV_PFAULT_ACCESS_TYPE_VIRT_WRITE")
    },
};

const PRB_ENUM_DESC prb_enums_rc_mmufltaccesstype = {
    prb_enum_mappings_mmufltaccesstype,
    2,
   PRB_MAYBE_ENUM_NAME("MMUFltAccessType")
};

// 'PBDMAErrType' enum descriptor
static const PRB_ENUM_MAPPING prb_enum_mappings_pbdmaerrtype[] = {
    {
        64,
        PRB_MAYBE_ENUM_NAME("PBDMA_ERR_UNKNOWN")
    },
};

const PRB_ENUM_DESC prb_enums_rc_pbdmaerrtype = {
    prb_enum_mappings_pbdmaerrtype,
    1,
   PRB_MAYBE_ENUM_NAME("PBDMAErrType")
};

// 'RcDiagRecordType' enum descriptor
static const PRB_ENUM_MAPPING prb_enum_mappings_rcdiagrecordtype[] = {
    {
        1,
        PRB_MAYBE_ENUM_NAME("GRSTATUS")
    },
    {
        2,
        PRB_MAYBE_ENUM_NAME("GPCSTATUS")
    },
};

const PRB_ENUM_DESC prb_enums_rc_rcdiagrecordtype = {
    prb_enum_mappings_rcdiagrecordtype,
    2,
   PRB_MAYBE_ENUM_NAME("RcDiagRecordType")
};

// 'GenericData' field defaults

// 'GenericData' field descriptors
const PRB_FIELD_DESC prb_fields_rc_genericdata[] = {
    {
        1,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("nv_agpconf_cmd")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        2,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("nb_agpconf_cmd")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        3,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("error_context")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        4,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("channel_id")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        5,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_robustchannelerror,
        PRB_MAYBE_FIELD_NAME("error_type")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        6,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("pushbuffer_space")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        7,
        {
            PRB_OPTIONAL,
            PRB_UINT64,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("time")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        8,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("gpu_id")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        9,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("error_number")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        10,
        {
            PRB_OPTIONAL,
            PRB_UINT64,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("system_time")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
};

// 'RcCounter' field defaults

// 'RcCounter' field descriptors
const PRB_FIELD_DESC prb_fields_rc_rccounter[] = {
    {
        1,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_robustchannelerror,
        PRB_MAYBE_FIELD_NAME("rcErrorType")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        2,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("count")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        3,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_mmufaulttype,
        PRB_MAYBE_FIELD_NAME("rcFaultType")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        4,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_mmuerrsrc,
        PRB_MAYBE_FIELD_NAME("rcErrorSrc")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        5,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("rcLastCHID")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        6,
        {
            PRB_OPTIONAL,
            PRB_UINT64,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("rcLastTime")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        7,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_gr_gr_err_typ,
        PRB_MAYBE_FIELD_NAME("rcGRErrType")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        8,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_gr_gr_excptn_subtyp,
        PRB_MAYBE_FIELD_NAME("rcGRExcptnType")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        9,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("rcPbdmaID")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        10,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_pbdmaerrtype,
        PRB_MAYBE_FIELD_NAME("rcPbdmaErr")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        11,
        {
            PRB_OPTIONAL,
            PRB_UINT64,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("mmuFaultVA")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        12,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_mmufltaccesstype,
        PRB_MAYBE_FIELD_NAME("mmuFaultAccessType")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
};

// 'RcDiagRecord' field defaults

// 'RcDiagRecord' field descriptors
const PRB_FIELD_DESC prb_fields_rc_rcdiagrecord[] = {
    {
        1,
        {
            PRB_OPTIONAL,
            PRB_ENUM,
            0,
        },
        0,
        &prb_enums_rc_rcdiagrecordtype,
        PRB_MAYBE_FIELD_NAME("record_type")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        2,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("record_id")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        3,
        {
            PRB_REPEATED,
            PRB_MESSAGE,
            0,
        },
        REGS_REGSANDMEM,
        0,
        PRB_MAYBE_FIELD_NAME("regs")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
};

// 'GrException' field defaults

// 'GrException' field descriptors
const PRB_FIELD_DESC prb_fields_rc_grexception[] = {
    {
        1,
        {
            PRB_OPTIONAL,
            PRB_BOOL,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("first_fragment")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        2,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("fragment_count")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        3,
        {
            PRB_OPTIONAL,
            PRB_MESSAGE,
            0,
        },
        NVDEBUG_ENG_MC,
        0,
        PRB_MAYBE_FIELD_NAME("mc")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        4,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("pmc_boot1")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        5,
        {
            PRB_OPTIONAL,
            PRB_UINT32,
            0,
        },
        0,
        0,
        PRB_MAYBE_FIELD_NAME("fragment_tag")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
    {
        6,
        {
            PRB_REPEATED,
            PRB_MESSAGE,
            0,
        },
        REGS_REGSANDMEM,
        0,
        PRB_MAYBE_FIELD_NAME("gr_regs")
        PRB_MAYBE_FIELD_DEFAULT(0)
    },
};

// Message descriptors
const PRB_MSG_DESC prb_messages_rc[] = {
    {
        10,
        prb_fields_rc_genericdata,
        PRB_MAYBE_MESSAGE_NAME("Rc.GenericData")
    },
    {
        12,
        prb_fields_rc_rccounter,
        PRB_MAYBE_MESSAGE_NAME("Rc.RcCounter")
    },
    {
        3,
        prb_fields_rc_rcdiagrecord,
        PRB_MAYBE_MESSAGE_NAME("Rc.RcDiagRecord")
    },
    {
        6,
        prb_fields_rc_grexception,
        PRB_MAYBE_MESSAGE_NAME("Rc.GrException")
    },
};

// Service descriptors
const PRB_SERVICE_DESC prb_services_rc[] = {
   { 0 }
};

