{
  "Header": {
    "Copyright": "Copyright (c) 2022 - 2023 Intel Corporation. All rights reserved.",
    "Info": "TDX TD-Scope Metadata",
    "Version": "2.0"
  },
  "Description": {
    "VM Applicability": "Applicability to VMs (for field arrays where each entry is associated with a VM)",
    "Mutable": {
      "Mutable": "The field value is mutable.",
      "<function names(s)>": "The field becomes immutable (its value doesn't change) after the function executes."
    },
    "Access": {
      "RO": "Read Only",
      "RW": "Read/Write",
      "RWS": "Read/Write (special handling)"
    }
  },
  "Fields": [
    {
      "Control Structure": "TDR",
      "Class": "TD Management",
      "Field Name": "FATAL",
      "Description": [
        "Indicates a fatal error, e.g., #MC during TD operation."
      ],
      "Type": "Boolean",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "False",
      "Field Size (Bytes)": "1",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "1",
      "Base FIELD_ID (Hex)": "0x8010000000000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Management",
      "Field Name": "NUM_TDCX",
      "Description": [
        "Number of TDCX pages that have been added by TDH.MNG.ADDCX"
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x8010000200000002",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Management",
      "Field Name": "CHLDCNT",
      "Description": [
        "The number of 4KB child pages (including opaque control structure pages) associated with this TDR"
      ],
      "Type": "64b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x8010000300000004",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Management",
      "Field Name": "LIFECYCLE_STATE",
      "Description": [
        "The life cycle state of this TD.",
        "LIFECYCLE_STATE values below are provided for debug only; they are subject to change in future TDX module versions:",
        "TD_HKID_ASSIGNED = 0x0",
        "TD_KEYS_CONFIGURED = 0x1",
        "TD_BLOCKED = 0x2",
        "TD_TEARDOWN = 0x3"
      ],
      "Type": "LIFECYCLE_STATE",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "TD_HKID_ASSIGNED",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x8010000200000005",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Management",
      "Field Name": "TDCX_PA",
      "Description": [
        "Physical addresses of the TDCX pages"
      ],
      "Type": "Array of Physical Address",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "N/A",
      "Field Size (Bytes)": "8",
      "Num Fields": "9",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "72",
      "Base FIELD_ID (Hex)": "0x8010000300000010",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Management",
      "Field Name": "TD_UUID",
      "Description": [
        "Universally Unique Identifier of the TD"
      ],
      "Type": "256-bit blob",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.CREATE",
      "Initial Value": "Random",
      "Field Size (Bytes)": "32",
      "Num Fields": "1",
      "Num Elements": "4",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x8010000300000020",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "Key Management",
      "Field Name": "HKID",
      "Description": [
        "Private HKID"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.CREATE",
      "Initial Value": "From TDH.MNG.CREATE input",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x8110000100000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "Key Management",
      "Field Name": "PKG_CONFIG_BITMAP",
      "Description": [
        "Bitmap that indicates on which package TDH.MNG.KEY.CONFIG was executed successfully using this private key entry"
      ],
      "Type": "Bitmap",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x8110000300000002",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Preserving",
      "Field Name": "HANDOFF_VERSION",
      "Description": [
        "The handoff version to which this TD is committed"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "MODULE_HV ",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x8210000100000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDR",
      "Class": "TD Preserving",
      "Field Name": "SEAMDB_INDEX",
      "Description": [
        "The index of the SEAMDB entry that holds the TDX module\u2019s TCB at TD creation time."
      ],
      "Type": "64b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.CREATE",
      "Initial Value": "From SEAMDB_GETREF",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x8210000300000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "TD Management",
      "Field Name": "NUM_VCPUS",
      "Description": [
        "The number of VCPU that have been successfully initialized (by TDH.VP.INIT) or imported (by TDH.IMPORT.STATE.VP)"
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9010000200000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "TD Management",
      "Field Name": "NUM_ASSOC_VCPUS",
      "Description": [
        "The number of VCPUS associated with LPs \u2013 i.e., the LPs might hold TLB translations and/or cached TD VMCS"
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9010000200000002",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "TD Management",
      "Field Name": "OP_STATE",
      "Description": [
        "The operation state (sub-state of life cycle TD_KEYS_CONFIGURED state) of this TD.",
        "OP_STATE values below are provided for debug only; they are subject to change in future TDX module releases:",
        "UNINITIALIZED = 0",
        "INITIALIZED   = 1",
        "RUNNABLE      = 2",
        "LIVE_EXPORT   = 3",
        "PAUSED_EXPORT = 4",
        "POST_EXPORT   = 5",
        "MEMORY_IMPORT = 6",
        "STATE_IMPORT  = 7",
        "POST_IMPORT   = 8",
        "LIVE_IMPORT   = 9",
        "FAILED_IMPORT = 10"
      ],
      "Type": "OP_STATE",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "UNALLOCATED",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9010000200000004",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "TD Management",
      "Field Name": "NUM_L2_VMS",
      "Description": [
        "Number of L2 VMs"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x9010000100000005",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "ATTRIBUTES",
      "Description": [
        "TD attributes"
      ],
      "Type": "ATTRIBUTES",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x1110000300000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "XFAM",
      "Description": [
        "Extended Features Available Mask:  indicates the extended user and system features which are available for the TD.",
        "Copied to each TDVPS on TDH.VP.INIT."
      ],
      "Type": "XCR0",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x1110000300000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "MAX_VCPUS",
      "Description": [
        "Maximum number of VCPUs"
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x1110000200000002",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "GPAW",
      "Description": [
        "This bit has the same meaning as the VMCS GPAW execution control:",
        "0:  GPA.SHARED bit is GPA[47]",
        "1:  GPA.SHARED bit is GPA[51]"
      ],
      "Type": "Boolean",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "1",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "1",
      "Base FIELD_ID (Hex)": "0x1110000000000003",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "EPTP",
      "Description": [
        "TD-scope Secure EPT pointer:  format is the same as the VMCS EPTP execution control; copied to each TD VMCS EPTP on TDH.VP.INIT"
      ],
      "Type": "EPTP",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x1110000300000004",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0xFFF0000000000FFF",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "TSC_OFFSET",
      "Description": [
        "TD-scope TSC offset execution control:  copied to each TD VMCS TSC-offset execution control on TDH.VP.INIT"
      ],
      "Type": "64b unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TSC_. FREQUENCY and rdtsc",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x111000030000000A",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "TSC_MULTIPLIER",
      "Description": [
        "TD-scope TSC multiplier execution control:  copied to each TD VMCS TSC-multiplier execution control on TDH.VP.INIT"
      ],
      "Type": "64b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TSC_. FREQUENCY",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x111000030000000B",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "TSC_FREQUENCY",
      "Description": [
        "Virtual TSC frequency \u2013 in units of 25MHz"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x111000010000000C",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "NUM_CPUID_VALUES",
      "Description": [
        "Number of valid fields in CPUID_VALUES"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x911000010000000E",
      "Host VMM Access for a Production TD": "ROS",
      "Host VMM Access for a Debug TD": "ROS",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "XBUFF_SIZE",
      "Description": [
        "  "
      ],
      "Type": "Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From CPUID and XFAM",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x911000020000000F",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "NOTIFY_ENABLES",
      "Description": [
        "Enable guest notification of events:",
        "Bit 0:          Notify when Zero Step attack is suspected",
        "Bits 63:1:  Reserved, must be 0"
      ],
      "Type": "Bitmap",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9110000300000010",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RW",
      "Guest Access": "RW",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0x0000000000000001",
      "Guest Rd Mask": "0x0000000000000001",
      "Guest Wr Mask": "0x0000000000000001",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "HP_LOCK_TIMEOUT",
      "Description": [
        "Host priority timeout value, in usec (internally, stored in TSC tick units)"
      ],
      "Type": "Unsigned 32b integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "1 sec",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9110000300000011",
      "Host VMM Access for a Production TD": "RWS",
      "Host VMM Access for a Debug TD": "RWS",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "-1",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "-1",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "VM_CTLS",
      "Description": [
        "An array of 4 per-VM controls:",
        "Bit 0:     If set, a TDCALL flow that encounters",
        "           an L2 SEPT walk error due to a",
        "           missing SEPT page causes a TD exit",
        "           with an EPT violation exit reason. ",
        "           Else, it returns an error code to the",
        "           guest.",
        "           Applies only to L2 SEPTs.",
        "Bits 63:1: Reserved, must be 0"
      ],
      "Type": "Array of 64-bit bitmaps",
      "VM Applicability": "L2_ONLY",
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "4",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x9110000300000012",
      "Host VMM Access for a Production TD": "RW",
      "Host VMM Access for a Debug TD": "RW",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0x0000000000000001",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0x0000000000000001",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "CONFIG_FLAGS",
      "Description": [
        "Non-attested TD configuration flags"
      ],
      "Type": "64b bitmap",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9110000300000016",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "TD_CTLS",
      "Description": [
        "A bitmap of TD controls that may be modified during TD run time (see [ABI Spec] for details)"
      ],
      "Type": "64b bitmap",
      "VM Applicability": "L1_ONLY",
      "Mutability": "Mutable",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9110000300000017",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RWS",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0x800000000000000F",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "VIRT_MAXPA",
      "Description": [
        "Virtual MAXPA",
        "A value of 0 is special; it indicates a virtual MAXPA of 52"
      ],
      "Type": "Unsigned 8-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "Calculated based CPUID(0x80000008).EAX[7:0] configuration",
      "Field Size (Bytes)": "1",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "1",
      "Base FIELD_ID (Hex)": "0x9110000000000018",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "TOPOLOGY_ENUM_CONFIGURED",
      "Description": [
        "Indicates whether virtual topology enumeration has been successfully configured"
      ],
      "Type": "Boolean",
      "VM Applicability": null,
      "Mutability": "TDH.VP.INIT/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "True, may be cleared  during VCPU initializations",
      "Field Size (Bytes)": "1",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "1",
      "Base FIELD_ID (Hex)": "0x9110000000000019",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "VE_REDUCTION_VALID",
      "Description": [
        "Indicates whether #VE reduction has been successfully configured"
      ],
      "Type": "Boolean",
      "VM Applicability": null,
      "Mutability": "TDH.VP.INIT/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "True, may be cleared  during VCPU initializations",
      "Field Size (Bytes)": "1",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "1",
      "Base FIELD_ID (Hex)": "0x911000000000001A",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "CPUID_VALID",
      "Description": [
        "Non-architectural - an array of boolean flag, indicating the validity of CPUID_VALUES.  Indexed by the internal CPUID lookup table indexing."
      ],
      "Type": "Array of boolean",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "Set to 1 when setting or importing a CPUID_VALUE entry.",
      "Field Size (Bytes)": "1",
      "Num Fields": "80",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "80",
      "Base FIELD_ID (Hex)": "0x9110000000000080",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "XBUFF_OFFSETS",
      "Description": [
        "XSAVE buffer components offsets \u2013 calculated by TDH.MNG.INIT based on XFAM"
      ],
      "Type": "Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From CPUID and XFAM",
      "Field Size (Bytes)": "4",
      "Num Fields": "19",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "76",
      "Base FIELD_ID (Hex)": "0x9110000200000800",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "CPUID_FIXED0_BITMAP",
      "Description": [
        "Bitmap of CPUID leaves which return fixed-0 values.  See the [ABI Spec] for details"
      ],
      "Type": "64-bit bitmap",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From lookup table",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9110000300000021",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "CPUID4_NATIVE_VALUES",
      "Description": [
        "Native values of CPUID(4) sub-leaves 0 through 3 at the time of TD initialization"
      ],
      "Type": "Array of CPUID_VALUES",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From CPUID(4)",
      "Field Size (Bytes)": "16",
      "Num Fields": "4",
      "Num Elements": "4",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "64",
      "Base FIELD_ID (Hex)": "0x9110000200000200",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "FEATURE_PARAVIRT_CTLS",
      "Description": [
        "Guest TD fine-granined control of CPU feaures paravirtualization.  See the [ABI Spec] for details"
      ],
      "Type": "64-bit bitmap",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "All-0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9110000300000022",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RWS",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0x00000FFF",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Execution Controls",
      "Field Name": "FILTERED_EVENTS_COUNT",
      "Description": [
        "Counter of the number of times a Perfmon event setting by the guest TD has been filtered out"
      ],
      "Type": "64-bit unsigned integer",
      "VM Applicability": "L1_AND_L2",
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "4",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x9110000300000023",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "TLB Epoch Tracking",
      "Field Name": "TD_EPOCH",
      "Description": [
        "The TD epoch counter:  incremented by the host VMM using the TDH.MEM.TRACK function"
      ],
      "Type": "64b Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "1",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9210000300000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "TLB Epoch Tracking",
      "Field Name": "REFCOUNT",
      "Description": [
        "Each REFCOUNT counts the number of LPs which may have TLB entries created during a specific TD_EPOCH and are currently executing in TDX non-root mode."
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "2",
      "Num Fields": "2",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9210000100000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Measurement",
      "Field Name": "MRTD",
      "Description": [
        "Measurement of the initial contents of the TD"
      ],
      "Type": "SHA384_HASH",
      "VM Applicability": null,
      "Mutability": "TDH.MR.FINALIZE/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "48",
      "Num Fields": "1",
      "Num Elements": "6",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "48",
      "Base FIELD_ID (Hex)": "0x1310000300000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Measurement",
      "Field Name": "MRCONFIGID",
      "Description": [
        "Software-defined ID for non-owner-defined configuration of the guest TD \u2013 e.g., run-time or OS configuration"
      ],
      "Type": "SHA384_HASH",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "48",
      "Num Fields": "1",
      "Num Elements": "6",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "48",
      "Base FIELD_ID (Hex)": "0x1310000300000010",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Measurement",
      "Field Name": "MROWNER",
      "Description": [
        "Software-defined ID for the guest TD\u2019s owner"
      ],
      "Type": "SHA384_HASH",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "48",
      "Num Fields": "1",
      "Num Elements": "6",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "48",
      "Base FIELD_ID (Hex)": "0x1310000300000018",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Measurement",
      "Field Name": "MROWNERCONFIG",
      "Description": [
        "Software-defined ID for owner-defined configuration of the guest TD \u2013 e.g., specific to the workload rather than the run-time or OS"
      ],
      "Type": "SHA384_HASH",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "48",
      "Num Fields": "1",
      "Num Elements": "6",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "48",
      "Base FIELD_ID (Hex)": "0x1310000300000020",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Measurement",
      "Field Name": "RTMR",
      "Description": [
        "Array of NUM_RTMRS  run-time extendable measurement registers"
      ],
      "Type": "Array of SHA384_HASH",
      "VM Applicability": null,
      "Mutability": "TDH.MR.FINALIZE/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "48",
      "Num Fields": "4",
      "Num Elements": "6",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "192",
      "Base FIELD_ID (Hex)": "0x1310000300000040",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_BASIC",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000480",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_MISC",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000485",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_CR0_FIXED0",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000486",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_CR0_FIXED1",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000487",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_CR4_FIXED0",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000488",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_CR4_FIXED1",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000489",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_PROCBASED_CTLS2",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x961000030000048B",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_EPT_VPID_CAP",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x961000030000048C",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_TRUE_PINBASED_CTLS",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x961000030000048D",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_TRUE_PROCBASED_CTLS",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x961000030000048E",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_TRUE_EXIT_CTLS",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x961000030000048F",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_TRUE_ENTRY_CTLS",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000490",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_VMFUNC",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000491",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_PROCBASED_CTLS3",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000492",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_VMX_EXIT_CTLS2",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9610000300000493",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Virt. MSR Values",
      "Field Name": "VIRTUAL_IA32_ARCH_CAPABILITIES",
      "Description": [
        "Virtual value of MSR"
      ],
      "Type": "64-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "None",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x961000030000010A",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "CPUID",
      "Field Name": "CPUID_VALUES",
      "Description": [
        "Values returned by CPUID leaves/sub-leaves:",
        "Element 0[31:0]:   EAX",
        "Element 0[63:32]:  EBX",
        "Element 1[31:0]:   ECX",
        "Element 1[63:32]:  EDX",
        "Field code is composed as follows:",
        "Bits 31:17 Reserved, must be 0",
        "Bit 16     Leaf number bit 31",
        "Bits 15:9  Leaf number bit 6:0",
        "Bit 8      Sub-leaf not applicable flag",
        "Bits 7:1   Sub-leaf number bits 6:0",
        "Bit 0      Element index within field"
      ],
      "Type": "CPUID_RET",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "From TDH.MNG.INIT input",
      "Field Size (Bytes)": "16",
      "Num Fields": "80",
      "Num Elements": "2",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "1280",
      "Base FIELD_ID (Hex)": "0x9410000300000000",
      "Host VMM Access for a Production TD": "ROS",
      "Host VMM Access for a Debug TD": "ROS",
      "Guest Access": "None",
      "Migration TD Access": "ROS",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_DEC_KEY_SET",
      "Description": [
        "Set when a new MIG_DEC_KEY is written, cleared when the MIG_DEC_KEY is copied to MIG_DEC_WORKING_KEY"
      ],
      "Type": "Boolean",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "False",
      "Field Size (Bytes)": "1",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "1",
      "Overall Size (Bytes)": "1",
      "Base FIELD_ID (Hex)": "0x9810000000000001",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "EXPORT_COUNT",
      "Description": [
        "Counts the number of times this TD has been exported, included aborted export sessions.",
        "Incremented at the beginning of each export session (TDH.EPORT.STATE.IMMUTABLE)."
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "TDH.EXPORT.STATE.IMMUTABLE/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9810000200000002",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "IMPORT_COUNT",
      "Description": [
        "Counts the number of times this TD has been imported.",
        "Incremented by TDH.IMPORT.COMMIT."
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9810000200000003",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_EPOCH",
      "Description": [
        "Migration epoch",
        "Starts from 0 on migration session start, incremented by 1 on each epoch token.",
        "A value of 0xFFFFFFFF indicates out-of-order phase."
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9810000200000004",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "BW_EPOCH",
      "Description": [
        "Blocking-for-write epoch",
        "Holds the value of TD_EPOCH at last time TDH.EXPORT.BLOCKW blocked a page for writing."
      ],
      "Type": "64b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9810000300000005",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "TOTAL_MB_COUNT",
      "Description": [
        "The total number of migration bundles exported or imported during the current migration sessions"
      ],
      "Type": "Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9810000300000006",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_DEC_KEY",
      "Description": [
        "Migration decryption key, as written by the Migration TD",
        "Special write behaviour:",
        "- Acquire a shared lock on TDCS.OP_STATE to prevent",
        "   concurrent migration session start.",
        "- Set MIG_DEC_KEY_SET"
      ],
      "Type": "KEY_256",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "32",
      "Num Fields": "1",
      "Num Elements": "4",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x9810000300000010",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RWS",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "-1"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_DEC_WORKING_KEY",
      "Description": [
        "Migration decryption working key",
        "Copied from MIG_DEC_KEY at the beginning of a migration session and used throughout the session."
      ],
      "Type": "KEY_256",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "32",
      "Num Fields": "1",
      "Num Elements": "4",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x9810000300000014",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_ENC_KEY",
      "Description": [
        "Migration encryption key",
        "This key is first generated by the TDX module on TDH.MNG.ADDCX, and is re-generated at the beginning of each migration session (TDH.EXPORT/IMPORT.STATE.IMMUTABLE) for use in a following session."
      ],
      "Type": "KEY_256",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "Random",
      "Field Size (Bytes)": "32",
      "Num Fields": "1",
      "Num Elements": "4",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x9810000300000018",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "ROS",
      "Guest Access": "None",
      "Migration TD Access": "ROS",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_ENC_WORKING_KEY",
      "Description": [
        "Migration encryption working key",
        "Copied from MIG_ENC_KEY at the beginning of a migration session (before a new MIG_ENC_KEY is generated) and used throughout the session."
      ],
      "Type": "None",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "32",
      "Num Fields": "1",
      "Num Elements": "4",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x981000030000001C",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_VERSION",
      "Description": [
        "Migration protocol version, as written by the migration TD"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x9810000100000020",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RWS",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "-1"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_WORKING_VERSION",
      "Description": [
        "Migration working protocol version, copied from MIG_VERSION at the beginning of a migration session and used throughout the session"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x9810000100000021",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "DIRTY_COUNT",
      "Description": [
        "Counts of the number of pages that must be re-exported, because their contents have been modified since they have been exported, before a start token may be generated"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9810000300000030",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "MIG_COUNT",
      "Description": [
        "Counts the number of SEPT entries that need to be cleaned up after an aborted migration"
      ],
      "Type": "64b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "8",
      "Base FIELD_ID (Hex)": "0x9810000300000031",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "NUM_MIGS",
      "Description": [
        "Number of Migration Stream Context (MIGSC) pages that have been allocated (including the backward and forward MIGSC pages)"
      ],
      "Type": "16b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x9810000100000032",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "NUM_MIGRATED_VCPUS",
      "Description": [
        "Number of VCPUs that have been migrated"
      ],
      "Type": "32b Unsigned Integer",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "4",
      "Base FIELD_ID (Hex)": "0x9810000200000034",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Migration",
      "Field Name": "PRE_IMPORT_UUID",
      "Description": [
        "The original value of TD_UUID before it was overwritten as part of the immutable state import"
      ],
      "Type": "256-bit blob",
      "VM Applicability": null,
      "Mutability": "TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "32",
      "Num Fields": "1",
      "Num Elements": "4",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "32",
      "Base FIELD_ID (Hex)": "0x9810000300000040",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Service TD",
      "Field Name": "SERVTD_HASH",
      "Description": [
        "SHA384 hash of the bound or pre-bound service TDs"
      ],
      "Type": "SHA384_HASH",
      "VM Applicability": null,
      "Mutability": "TDH.MR.FINALIZE/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "48",
      "Num Fields": "1",
      "Num Elements": "6",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "48",
      "Base FIELD_ID (Hex)": "0x9910000300000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Service TD",
      "Field Name": "SERVTD_NUM",
      "Description": [
        "Number of bound or pre-bound service TDs"
      ],
      "Type": "16-bit unsigned integer",
      "VM Applicability": null,
      "Mutability": "TDH.MR.FINALIZE/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "2",
      "Num Fields": "1",
      "Num Elements": "1",
      "Element Size (Bytes)": "2",
      "Overall Size (Bytes)": "2",
      "Base FIELD_ID (Hex)": "0x9910000100000006",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Service TD",
      "Field Name": "SERVTD_BINDINGS_TABLE",
      "Description": [
        "An array of service TD binding information entries"
      ],
      "Type": "Array of SERVTD_BINDING entries",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "128",
      "Num Fields": "1",
      "Num Elements": "16",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "128",
      "Base FIELD_ID (Hex)": "0x9910000300000080",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "RO",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "-1",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "X2APIC_IDS",
      "Field Name": "X2APIC_IDS",
      "Description": [
        "Array of per-VCPU unique virtual x2APIC IDs"
      ],
      "Type": "32-bit integer",
      "VM Applicability": null,
      "Mutability": "TDH.VP.INIT/ TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "0",
      "Field Size (Bytes)": "4",
      "Num Fields": "576",
      "Num Elements": "1",
      "Element Size (Bytes)": "4",
      "Overall Size (Bytes)": "2304",
      "Base FIELD_ID (Hex)": "0x9C10000200000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "RO",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "-1",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "MSR Bitmaps",
      "Field Name": "MSR_BITMAPS",
      "Description": [
        "TD-scope RDMSR/WRMSR exit control bitmaps"
      ],
      "Type": "MSR Exit Bitmaps",
      "VM Applicability": null,
      "Mutability": "TDH.MNG.INIT/  TDH.IMPORT.STATE.IMMUTABLE",
      "Initial Value": "See MSR Handling spreadsheet",
      "Field Size (Bytes)": "8",
      "Num Fields": "512",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "4096",
      "Base FIELD_ID (Hex)": "0x2010000300000000",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "Secure EPT Root",
      "Field Name": "SEPT_ROOT",
      "Description": [
        "Secure EPT root page (PML5 or PML4)"
      ],
      "Type": "Secure EPT Entry",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "All entries:  bit 63 set, other bits clear",
      "Field Size (Bytes)": "8",
      "Num Fields": "512",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "4096",
      "Base FIELD_ID (Hex)": "0x2110000300000000",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "MIGSC Links",
      "Field Name": "MIGSC_LINKS",
      "Description": [
        "An array of links to Migration Stream Contexts.",
        "- Entry 0 is for the backward migration stream.",
        "- Entry [i + 1] is for forward migration stream i.",
        "Each entry contains the following information:",
        "Bit 51:12:  MIGSC_HPA:",
        "            Bits 52:12 of the MIGSC page HPA",
        "            (without the HKID bits)",
        "Bit 0:      LOCK:",
        "            Mutex for controlling access to the",
        "            MIGSC",
        "Bit 1:      INITIALIZED:",
        "            A boolean flag, indicating that the",
        "            MIGSC has been initialized.",
        "Bit 2:      ENABLED:",
        "            A boolean flag, indicating that the",
        "            MIGS  is enabled",
        "The flags are held here, not in the MIGSC itself, to enable efficient state-related operations on all migration streams, e.g., disabling all streams."
      ],
      "Type": "MIGSC_LINK",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "512",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "4096",
      "Base FIELD_ID (Hex)": "0x9A10000300000000",
      "Host VMM Access for a Production TD": "RO",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "-1",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "L2 Secure EPT Root [1]",
      "Field Name": "L2_SEPT_ROOT_1",
      "Description": [
        "L2 VM's Secure EPT root page (PML5 or PML4)"
      ],
      "Type": "Secure EPT Entry",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "512",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "4096",
      "Base FIELD_ID (Hex)": "0x2510000300000000",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "L2 Secure EPT Root [2]",
      "Field Name": "L2_SEPT_ROOT_2",
      "Description": [
        "L2 VM's Secure EPT root page (PML5 or PML4)"
      ],
      "Type": "Secure EPT Entry",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "512",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "4096",
      "Base FIELD_ID (Hex)": "0x2910000300000000",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    },
    {
      "Control Structure": "TDCS",
      "Class": "L2 Secure EPT Root [3]",
      "Field Name": "L2_SEPT_ROOT_3",
      "Description": [
        "L2 VM's Secure EPT root page (PML5 or PML4)"
      ],
      "Type": "Secure EPT Entry",
      "VM Applicability": null,
      "Mutability": "Mutable",
      "Initial Value": "0",
      "Field Size (Bytes)": "8",
      "Num Fields": "512",
      "Num Elements": "1",
      "Element Size (Bytes)": "8",
      "Overall Size (Bytes)": "4096",
      "Base FIELD_ID (Hex)": "0x2D10000300000000",
      "Host VMM Access for a Production TD": "None",
      "Host VMM Access for a Debug TD": "RO",
      "Guest Access": "None",
      "Migration TD Access": "None",
      "Host VMM Rd Mask for a Production TD ": "0",
      "Host VMM Wr Mask for a Production TD ": "0",
      "Host VMM Rd Mask for a Debug TD ": "-1",
      "Host VMM Wr Mask for a Debug TD ": "0",
      "Guest Rd Mask": "0",
      "Guest Wr Mask": "0",
      "Migration TD Rd Mask": "0",
      "Migration TD wr Mask": "0"
    }
  ]
}