// Autogenerated by:
// ../../src/tools/ftrace_proto_gen/ftrace_proto_gen.cc
// Do not edit.

// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
// @generated from file protos/perfetto/trace/ftrace/kvm.proto (package perfetto.protos, syntax proto2)
/* eslint-disable */

import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file protos/perfetto/trace/ftrace/kvm.proto.
 */
export const file_protos_perfetto_trace_ftrace_kvm: GenFile = /*@__PURE__*/
  fileDesc("CiZwcm90b3MvcGVyZmV0dG8vdHJhY2UvZnRyYWNlL2t2bS5wcm90bxIPcGVyZmV0dG8ucHJvdG9zIigKGUt2bUFjY2Vzc0ZhdWx0RnRyYWNlRXZlbnQSCwoDaXBhGAEgASgEIjQKFEt2bUFja0lycUZ0cmFjZUV2ZW50Eg8KB2lycWNoaXAYASABKA0SCwoDcGluGAIgASgNIjIKFEt2bUFnZUh2YUZ0cmFjZUV2ZW50EgsKA2VuZBgBIAEoBBINCgVzdGFydBgCIAEoBCJUChVLdm1BZ2VQYWdlRnRyYWNlRXZlbnQSCwoDZ2ZuGAEgASgEEgsKA2h2YRgCIAEoBBINCgVsZXZlbBgDIAEoDRISCgpyZWZlcmVuY2VkGAQgASgNIjIKG0t2bUFybUNsZWFyRGVidWdGdHJhY2VFdmVudBITCgtndWVzdF9kZWJ1ZxgBIAEoDSI5ChpLdm1Bcm1TZXREcmVnMzJGdHJhY2VFdmVudBIMCgRuYW1lGAEgASgJEg0KBXZhbHVlGAIgASgNIjcKGkt2bUFybVNldFJlZ3NldEZ0cmFjZUV2ZW50EgsKA2xlbhgBIAEoBRIMCgRuYW1lGAIgASgJIkAKG0t2bUFybVNldHVwRGVidWdGdHJhY2VFdmVudBITCgtndWVzdF9kZWJ1ZxgBIAEoDRIMCgR2Y3B1GAIgASgEIiYKE0t2bUVudHJ5RnRyYWNlRXZlbnQSDwoHdmNwdV9wYxgBIAEoBCJCChJLdm1FeGl0RnRyYWNlRXZlbnQSDgoGZXNyX2VjGAEgASgNEgsKA3JldBgCIAEoBRIPCgd2Y3B1X3BjGAMgASgEIiEKEUt2bUZwdUZ0cmFjZUV2ZW50EgwKBGxvYWQYASABKA0ibwoZS3ZtR2V0VGltZXJNYXBGdHJhY2VFdmVudBIVCg1kaXJlY3RfcHRpbWVyGAEgASgFEhUKDWRpcmVjdF92dGltZXIYAiABKAUSEwoLZW11bF9wdGltZXIYAyABKAUSDwoHdmNwdV9pZBgEIAEoBCJUChhLdm1HdWVzdEZhdWx0RnRyYWNlRXZlbnQSCwoDaHNyGAEgASgEEg0KBWh4ZmFyGAIgASgEEgsKA2lwYRgDIAEoBBIPCgd2Y3B1X3BjGAQgASgEIikKGkt2bUhhbmRsZVN5c1JlZ0Z0cmFjZUV2ZW50EgsKA2hzchgBIAEoBCJCChZLdm1IdmNBcm02NEZ0cmFjZUV2ZW50EgsKA2ltbRgBIAEoBBIKCgJyMBgCIAEoBBIPCgd2Y3B1X3BjGAMgASgEIlcKFUt2bUlycUxpbmVGdHJhY2VFdmVudBIPCgdpcnFfbnVtGAEgASgFEg0KBWxldmVsGAIgASgFEgwKBHR5cGUYAyABKA0SEAoIdmNwdV9pZHgYBCABKAUiSQoSS3ZtTW1pb0Z0cmFjZUV2ZW50EgsKA2dwYRgBIAEoBBILCgNsZW4YAiABKA0SDAoEdHlwZRgDIAEoDRILCgN2YWwYBCABKAQiSQoZS3ZtTW1pb0VtdWxhdGVGdHJhY2VFdmVudBIMCgRjcHNyGAEgASgEEg0KBWluc3RyGAIgASgEEg8KB3ZjcHVfcGMYAyABKAQiQAobS3ZtU2V0R3Vlc3REZWJ1Z0Z0cmFjZUV2ZW50EhMKC2d1ZXN0X2RlYnVnGAEgASgNEgwKBHZjcHUYAiABKAQiSQoUS3ZtU2V0SXJxRnRyYWNlRXZlbnQSCwoDZ3NpGAEgASgNEhUKDWlycV9zb3VyY2VfaWQYAiABKAUSDQoFbGV2ZWwYAyABKAUiJwoYS3ZtU2V0U3B0ZUh2YUZ0cmFjZUV2ZW50EgsKA2h2YRgBIAEoBCI7ChlLdm1TZXRXYXlGbHVzaEZ0cmFjZUV2ZW50Eg0KBWNhY2hlGAEgASgNEg8KB3ZjcHVfcGMYAiABKAQiiwEKF0t2bVN5c0FjY2Vzc0Z0cmFjZUV2ZW50EgsKA0NSbRgBIAEoDRILCgNDUm4YAiABKA0SCwoDT3AwGAMgASgNEgsKA09wMRgEIAEoDRILCgNPcDIYBSABKA0SEAoIaXNfd3JpdGUYBiABKA0SDAoEbmFtZRgHIAEoCRIPCgd2Y3B1X3BjGAggASgEIicKGEt2bVRlc3RBZ2VIdmFGdHJhY2VFdmVudBILCgNodmEYASABKAQiRAoaS3ZtVGltZXJFbXVsYXRlRnRyYWNlRXZlbnQSEwoLc2hvdWxkX2ZpcmUYASABKA0SEQoJdGltZXJfaWR4GAIgASgFIjUKIEt2bVRpbWVySHJ0aW1lckV4cGlyZUZ0cmFjZUV2ZW50EhEKCXRpbWVyX2lkeBgBIAEoBSJPCh9Ldm1UaW1lclJlc3RvcmVTdGF0ZUZ0cmFjZUV2ZW50EgsKA2N0bBgBIAEoBBIMCgRjdmFsGAIgASgEEhEKCXRpbWVyX2lkeBgDIAEoBSJMChxLdm1UaW1lclNhdmVTdGF0ZUZ0cmFjZUV2ZW50EgsKA2N0bBgBIAEoBBIMCgRjdmFsGAIgASgEEhEKCXRpbWVyX2lkeBgDIAEoBSJLChxLdm1UaW1lclVwZGF0ZUlycUZ0cmFjZUV2ZW50EgsKA2lycRgBIAEoDRINCgVsZXZlbBgCIAEoBRIPCgd2Y3B1X2lkGAMgASgEIkYKGUt2bVRvZ2dsZUNhY2hlRnRyYWNlRXZlbnQSCwoDbm93GAEgASgNEg8KB3ZjcHVfcGMYAiABKAQSCwoDd2FzGAMgASgNIjkKG0t2bVVubWFwSHZhUmFuZ2VGdHJhY2VFdmVudBILCgNlbmQYASABKAQSDQoFc3RhcnQYAiABKAQiLQobS3ZtVXNlcnNwYWNlRXhpdEZ0cmFjZUV2ZW50Eg4KBnJlYXNvbhgBIAEoDSJFChhLdm1WY3B1V2FrZXVwRnRyYWNlRXZlbnQSCgoCbnMYASABKAQSDQoFdmFsaWQYAiABKA0SDgoGd2FpdGVkGAMgASgNIjkKFkt2bVdmeEFybTY0RnRyYWNlRXZlbnQSDgoGaXNfd2ZlGAEgASgNEg8KB3ZjcHVfcGMYAiABKAQiVAoSVHJhcFJlZ0Z0cmFjZUV2ZW50EgoKAmZuGAEgASgJEhAKCGlzX3dyaXRlGAIgASgNEgsKA3JlZxgDIAEoBRITCgt3cml0ZV92YWx1ZRgEIAEoBCJOCh9WZ2ljVXBkYXRlSXJxUGVuZGluZ0Z0cmFjZUV2ZW50EgsKA2lycRgBIAEoDRINCgVsZXZlbBgCIAEoDRIPCgd2Y3B1X2lkGAMgASgE");

/**
 * @generated from message perfetto.protos.KvmAccessFaultFtraceEvent
 */
export type KvmAccessFaultFtraceEvent = Message<"perfetto.protos.KvmAccessFaultFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 ipa = 1;
   */
  ipa: bigint;
};

/**
 * Describes the message perfetto.protos.KvmAccessFaultFtraceEvent.
 * Use `create(KvmAccessFaultFtraceEventSchema)` to create a new message.
 */
export const KvmAccessFaultFtraceEventSchema: GenMessage<KvmAccessFaultFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 0);

/**
 * @generated from message perfetto.protos.KvmAckIrqFtraceEvent
 */
export type KvmAckIrqFtraceEvent = Message<"perfetto.protos.KvmAckIrqFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 irqchip = 1;
   */
  irqchip: number;

  /**
   * @generated from field: optional uint32 pin = 2;
   */
  pin: number;
};

/**
 * Describes the message perfetto.protos.KvmAckIrqFtraceEvent.
 * Use `create(KvmAckIrqFtraceEventSchema)` to create a new message.
 */
export const KvmAckIrqFtraceEventSchema: GenMessage<KvmAckIrqFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 1);

/**
 * @generated from message perfetto.protos.KvmAgeHvaFtraceEvent
 */
export type KvmAgeHvaFtraceEvent = Message<"perfetto.protos.KvmAgeHvaFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 end = 1;
   */
  end: bigint;

  /**
   * @generated from field: optional uint64 start = 2;
   */
  start: bigint;
};

/**
 * Describes the message perfetto.protos.KvmAgeHvaFtraceEvent.
 * Use `create(KvmAgeHvaFtraceEventSchema)` to create a new message.
 */
export const KvmAgeHvaFtraceEventSchema: GenMessage<KvmAgeHvaFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 2);

/**
 * @generated from message perfetto.protos.KvmAgePageFtraceEvent
 */
export type KvmAgePageFtraceEvent = Message<"perfetto.protos.KvmAgePageFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 gfn = 1;
   */
  gfn: bigint;

  /**
   * @generated from field: optional uint64 hva = 2;
   */
  hva: bigint;

  /**
   * @generated from field: optional uint32 level = 3;
   */
  level: number;

  /**
   * @generated from field: optional uint32 referenced = 4;
   */
  referenced: number;
};

/**
 * Describes the message perfetto.protos.KvmAgePageFtraceEvent.
 * Use `create(KvmAgePageFtraceEventSchema)` to create a new message.
 */
export const KvmAgePageFtraceEventSchema: GenMessage<KvmAgePageFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 3);

/**
 * @generated from message perfetto.protos.KvmArmClearDebugFtraceEvent
 */
export type KvmArmClearDebugFtraceEvent = Message<"perfetto.protos.KvmArmClearDebugFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 guest_debug = 1;
   */
  guestDebug: number;
};

/**
 * Describes the message perfetto.protos.KvmArmClearDebugFtraceEvent.
 * Use `create(KvmArmClearDebugFtraceEventSchema)` to create a new message.
 */
export const KvmArmClearDebugFtraceEventSchema: GenMessage<KvmArmClearDebugFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 4);

/**
 * @generated from message perfetto.protos.KvmArmSetDreg32FtraceEvent
 */
export type KvmArmSetDreg32FtraceEvent = Message<"perfetto.protos.KvmArmSetDreg32FtraceEvent"> & {
  /**
   * @generated from field: optional string name = 1;
   */
  name: string;

  /**
   * @generated from field: optional uint32 value = 2;
   */
  value: number;
};

/**
 * Describes the message perfetto.protos.KvmArmSetDreg32FtraceEvent.
 * Use `create(KvmArmSetDreg32FtraceEventSchema)` to create a new message.
 */
export const KvmArmSetDreg32FtraceEventSchema: GenMessage<KvmArmSetDreg32FtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 5);

/**
 * @generated from message perfetto.protos.KvmArmSetRegsetFtraceEvent
 */
export type KvmArmSetRegsetFtraceEvent = Message<"perfetto.protos.KvmArmSetRegsetFtraceEvent"> & {
  /**
   * @generated from field: optional int32 len = 1;
   */
  len: number;

  /**
   * @generated from field: optional string name = 2;
   */
  name: string;
};

/**
 * Describes the message perfetto.protos.KvmArmSetRegsetFtraceEvent.
 * Use `create(KvmArmSetRegsetFtraceEventSchema)` to create a new message.
 */
export const KvmArmSetRegsetFtraceEventSchema: GenMessage<KvmArmSetRegsetFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 6);

/**
 * @generated from message perfetto.protos.KvmArmSetupDebugFtraceEvent
 */
export type KvmArmSetupDebugFtraceEvent = Message<"perfetto.protos.KvmArmSetupDebugFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 guest_debug = 1;
   */
  guestDebug: number;

  /**
   * @generated from field: optional uint64 vcpu = 2;
   */
  vcpu: bigint;
};

/**
 * Describes the message perfetto.protos.KvmArmSetupDebugFtraceEvent.
 * Use `create(KvmArmSetupDebugFtraceEventSchema)` to create a new message.
 */
export const KvmArmSetupDebugFtraceEventSchema: GenMessage<KvmArmSetupDebugFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 7);

/**
 * @generated from message perfetto.protos.KvmEntryFtraceEvent
 */
export type KvmEntryFtraceEvent = Message<"perfetto.protos.KvmEntryFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 vcpu_pc = 1;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmEntryFtraceEvent.
 * Use `create(KvmEntryFtraceEventSchema)` to create a new message.
 */
export const KvmEntryFtraceEventSchema: GenMessage<KvmEntryFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 8);

/**
 * @generated from message perfetto.protos.KvmExitFtraceEvent
 */
export type KvmExitFtraceEvent = Message<"perfetto.protos.KvmExitFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 esr_ec = 1;
   */
  esrEc: number;

  /**
   * @generated from field: optional int32 ret = 2;
   */
  ret: number;

  /**
   * @generated from field: optional uint64 vcpu_pc = 3;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmExitFtraceEvent.
 * Use `create(KvmExitFtraceEventSchema)` to create a new message.
 */
export const KvmExitFtraceEventSchema: GenMessage<KvmExitFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 9);

/**
 * @generated from message perfetto.protos.KvmFpuFtraceEvent
 */
export type KvmFpuFtraceEvent = Message<"perfetto.protos.KvmFpuFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 load = 1;
   */
  load: number;
};

/**
 * Describes the message perfetto.protos.KvmFpuFtraceEvent.
 * Use `create(KvmFpuFtraceEventSchema)` to create a new message.
 */
export const KvmFpuFtraceEventSchema: GenMessage<KvmFpuFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 10);

/**
 * @generated from message perfetto.protos.KvmGetTimerMapFtraceEvent
 */
export type KvmGetTimerMapFtraceEvent = Message<"perfetto.protos.KvmGetTimerMapFtraceEvent"> & {
  /**
   * @generated from field: optional int32 direct_ptimer = 1;
   */
  directPtimer: number;

  /**
   * @generated from field: optional int32 direct_vtimer = 2;
   */
  directVtimer: number;

  /**
   * @generated from field: optional int32 emul_ptimer = 3;
   */
  emulPtimer: number;

  /**
   * @generated from field: optional uint64 vcpu_id = 4;
   */
  vcpuId: bigint;
};

/**
 * Describes the message perfetto.protos.KvmGetTimerMapFtraceEvent.
 * Use `create(KvmGetTimerMapFtraceEventSchema)` to create a new message.
 */
export const KvmGetTimerMapFtraceEventSchema: GenMessage<KvmGetTimerMapFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 11);

/**
 * @generated from message perfetto.protos.KvmGuestFaultFtraceEvent
 */
export type KvmGuestFaultFtraceEvent = Message<"perfetto.protos.KvmGuestFaultFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 hsr = 1;
   */
  hsr: bigint;

  /**
   * @generated from field: optional uint64 hxfar = 2;
   */
  hxfar: bigint;

  /**
   * @generated from field: optional uint64 ipa = 3;
   */
  ipa: bigint;

  /**
   * @generated from field: optional uint64 vcpu_pc = 4;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmGuestFaultFtraceEvent.
 * Use `create(KvmGuestFaultFtraceEventSchema)` to create a new message.
 */
export const KvmGuestFaultFtraceEventSchema: GenMessage<KvmGuestFaultFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 12);

/**
 * @generated from message perfetto.protos.KvmHandleSysRegFtraceEvent
 */
export type KvmHandleSysRegFtraceEvent = Message<"perfetto.protos.KvmHandleSysRegFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 hsr = 1;
   */
  hsr: bigint;
};

/**
 * Describes the message perfetto.protos.KvmHandleSysRegFtraceEvent.
 * Use `create(KvmHandleSysRegFtraceEventSchema)` to create a new message.
 */
export const KvmHandleSysRegFtraceEventSchema: GenMessage<KvmHandleSysRegFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 13);

/**
 * @generated from message perfetto.protos.KvmHvcArm64FtraceEvent
 */
export type KvmHvcArm64FtraceEvent = Message<"perfetto.protos.KvmHvcArm64FtraceEvent"> & {
  /**
   * @generated from field: optional uint64 imm = 1;
   */
  imm: bigint;

  /**
   * @generated from field: optional uint64 r0 = 2;
   */
  r0: bigint;

  /**
   * @generated from field: optional uint64 vcpu_pc = 3;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmHvcArm64FtraceEvent.
 * Use `create(KvmHvcArm64FtraceEventSchema)` to create a new message.
 */
export const KvmHvcArm64FtraceEventSchema: GenMessage<KvmHvcArm64FtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 14);

/**
 * @generated from message perfetto.protos.KvmIrqLineFtraceEvent
 */
export type KvmIrqLineFtraceEvent = Message<"perfetto.protos.KvmIrqLineFtraceEvent"> & {
  /**
   * @generated from field: optional int32 irq_num = 1;
   */
  irqNum: number;

  /**
   * @generated from field: optional int32 level = 2;
   */
  level: number;

  /**
   * @generated from field: optional uint32 type = 3;
   */
  type: number;

  /**
   * @generated from field: optional int32 vcpu_idx = 4;
   */
  vcpuIdx: number;
};

/**
 * Describes the message perfetto.protos.KvmIrqLineFtraceEvent.
 * Use `create(KvmIrqLineFtraceEventSchema)` to create a new message.
 */
export const KvmIrqLineFtraceEventSchema: GenMessage<KvmIrqLineFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 15);

/**
 * @generated from message perfetto.protos.KvmMmioFtraceEvent
 */
export type KvmMmioFtraceEvent = Message<"perfetto.protos.KvmMmioFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 gpa = 1;
   */
  gpa: bigint;

  /**
   * @generated from field: optional uint32 len = 2;
   */
  len: number;

  /**
   * @generated from field: optional uint32 type = 3;
   */
  type: number;

  /**
   * @generated from field: optional uint64 val = 4;
   */
  val: bigint;
};

/**
 * Describes the message perfetto.protos.KvmMmioFtraceEvent.
 * Use `create(KvmMmioFtraceEventSchema)` to create a new message.
 */
export const KvmMmioFtraceEventSchema: GenMessage<KvmMmioFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 16);

/**
 * @generated from message perfetto.protos.KvmMmioEmulateFtraceEvent
 */
export type KvmMmioEmulateFtraceEvent = Message<"perfetto.protos.KvmMmioEmulateFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 cpsr = 1;
   */
  cpsr: bigint;

  /**
   * @generated from field: optional uint64 instr = 2;
   */
  instr: bigint;

  /**
   * @generated from field: optional uint64 vcpu_pc = 3;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmMmioEmulateFtraceEvent.
 * Use `create(KvmMmioEmulateFtraceEventSchema)` to create a new message.
 */
export const KvmMmioEmulateFtraceEventSchema: GenMessage<KvmMmioEmulateFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 17);

/**
 * @generated from message perfetto.protos.KvmSetGuestDebugFtraceEvent
 */
export type KvmSetGuestDebugFtraceEvent = Message<"perfetto.protos.KvmSetGuestDebugFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 guest_debug = 1;
   */
  guestDebug: number;

  /**
   * @generated from field: optional uint64 vcpu = 2;
   */
  vcpu: bigint;
};

/**
 * Describes the message perfetto.protos.KvmSetGuestDebugFtraceEvent.
 * Use `create(KvmSetGuestDebugFtraceEventSchema)` to create a new message.
 */
export const KvmSetGuestDebugFtraceEventSchema: GenMessage<KvmSetGuestDebugFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 18);

/**
 * @generated from message perfetto.protos.KvmSetIrqFtraceEvent
 */
export type KvmSetIrqFtraceEvent = Message<"perfetto.protos.KvmSetIrqFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 gsi = 1;
   */
  gsi: number;

  /**
   * @generated from field: optional int32 irq_source_id = 2;
   */
  irqSourceId: number;

  /**
   * @generated from field: optional int32 level = 3;
   */
  level: number;
};

/**
 * Describes the message perfetto.protos.KvmSetIrqFtraceEvent.
 * Use `create(KvmSetIrqFtraceEventSchema)` to create a new message.
 */
export const KvmSetIrqFtraceEventSchema: GenMessage<KvmSetIrqFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 19);

/**
 * @generated from message perfetto.protos.KvmSetSpteHvaFtraceEvent
 */
export type KvmSetSpteHvaFtraceEvent = Message<"perfetto.protos.KvmSetSpteHvaFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 hva = 1;
   */
  hva: bigint;
};

/**
 * Describes the message perfetto.protos.KvmSetSpteHvaFtraceEvent.
 * Use `create(KvmSetSpteHvaFtraceEventSchema)` to create a new message.
 */
export const KvmSetSpteHvaFtraceEventSchema: GenMessage<KvmSetSpteHvaFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 20);

/**
 * @generated from message perfetto.protos.KvmSetWayFlushFtraceEvent
 */
export type KvmSetWayFlushFtraceEvent = Message<"perfetto.protos.KvmSetWayFlushFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 cache = 1;
   */
  cache: number;

  /**
   * @generated from field: optional uint64 vcpu_pc = 2;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmSetWayFlushFtraceEvent.
 * Use `create(KvmSetWayFlushFtraceEventSchema)` to create a new message.
 */
export const KvmSetWayFlushFtraceEventSchema: GenMessage<KvmSetWayFlushFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 21);

/**
 * @generated from message perfetto.protos.KvmSysAccessFtraceEvent
 */
export type KvmSysAccessFtraceEvent = Message<"perfetto.protos.KvmSysAccessFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 CRm = 1;
   */
  CRm: number;

  /**
   * @generated from field: optional uint32 CRn = 2;
   */
  CRn: number;

  /**
   * @generated from field: optional uint32 Op0 = 3;
   */
  Op0: number;

  /**
   * @generated from field: optional uint32 Op1 = 4;
   */
  Op1: number;

  /**
   * @generated from field: optional uint32 Op2 = 5;
   */
  Op2: number;

  /**
   * @generated from field: optional uint32 is_write = 6;
   */
  isWrite: number;

  /**
   * @generated from field: optional string name = 7;
   */
  name: string;

  /**
   * @generated from field: optional uint64 vcpu_pc = 8;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmSysAccessFtraceEvent.
 * Use `create(KvmSysAccessFtraceEventSchema)` to create a new message.
 */
export const KvmSysAccessFtraceEventSchema: GenMessage<KvmSysAccessFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 22);

/**
 * @generated from message perfetto.protos.KvmTestAgeHvaFtraceEvent
 */
export type KvmTestAgeHvaFtraceEvent = Message<"perfetto.protos.KvmTestAgeHvaFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 hva = 1;
   */
  hva: bigint;
};

/**
 * Describes the message perfetto.protos.KvmTestAgeHvaFtraceEvent.
 * Use `create(KvmTestAgeHvaFtraceEventSchema)` to create a new message.
 */
export const KvmTestAgeHvaFtraceEventSchema: GenMessage<KvmTestAgeHvaFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 23);

/**
 * @generated from message perfetto.protos.KvmTimerEmulateFtraceEvent
 */
export type KvmTimerEmulateFtraceEvent = Message<"perfetto.protos.KvmTimerEmulateFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 should_fire = 1;
   */
  shouldFire: number;

  /**
   * @generated from field: optional int32 timer_idx = 2;
   */
  timerIdx: number;
};

/**
 * Describes the message perfetto.protos.KvmTimerEmulateFtraceEvent.
 * Use `create(KvmTimerEmulateFtraceEventSchema)` to create a new message.
 */
export const KvmTimerEmulateFtraceEventSchema: GenMessage<KvmTimerEmulateFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 24);

/**
 * @generated from message perfetto.protos.KvmTimerHrtimerExpireFtraceEvent
 */
export type KvmTimerHrtimerExpireFtraceEvent = Message<"perfetto.protos.KvmTimerHrtimerExpireFtraceEvent"> & {
  /**
   * @generated from field: optional int32 timer_idx = 1;
   */
  timerIdx: number;
};

/**
 * Describes the message perfetto.protos.KvmTimerHrtimerExpireFtraceEvent.
 * Use `create(KvmTimerHrtimerExpireFtraceEventSchema)` to create a new message.
 */
export const KvmTimerHrtimerExpireFtraceEventSchema: GenMessage<KvmTimerHrtimerExpireFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 25);

/**
 * @generated from message perfetto.protos.KvmTimerRestoreStateFtraceEvent
 */
export type KvmTimerRestoreStateFtraceEvent = Message<"perfetto.protos.KvmTimerRestoreStateFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 ctl = 1;
   */
  ctl: bigint;

  /**
   * @generated from field: optional uint64 cval = 2;
   */
  cval: bigint;

  /**
   * @generated from field: optional int32 timer_idx = 3;
   */
  timerIdx: number;
};

/**
 * Describes the message perfetto.protos.KvmTimerRestoreStateFtraceEvent.
 * Use `create(KvmTimerRestoreStateFtraceEventSchema)` to create a new message.
 */
export const KvmTimerRestoreStateFtraceEventSchema: GenMessage<KvmTimerRestoreStateFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 26);

/**
 * @generated from message perfetto.protos.KvmTimerSaveStateFtraceEvent
 */
export type KvmTimerSaveStateFtraceEvent = Message<"perfetto.protos.KvmTimerSaveStateFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 ctl = 1;
   */
  ctl: bigint;

  /**
   * @generated from field: optional uint64 cval = 2;
   */
  cval: bigint;

  /**
   * @generated from field: optional int32 timer_idx = 3;
   */
  timerIdx: number;
};

/**
 * Describes the message perfetto.protos.KvmTimerSaveStateFtraceEvent.
 * Use `create(KvmTimerSaveStateFtraceEventSchema)` to create a new message.
 */
export const KvmTimerSaveStateFtraceEventSchema: GenMessage<KvmTimerSaveStateFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 27);

/**
 * @generated from message perfetto.protos.KvmTimerUpdateIrqFtraceEvent
 */
export type KvmTimerUpdateIrqFtraceEvent = Message<"perfetto.protos.KvmTimerUpdateIrqFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 irq = 1;
   */
  irq: number;

  /**
   * @generated from field: optional int32 level = 2;
   */
  level: number;

  /**
   * @generated from field: optional uint64 vcpu_id = 3;
   */
  vcpuId: bigint;
};

/**
 * Describes the message perfetto.protos.KvmTimerUpdateIrqFtraceEvent.
 * Use `create(KvmTimerUpdateIrqFtraceEventSchema)` to create a new message.
 */
export const KvmTimerUpdateIrqFtraceEventSchema: GenMessage<KvmTimerUpdateIrqFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 28);

/**
 * @generated from message perfetto.protos.KvmToggleCacheFtraceEvent
 */
export type KvmToggleCacheFtraceEvent = Message<"perfetto.protos.KvmToggleCacheFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 now = 1;
   */
  now: number;

  /**
   * @generated from field: optional uint64 vcpu_pc = 2;
   */
  vcpuPc: bigint;

  /**
   * @generated from field: optional uint32 was = 3;
   */
  was: number;
};

/**
 * Describes the message perfetto.protos.KvmToggleCacheFtraceEvent.
 * Use `create(KvmToggleCacheFtraceEventSchema)` to create a new message.
 */
export const KvmToggleCacheFtraceEventSchema: GenMessage<KvmToggleCacheFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 29);

/**
 * @generated from message perfetto.protos.KvmUnmapHvaRangeFtraceEvent
 */
export type KvmUnmapHvaRangeFtraceEvent = Message<"perfetto.protos.KvmUnmapHvaRangeFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 end = 1;
   */
  end: bigint;

  /**
   * @generated from field: optional uint64 start = 2;
   */
  start: bigint;
};

/**
 * Describes the message perfetto.protos.KvmUnmapHvaRangeFtraceEvent.
 * Use `create(KvmUnmapHvaRangeFtraceEventSchema)` to create a new message.
 */
export const KvmUnmapHvaRangeFtraceEventSchema: GenMessage<KvmUnmapHvaRangeFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 30);

/**
 * @generated from message perfetto.protos.KvmUserspaceExitFtraceEvent
 */
export type KvmUserspaceExitFtraceEvent = Message<"perfetto.protos.KvmUserspaceExitFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 reason = 1;
   */
  reason: number;
};

/**
 * Describes the message perfetto.protos.KvmUserspaceExitFtraceEvent.
 * Use `create(KvmUserspaceExitFtraceEventSchema)` to create a new message.
 */
export const KvmUserspaceExitFtraceEventSchema: GenMessage<KvmUserspaceExitFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 31);

/**
 * @generated from message perfetto.protos.KvmVcpuWakeupFtraceEvent
 */
export type KvmVcpuWakeupFtraceEvent = Message<"perfetto.protos.KvmVcpuWakeupFtraceEvent"> & {
  /**
   * @generated from field: optional uint64 ns = 1;
   */
  ns: bigint;

  /**
   * @generated from field: optional uint32 valid = 2;
   */
  valid: number;

  /**
   * @generated from field: optional uint32 waited = 3;
   */
  waited: number;
};

/**
 * Describes the message perfetto.protos.KvmVcpuWakeupFtraceEvent.
 * Use `create(KvmVcpuWakeupFtraceEventSchema)` to create a new message.
 */
export const KvmVcpuWakeupFtraceEventSchema: GenMessage<KvmVcpuWakeupFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 32);

/**
 * @generated from message perfetto.protos.KvmWfxArm64FtraceEvent
 */
export type KvmWfxArm64FtraceEvent = Message<"perfetto.protos.KvmWfxArm64FtraceEvent"> & {
  /**
   * @generated from field: optional uint32 is_wfe = 1;
   */
  isWfe: number;

  /**
   * @generated from field: optional uint64 vcpu_pc = 2;
   */
  vcpuPc: bigint;
};

/**
 * Describes the message perfetto.protos.KvmWfxArm64FtraceEvent.
 * Use `create(KvmWfxArm64FtraceEventSchema)` to create a new message.
 */
export const KvmWfxArm64FtraceEventSchema: GenMessage<KvmWfxArm64FtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 33);

/**
 * @generated from message perfetto.protos.TrapRegFtraceEvent
 */
export type TrapRegFtraceEvent = Message<"perfetto.protos.TrapRegFtraceEvent"> & {
  /**
   * @generated from field: optional string fn = 1;
   */
  fn: string;

  /**
   * @generated from field: optional uint32 is_write = 2;
   */
  isWrite: number;

  /**
   * @generated from field: optional int32 reg = 3;
   */
  reg: number;

  /**
   * @generated from field: optional uint64 write_value = 4;
   */
  writeValue: bigint;
};

/**
 * Describes the message perfetto.protos.TrapRegFtraceEvent.
 * Use `create(TrapRegFtraceEventSchema)` to create a new message.
 */
export const TrapRegFtraceEventSchema: GenMessage<TrapRegFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 34);

/**
 * @generated from message perfetto.protos.VgicUpdateIrqPendingFtraceEvent
 */
export type VgicUpdateIrqPendingFtraceEvent = Message<"perfetto.protos.VgicUpdateIrqPendingFtraceEvent"> & {
  /**
   * @generated from field: optional uint32 irq = 1;
   */
  irq: number;

  /**
   * @generated from field: optional uint32 level = 2;
   */
  level: number;

  /**
   * @generated from field: optional uint64 vcpu_id = 3;
   */
  vcpuId: bigint;
};

/**
 * Describes the message perfetto.protos.VgicUpdateIrqPendingFtraceEvent.
 * Use `create(VgicUpdateIrqPendingFtraceEventSchema)` to create a new message.
 */
export const VgicUpdateIrqPendingFtraceEventSchema: GenMessage<VgicUpdateIrqPendingFtraceEvent> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_trace_ftrace_kvm, 35);

