VirtualBox

Changeset 101035 in vbox for trunk/src/VBox/Main/idl


Ignore:
Timestamp:
Sep 7, 2023 8:59:15 AM (17 months ago)
Author:
vboxsync
Message:

Initial commit (based draft v2 / on patch v5) for implementing platform architecture support for x86 and ARM. bugref:10384

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/idl/VirtualBox.xidl

    r100807 r101035  
    297297<application
    298298  name="VirtualBox"
    299   uuid="819B4D85-9CEE-493C-B6FC-64FFE759B3C9"
     299  uuid="a89ce63a-c7c9-4380-a62a-ffb9052ddb37"
    300300  supportsErrorInfo="yes"
    301301>
     
    464464  </result>
    465465
     466  <result name="VBOX_E_PLATFORM_ARCH_NOT_SUPPORTED" value="0x80BB0012">
     467    <desc>
     468      Platform architecture is not supported.
     469    </desc>
     470  </result>
     471
    466472  <!--
    467473    Note that src/VBox/Runtime/common/err/errmsgvboxcom.xsl will ignore
     
    479485  <enum
    480486    name="SettingsVersion"
    481     uuid="b4cc23c2-96f2-419d-830b-bd13c1135dfb"
     487    uuid="6ad3da60-5ed2-49cd-b882-96a72308ebf6"
    482488    >
    483489    <desc>
     
    629635      -->
    630636    </const>
     637    <const name="v1_20" value="22">
     638      <desc>Settings version "1.20", written by VirtualBox 7.1.x.</desc>
     639      <!--
     640          Adds VM platform support: Non-platform-specific
     641          settings were moved to the new Platform element, which now contains
     642          the platform architecture for this VM. x86-specific
     643          settings were moved from Machine to a new, dedicated Platform/x86 element.
     644          BIOSSettings were renamed to FirmwareSettings.
     645      -->
     646    </const>
    631647    <const name="Future" value="99999">
    632       <desc>Settings version greater than "1.19", written by a future VirtualBox version.</desc>
     648      <desc>Settings version greater than "1.20", written by a future VirtualBox version.</desc>
    633649    </const>
    634650  </enum>
     
    10141030
    10151031  <enum
     1032    name="PlatformArchitecture"
     1033    uuid="36e21926-1713-413d-8cf5-2f169b2cbcf3"
     1034    >
     1035    <desc>
     1036      Platform architecture.
     1037      <note>
     1038        <para>This does not specify the CPU type.
     1039          See <link to="CPUArchitecture"/> for more information.</para>
     1040      </note>
     1041    </desc>
     1042    <const name="None" value="0">
     1043      <desc>No platform selected. Never used by the API.</desc>
     1044    </const>
     1045    <const name="x86"  value="1">
     1046      <desc>
     1047        x86-based platform (AMD64 / x86).
     1048        Valid CPUArchitecture choices: <link to="CPUArchitecture_AMD64"/>, <link to="CPUArchitecture_x86"/>
     1049      </desc>
     1050    </const>
     1051    <const name="ARM"  value="2">
     1052      <desc>
     1053        ARM-based platform (AArch32, AArch64).
     1054        Valid CPUArchitecture choices: <link to="CPUArchitecture_ARMv8_32"/>, <link to="CPUArchitecture_ARMv8_64"/>
     1055      </desc>
     1056    </const>
     1057  </enum>
     1058
     1059  <enum
    10161060    name="CPUArchitecture"
    1017     uuid="4a2c9915-12f1-43b2-bb84-e4bd4d5ca227"
     1061    uuid="12906c63-9967-49c8-ba5a-6521adaf0185"
    10181062    >
    10191063    <desc>Basic CPU architecture types.</desc>
     
    10271071      <desc>64-bit x86.  (Also known as x86-64 or x64.)</desc>
    10281072    </const>
     1073    <const name="ARMv8_32"            value="3">
     1074      <desc>32-bit only ARMv8. (Also known as AArch32 or ARM32.)</desc>
     1075    </const>
     1076    <const name="ARMv8_64"            value="4">
     1077      <desc>64-bit only ARMv8. (Also known as AArch64 or ARM64.)</desc>
     1078    </const>
    10291079  </enum>
    10301080
    10311081  <enum
    1032     name="CPUPropertyType"
    1033     uuid="3fcfe589-ca66-468f-e313-656f9d0b2eb6"
    1034     >
    1035     <desc>
    1036       Virtual CPU property type. This enumeration represents possible values of the
    1037       IMachine get- and setCPUProperty methods.
     1082    name="CPUPropertyTypeX86"
     1083    uuid="a754b765-3687-4a68-abb9-78dcf4c07d5f"
     1084    >
     1085    <desc>
     1086      Virtual CPU property type for x86-based CPUs. This enumeration represents possible values of the
     1087      IPlatformX86 get- and setCPUProperty methods.
    10381088    </desc>
    10391089    <const name="Null"                  value="0">
     
    11441194  </enum>
    11451195
    1146 
    11471196  <enum
    11481197    name="HWVirtExPropertyType"
     
    11511200    <desc>
    11521201      Hardware virtualization property type. This enumeration represents possible values
    1153       for the <link to="IMachine::getHWVirtExProperty"/> and
    1154       <link to="IMachine::setHWVirtExProperty"/> methods.
     1202      for the <link to="IPlatformX86::getHWVirtExProperty"/> and
     1203      <link to="IPlatformX86::setHWVirtExProperty"/> methods.
    11551204    </desc>
    11561205    <const name="Null"                  value="0">
     
    13901439
    13911440  <enum
    1392     name="BIOSBootMenuMode"
    1393     uuid="ae4fb9f7-29d2-45b4-b2c7-d579603135d5"
     1441    name="FirmwareBootMenuMode"
     1442    uuid="bf88ec90-7fbb-4c78-bd71-5f8751d71450"
    13941443    >
    13951444    <desc>
     
    14411490    </desc>
    14421491    <const name="BIOS"              value="1">
    1443       <desc>BIOS Firmware.</desc>
     1492      <desc>BIOS Firmware. Only applicable to x86 platforms.</desc>
    14441493    </const>
    14451494    <const name="EFI"               value="2">
     
    26522701  <interface
    26532702    name="IVirtualBox" extends="$unknown"
    2654     uuid="7682d5eb-f00e-44f1-8ca2-99d08b1cd607"
     2703    uuid="0f22e6d1-07f5-4168-b3ef-167c57670c17"
    26552704    wsmap="managed"
    26562705    rest="managed"
     
    29502999    </method>
    29513000
     3001    <method name="getPlatformProperties">
     3002      <rest name="getPlatformProperties" request="get" path="/platform/properties"/>
     3003      <desc>
     3004        Gets the associated properties object for the given VM platform architecture.
     3005      </desc>
     3006      <param name="architecture" type="PlatformArchitecture" dir="in">
     3007        <desc>
     3008          The platform architecture to return the platform properties for.
     3009        </desc>
     3010      </param>
     3011      <param name="properties" type="IPlatformProperties" dir="return">
     3012        <desc>
     3013          Returned platform properties.
     3014        </desc>
     3015      </param>
     3016    </method>
     3017
    29523018    <method name="createMachine">
    29533019      <rest name="create" request="post" path="/vms/"/>
     
    30333099      <param name="name" type="wstring" dir="in">
    30343100        <desc>Machine name.</desc>
     3101      </param>
     3102      <param name="platform" type="PlatformArchitecture" dir="in">
     3103        <desc>The platform architecture for the new VM.</desc>
    30353104      </param>
    30363105      <param name="groups" type="wstring" safearray="yes" dir="in">
     
    56285697
    56295698  <interface
    5630     name="IBIOSSettings" extends="$unknown"
    5631     uuid="a0a7f210-b857-4468-be26-c29f36a84345"
     5699    name="IFirmwareSettings" extends="$unknown"
     5700    uuid="7831C899-DF5D-456A-A37B-0D4EC05D54D0"
    56325701    wsmap="managed"
    56335702    rest="managed"
     
    56355704    >
    56365705    <desc>
    5637         The IBIOSSettings interface represents BIOS settings of the virtual
    5638         machine. This is used only in the <link to="IMachine::BIOSSettings" /> attribute.
    5639     </desc>
     5706        The IFirmwareSettings interface represents firmware settings of the virtual
     5707        machine. This is used only in the <link to="IMachine::firmwareSettings" /> attribute.
     5708    </desc>
     5709
     5710    <attribute name="firmwareType" type="FirmwareType">
     5711      <desc>Type of firmware (such as legacy BIOS or EFI), used for initial
     5712        bootstrap in this VM.</desc>
     5713    </attribute>
     5714
    56405715    <attribute name="logoFadeIn" type="boolean">
    56415716      <desc>Fade in flag for BIOS logo animation.</desc>
     
    56575732    </attribute>
    56585733
    5659     <attribute name="bootMenuMode" type="BIOSBootMenuMode">
    5660       <desc>Mode of the BIOS boot device menu.</desc>
     5734    <attribute name="bootMenuMode" type="FirmwareBootMenuMode">
     5735      <desc>Mode of the firmware boot device menu.</desc>
    56615736    </attribute>
    56625737
     
    66986773    <desc>
    66996774      The IOMMU type. This enumeration represents possible
    6700       values for the <link to="IMachine::iommuType"/> attribute.
     6775      values for the <link to="IPlatform::iommuType"/> attribute.
    67016776    </desc>
    67026777    <const name="None"      value="0">
     
    67156790
    67166791  <interface
     6792    name="IPlatform" extends="$unknown"
     6793    uuid="a670a023-e172-452c-b731-14ef855f4da6"
     6794    wsmap="managed"
     6795    rest="managed"
     6796    reservedMethods="8" reservedAttributes="16">
     6797
     6798    <desc>
     6799      Platform object for a virtual machine.
     6800
     6801      Accessed via <link to="IMachine::platform"/>.
     6802    </desc>
     6803
     6804    <attribute name="architecture" type="PlatformArchitecture" readonly="no">
     6805      <desc>
     6806        Returns the platform architecture.
     6807
     6808        Changing this means settings for the previously selected architecture
     6809        will be discarded and replaced by defaults.
     6810
     6811        <note>Setting the platform architecture currently is
     6812          not implemented yet.</note>
     6813
     6814        <result name="E_NOTIMPL">
     6815          Not implemented yet.
     6816        </result>
     6817      </desc>
     6818    </attribute>
     6819
     6820    <attribute name="properties" type="IPlatformProperties" readonly="yes">
     6821      <desc>
     6822        Returns the platform properties.
     6823      </desc>
     6824    </attribute>
     6825
     6826    <attribute name="x86" type="IPlatformX86" readonly="yes">
     6827      <desc>
     6828        Platform object for x86-specific platform properties.
     6829
     6830        Changes to this object will not necessarily be preserved unless
     6831        <link to="IPlatform::architecture"/> is set to <link to="PlatformArchitecture_x86"/>.
     6832      </desc>
     6833
     6834      <result name="VBOX_E_PLATFORM_ARCH_NOT_SUPPORTED">
     6835        Current platform  architecture is not x86.
     6836      </result>
     6837    </attribute>
     6838
     6839    <attribute name="ARM" type="IPlatformARM" readonly="yes">
     6840      <desc>
     6841        Platform object for ARM-specific platform properties.
     6842
     6843        Changes to this object will not necessarily be preserved unless
     6844        <link to="IPlatform::architecture"/> is set to <link to="PlatformArchitecture_ARM"/>.
     6845      </desc>
     6846
     6847      <result name="VBOX_E_PLATFORM_ARCH_NOT_SUPPORTED">
     6848        Current platform  architecture is not ARM.
     6849      </result>
     6850    </attribute>
     6851
     6852    <!-- Properties common to both (placed here to reduce IMachine bloat): -->
     6853
     6854    <attribute name="chipsetType" type="ChipsetType">
     6855      <desc>Chipset type used in this VM.</desc>
     6856    </attribute>
     6857
     6858    <attribute name="iommuType" type="IommuType">
     6859      <desc>IOMMU type used in this VM.</desc>
     6860    </attribute>
     6861
     6862    <attribute name="RTCUseUTC" type="boolean">
     6863      <desc>
     6864        When set to @a true, the RTC device of the virtual machine will run
     6865        in UTC time, otherwise in local time. Especially Unix guests prefer
     6866        the time in UTC.
     6867      </desc>
     6868    </attribute>
     6869
     6870  </interface>
     6871
     6872  <interface
     6873    name="IPlatformX86" extends="$unknown"
     6874    uuid="5ada589f-09c9-4604-b700-9ab3a5572e3a"
     6875    wsmap="managed"
     6876    rest="managed"
     6877    reservedMethods="8" reservedAttributes="16">
     6878
     6879    <desc>
     6880      The x86 specific platform properties for a virtual machine.
     6881
     6882      Accessed via <link to="IMachine::platform"/> and <link to="IPlatform::x86"/>.
     6883    </desc>
     6884
     6885    <attribute name="HPETEnabled" type="boolean">
     6886      <desc>This attribute controls if High Precision Event Timer (HPET) is
     6887        enabled in this VM. Use this property if you want to provide guests
     6888        with additional time source, or if guest requires HPET to function correctly.
     6889        Default is false.</desc>
     6890    </attribute>
     6891
     6892    <method name="getCPUProperty" const="yes">
     6893      <rest request="get" path="/vms/{vmid}/configuration/"/>
     6894      <desc>
     6895        Returns the virtual CPU boolean value of the specified property.
     6896
     6897        <result name="E_INVALIDARG">
     6898          Invalid property.
     6899        </result>
     6900
     6901      </desc>
     6902      <param name="property" type="CPUPropertyTypeX86" dir="in">
     6903        <desc>
     6904          Property type to query.
     6905        </desc>
     6906      </param>
     6907      <param name="value" type="boolean" dir="return">
     6908        <desc>
     6909          Property value.
     6910        </desc>
     6911      </param>
     6912    </method>
     6913
     6914    <method name="setCPUProperty">
     6915      <rest request="post" path="/vms/{vmid}/configuration/"/>
     6916      <desc>
     6917        Sets the virtual CPU boolean value of the specified property.
     6918
     6919        <result name="E_INVALIDARG">
     6920          Invalid property.
     6921        </result>
     6922
     6923      </desc>
     6924      <param name="property" type="CPUPropertyTypeX86" dir="in">
     6925        <desc>
     6926          Property type to query.
     6927        </desc>
     6928      </param>
     6929      <param name="value" type="boolean" dir="in">
     6930        <desc>
     6931          Property value.
     6932        </desc>
     6933      </param>
     6934    </method>
     6935
     6936    <method name="getCPUIDLeafByOrdinal" const="yes">
     6937      <desc>
     6938        Used to enumerate CPUID information override values.
     6939
     6940        <result name="E_INVALIDARG">
     6941          Invalid ordinal number is out of range.
     6942        </result>
     6943      </desc>
     6944      <param name="ordinal" type="unsigned long" dir="in">
     6945        <desc>
     6946          The ordinal number of the leaf to get.
     6947        </desc>
     6948      </param>
     6949      <param name="idx" type="unsigned long" dir="out">
     6950        <desc>
     6951          CPUID leaf index.
     6952        </desc>
     6953      </param>
     6954      <param name="idxSub" type="unsigned long" dir="out">
     6955        <desc>
     6956          CPUID leaf sub-index.
     6957        </desc>
     6958      </param>
     6959      <param name="valEax" type="unsigned long" dir="out">
     6960        <desc>
     6961          CPUID leaf value for register eax.
     6962        </desc>
     6963      </param>
     6964      <param name="valEbx" type="unsigned long" dir="out">
     6965        <desc>
     6966          CPUID leaf value for register ebx.
     6967        </desc>
     6968      </param>
     6969      <param name="valEcx" type="unsigned long" dir="out">
     6970        <desc>
     6971          CPUID leaf value for register ecx.
     6972        </desc>
     6973      </param>
     6974      <param name="valEdx" type="unsigned long" dir="out">
     6975        <desc>
     6976          CPUID leaf value for register edx.
     6977        </desc>
     6978      </param>
     6979    </method>
     6980
     6981    <method name="getCPUIDLeaf" const="yes">
     6982      <desc>
     6983        Returns the virtual CPU cpuid information for the specified leaf.
     6984
     6985        Currently supported index values for cpuid:
     6986        Standard CPUID leaves: 0 - 0x1f
     6987        Extended CPUID leaves: 0x80000000 - 0x8000001f
     6988        VIA CPUID leaves:      0xc0000000 - 0xc000000f
     6989
     6990        See the Intel, AMD and VIA programmer's manuals for detailed information
     6991        about the CPUID instruction and its leaves.
     6992        <result name="E_INVALIDARG">
     6993          Invalid index.
     6994        </result>
     6995
     6996      </desc>
     6997      <param name="idx" type="unsigned long" dir="in">
     6998        <desc>
     6999          CPUID leaf index.
     7000        </desc>
     7001      </param>
     7002      <param name="idxSub" type="unsigned long" dir="in">
     7003        <desc>
     7004          CPUID leaf sub-index (ECX).  Set to 0xffffffff (or 0) if not applicable.
     7005        </desc>
     7006      </param>
     7007      <param name="valEax" type="unsigned long" dir="out">
     7008        <desc>
     7009          CPUID leaf value for register eax.
     7010        </desc>
     7011      </param>
     7012      <param name="valEbx" type="unsigned long" dir="out">
     7013        <desc>
     7014          CPUID leaf value for register ebx.
     7015        </desc>
     7016      </param>
     7017      <param name="valEcx" type="unsigned long" dir="out">
     7018        <desc>
     7019          CPUID leaf value for register ecx.
     7020        </desc>
     7021      </param>
     7022      <param name="valEdx" type="unsigned long" dir="out">
     7023        <desc>
     7024          CPUID leaf value for register edx.
     7025        </desc>
     7026      </param>
     7027    </method>
     7028
     7029    <method name="setCPUIDLeaf">
     7030      <desc>
     7031        Sets the virtual CPU cpuid information for the specified leaf. Note that these values
     7032        are not passed unmodified. VirtualBox clears features that it doesn't support.
     7033
     7034        Currently supported index values for cpuid:
     7035        Standard CPUID leaves: 0 - 0x1f
     7036        Extended CPUID leaves: 0x80000000 - 0x8000001f
     7037        VIA CPUID leaves:      0xc0000000 - 0xc000000f
     7038
     7039        The subleaf index is only applicable to certain leaves (see manuals as this is
     7040        subject to change).
     7041
     7042        See the Intel, AMD and VIA programmer's manuals for detailed information
     7043        about the cpuid instruction and its leaves.
     7044
     7045        Do not use this method unless you know exactly what you're doing. Misuse can lead to
     7046        random crashes inside VMs.
     7047        <result name="E_INVALIDARG">
     7048          Invalid index.
     7049        </result>
     7050
     7051      </desc>
     7052      <param name="idx" type="unsigned long" dir="in">
     7053        <desc>
     7054          CPUID leaf index.
     7055        </desc>
     7056      </param>
     7057      <param name="idxSub" type="unsigned long" dir="in">
     7058        <desc>
     7059          CPUID leaf sub-index (ECX).  Set to 0xffffffff (or 0) if not applicable.
     7060          The 0xffffffff causes it to remove all other subleaves before adding one
     7061          with sub-index 0.
     7062        </desc>
     7063      </param>
     7064      <param name="valEax" type="unsigned long" dir="in">
     7065        <desc>
     7066          CPUID leaf value for register eax.
     7067        </desc>
     7068      </param>
     7069      <param name="valEbx" type="unsigned long" dir="in">
     7070        <desc>
     7071          CPUID leaf value for register ebx.
     7072        </desc>
     7073      </param>
     7074      <param name="valEcx" type="unsigned long" dir="in">
     7075        <desc>
     7076          CPUID leaf value for register ecx.
     7077        </desc>
     7078      </param>
     7079      <param name="valEdx" type="unsigned long" dir="in">
     7080        <desc>
     7081          CPUID leaf value for register edx.
     7082        </desc>
     7083      </param>
     7084    </method>
     7085
     7086    <method name="removeCPUIDLeaf">
     7087      <desc>
     7088        Removes the virtual CPU cpuid leaf for the specified index
     7089
     7090        <result name="E_INVALIDARG">
     7091          Invalid index.
     7092        </result>
     7093
     7094      </desc>
     7095      <param name="idx" type="unsigned long" dir="in">
     7096        <desc>
     7097          CPUID leaf index.
     7098        </desc>
     7099      </param>
     7100      <param name="idxSub" type="unsigned long" dir="in">
     7101        <desc>
     7102          CPUID leaf sub-index (ECX).  Set to 0xffffffff (or 0) if not applicable.
     7103          The 0xffffffff value works like a wildcard.
     7104        </desc>
     7105      </param>
     7106    </method>
     7107
     7108    <method name="removeAllCPUIDLeaves">
     7109      <desc>
     7110        Removes all the virtual CPU cpuid leaves
     7111      </desc>
     7112    </method>
     7113
     7114    <method name="getHWVirtExProperty" const="yes">
     7115      <rest request="get" path="/vms/{vmid}/configuration/"/>
     7116      <desc>
     7117        Returns the value of the specified hardware virtualization boolean property.
     7118
     7119        <result name="E_INVALIDARG">
     7120          Invalid property.
     7121        </result>
     7122
     7123      </desc>
     7124      <param name="property" type="HWVirtExPropertyType" dir="in">
     7125        <desc>
     7126          Property type to query.
     7127        </desc>
     7128      </param>
     7129      <param name="value" type="boolean" dir="return">
     7130        <desc>
     7131          Property value.
     7132        </desc>
     7133      </param>
     7134    </method>
     7135
     7136    <method name="setHWVirtExProperty">
     7137      <rest request="post" path="/vms/{vmid}/configuration/"/>
     7138      <desc>
     7139        Sets a new value for the specified hardware virtualization boolean property.
     7140
     7141        <result name="E_INVALIDARG">
     7142          Invalid property.
     7143        </result>
     7144
     7145      </desc>
     7146      <param name="property" type="HWVirtExPropertyType" dir="in">
     7147        <desc>
     7148          Property type to set.
     7149        </desc>
     7150      </param>
     7151      <param name="value" type="boolean" dir="in">
     7152        <desc>
     7153          New property value.
     7154        </desc>
     7155      </param>
     7156    </method>
     7157
     7158  </interface>
     7159
     7160  <interface
     7161    name="IPlatformARM" extends="$unknown"
     7162    uuid="75dff9be-6cb3-4857-bde6-2faf82ed9a8d"
     7163    wsmap="managed"
     7164    rest="managed"
     7165    reservedMethods="8" reservedAttributes="16">
     7166
     7167    <desc>
     7168      The x86 specific platform properties for a virtual machine.
     7169
     7170      Accessed via <link to="IMachine::platform"/> and <link to="IPlatform::ARM"/>.
     7171    </desc>
     7172
     7173    <!-- Currently empty, but that should change before long... -->
     7174    <attribute name="midlDoesNotLikeEmptyInterfaces" readonly="yes" type="boolean"/>
     7175
     7176  </interface>
     7177
     7178  <interface
    67177179    name="IMachine" extends="$unknown"
    6718     uuid="300763af-5d6b-46e6-aa96-273eac15538a"
     7180    uuid="8161d51b-17b4-4598-add2-eb1fe1de6230"
    67197181    wsmap="managed"
    67207182    rest="managed"
     
    69727434    </attribute>
    69737435
    6974     <attribute name="BIOSSettings" type="IBIOSSettings" readonly="yes">
    6975       <desc>Object containing all BIOS settings.</desc>
     7436    <attribute name="platform" type="IPlatform" readonly="yes">
     7437      <desc>Associated platform object.</desc>
     7438    </attribute>
     7439
     7440    <attribute name="firmwareSettings" type="IFirmwareSettings" readonly="yes">
     7441      <desc>Object containing all firmware settings.</desc>
    69767442    </attribute>
    69777443
     
    69867452    <attribute name="recordingSettings" type="IRecordingSettings" readonly="yes">
    69877453      <desc>Object containing all recording settings.</desc>
    6988     </attribute>
    6989 
    6990     <attribute name="firmwareType" type="FirmwareType">
    6991       <desc>Type of firmware (such as legacy BIOS or EFI), used for initial
    6992         bootstrap in this VM.</desc>
    69937454    </attribute>
    69947455
     
    70037464        The default is typically "PS2Keyboard" but can vary depending on the
    70047465        requirements of the guest operating system.</desc>
    7005     </attribute>
    7006 
    7007     <attribute name="HPETEnabled" type="boolean">
    7008       <desc>This attribute controls if High Precision Event Timer (HPET) is
    7009         enabled in this VM. Use this property if you want to provide guests
    7010         with additional time source, or if guest requires HPET to function correctly.
    7011         Default is false.</desc>
    7012     </attribute>
    7013 
    7014     <attribute name="chipsetType" type="ChipsetType">
    7015       <desc>Chipset type used in this VM.</desc>
    7016     </attribute>
    7017 
    7018     <attribute name="iommuType" type="IommuType">
    7019       <desc>IOMMU type used in this VM.</desc>
    70207466    </attribute>
    70217467
     
    73217767    </attribute>
    73227768
    7323     <attribute name="RTCUseUTC" type="boolean">
    7324       <desc>
    7325         When set to @a true, the RTC device of the virtual machine will run
    7326         in UTC time, otherwise in local time. Especially Unix guests prefer
    7327         the time in UTC.
    7328       </desc>
    7329     </attribute>
    7330 
    73317769    <attribute name="IOCacheEnabled" type="boolean">
    73327770      <desc>
     
    77328170          Position in the boot order (@c 1 to the total number of
    77338171          devices the machine can boot from, as returned by
    7734           <link to="ISystemProperties::maxBootPosition"/>).
     8172          <link to="IPlatformProperties::maxBootPosition"/>).
    77358173        </desc>
    77368174      </param>
     
    77678205          Position in the boot order (@c 1 to the total number of
    77688206          devices the machine can boot from, as returned by
    7769           <link to="ISystemProperties::maxBootPosition"/>).
     8207          <link to="IPlatformProperties::maxBootPosition"/>).
    77708208        </desc>
    77718209      </param>
     
    85008938        Slots are numbered sequentially, starting with zero. The total
    85018939        number of adapters per machine is defined by the
    8502         <link to="ISystemProperties::getMaxNetworkAdapters"/> property,
     8940        <link to="IPlatformProperties::getMaxNetworkAdapters"/> property,
    85038941        so the maximum slot number is one less than that property's value.
    85048942
     
    86589096        Slots are numbered sequentially, starting with zero. The total
    86599097        number of serial ports per machine is defined by the
    8660         <link to="ISystemProperties::serialPortCount"/> property,
     9098        <link to="IPlatformProperties::serialPortCount"/> property,
    86619099        so the maximum slot number is one less than that property's value.
    86629100
     
    86769114        Slots are numbered sequentially, starting with zero. The total
    86779115        number of parallel ports per machine is defined by the
    8678         <link to="ISystemProperties::parallelPortCount"/> property,
     9116        <link to="IPlatformProperties::parallelPortCount"/> property,
    86799117        so the maximum slot number is one less than that property's value.
    86809118
     
    87729210    </method>
    87739211
    8774     <method name="getCPUProperty" const="yes">
    8775       <rest request="get" path="/vms/{vmid}/configuration/"/>
    8776       <desc>
    8777         Returns the virtual CPU boolean value of the specified property.
    8778 
    8779         <result name="E_INVALIDARG">
    8780           Invalid property.
    8781         </result>
    8782 
    8783       </desc>
    8784       <param name="property" type="CPUPropertyType" dir="in">
    8785         <desc>
    8786           Property type to query.
    8787         </desc>
    8788       </param>
    8789       <param name="value" type="boolean" dir="return">
    8790         <desc>
    8791           Property value.
    8792         </desc>
    8793       </param>
    8794     </method>
    8795 
    8796     <method name="setCPUProperty">
    8797       <rest request="post" path="/vms/{vmid}/configuration/"/>
    8798       <desc>
    8799         Sets the virtual CPU boolean value of the specified property.
    8800 
    8801         <result name="E_INVALIDARG">
    8802           Invalid property.
    8803         </result>
    8804 
    8805       </desc>
    8806       <param name="property" type="CPUPropertyType" dir="in">
    8807         <desc>
    8808           Property type to query.
    8809         </desc>
    8810       </param>
    8811       <param name="value" type="boolean" dir="in">
    8812         <desc>
    8813           Property value.
    8814         </desc>
    8815       </param>
    8816     </method>
    8817 
    8818     <method name="getCPUIDLeafByOrdinal" const="yes">
    8819       <desc>
    8820         Used to enumerate CPUID information override values.
    8821 
    8822         <result name="E_INVALIDARG">
    8823           Invalid ordinal number is out of range.
    8824         </result>
    8825       </desc>
    8826       <param name="ordinal" type="unsigned long" dir="in">
    8827         <desc>
    8828           The ordinal number of the leaf to get.
    8829         </desc>
    8830       </param>
    8831       <param name="idx" type="unsigned long" dir="out">
    8832         <desc>
    8833           CPUID leaf index.
    8834         </desc>
    8835       </param>
    8836       <param name="idxSub" type="unsigned long" dir="out">
    8837         <desc>
    8838           CPUID leaf sub-index.
    8839         </desc>
    8840       </param>
    8841       <param name="valEax" type="unsigned long" dir="out">
    8842         <desc>
    8843           CPUID leaf value for register eax.
    8844         </desc>
    8845       </param>
    8846       <param name="valEbx" type="unsigned long" dir="out">
    8847         <desc>
    8848           CPUID leaf value for register ebx.
    8849         </desc>
    8850       </param>
    8851       <param name="valEcx" type="unsigned long" dir="out">
    8852         <desc>
    8853           CPUID leaf value for register ecx.
    8854         </desc>
    8855       </param>
    8856       <param name="valEdx" type="unsigned long" dir="out">
    8857         <desc>
    8858           CPUID leaf value for register edx.
    8859         </desc>
    8860       </param>
    8861     </method>
    8862 
    8863     <method name="getCPUIDLeaf" const="yes">
    8864       <desc>
    8865         Returns the virtual CPU cpuid information for the specified leaf.
    8866 
    8867         Currently supported index values for cpuid:
    8868         Standard CPUID leaves: 0 - 0x1f
    8869         Extended CPUID leaves: 0x80000000 - 0x8000001f
    8870         VIA CPUID leaves:      0xc0000000 - 0xc000000f
    8871 
    8872         See the Intel, AMD and VIA programmer's manuals for detailed information
    8873         about the CPUID instruction and its leaves.
    8874         <result name="E_INVALIDARG">
    8875           Invalid index.
    8876         </result>
    8877 
    8878       </desc>
    8879       <param name="idx" type="unsigned long" dir="in">
    8880         <desc>
    8881           CPUID leaf index.
    8882         </desc>
    8883       </param>
    8884       <param name="idxSub" type="unsigned long" dir="in">
    8885         <desc>
    8886           CPUID leaf sub-index (ECX).  Set to 0xffffffff (or 0) if not applicable.
    8887         </desc>
    8888       </param>
    8889       <param name="valEax" type="unsigned long" dir="out">
    8890         <desc>
    8891           CPUID leaf value for register eax.
    8892         </desc>
    8893       </param>
    8894       <param name="valEbx" type="unsigned long" dir="out">
    8895         <desc>
    8896           CPUID leaf value for register ebx.
    8897         </desc>
    8898       </param>
    8899       <param name="valEcx" type="unsigned long" dir="out">
    8900         <desc>
    8901           CPUID leaf value for register ecx.
    8902         </desc>
    8903       </param>
    8904       <param name="valEdx" type="unsigned long" dir="out">
    8905         <desc>
    8906           CPUID leaf value for register edx.
    8907         </desc>
    8908       </param>
    8909     </method>
    8910 
    8911     <method name="setCPUIDLeaf">
    8912       <desc>
    8913         Sets the virtual CPU cpuid information for the specified leaf. Note that these values
    8914         are not passed unmodified. VirtualBox clears features that it doesn't support.
    8915 
    8916         Currently supported index values for cpuid:
    8917         Standard CPUID leaves: 0 - 0x1f
    8918         Extended CPUID leaves: 0x80000000 - 0x8000001f
    8919         VIA CPUID leaves:      0xc0000000 - 0xc000000f
    8920 
    8921         The subleaf index is only applicable to certain leaves (see manuals as this is
    8922         subject to change).
    8923 
    8924         See the Intel, AMD and VIA programmer's manuals for detailed information
    8925         about the cpuid instruction and its leaves.
    8926 
    8927         Do not use this method unless you know exactly what you're doing. Misuse can lead to
    8928         random crashes inside VMs.
    8929         <result name="E_INVALIDARG">
    8930           Invalid index.
    8931         </result>
    8932 
    8933       </desc>
    8934       <param name="idx" type="unsigned long" dir="in">
    8935         <desc>
    8936           CPUID leaf index.
    8937         </desc>
    8938       </param>
    8939       <param name="idxSub" type="unsigned long" dir="in">
    8940         <desc>
    8941           CPUID leaf sub-index (ECX).  Set to 0xffffffff (or 0) if not applicable.
    8942           The 0xffffffff causes it to remove all other subleaves before adding one
    8943           with sub-index 0.
    8944         </desc>
    8945       </param>
    8946       <param name="valEax" type="unsigned long" dir="in">
    8947         <desc>
    8948           CPUID leaf value for register eax.
    8949         </desc>
    8950       </param>
    8951       <param name="valEbx" type="unsigned long" dir="in">
    8952         <desc>
    8953           CPUID leaf value for register ebx.
    8954         </desc>
    8955       </param>
    8956       <param name="valEcx" type="unsigned long" dir="in">
    8957         <desc>
    8958           CPUID leaf value for register ecx.
    8959         </desc>
    8960       </param>
    8961       <param name="valEdx" type="unsigned long" dir="in">
    8962         <desc>
    8963           CPUID leaf value for register edx.
    8964         </desc>
    8965       </param>
    8966     </method>
    8967 
    8968     <method name="removeCPUIDLeaf">
    8969       <desc>
    8970         Removes the virtual CPU cpuid leaf for the specified index
    8971 
    8972         <result name="E_INVALIDARG">
    8973           Invalid index.
    8974         </result>
    8975 
    8976       </desc>
    8977       <param name="idx" type="unsigned long" dir="in">
    8978         <desc>
    8979           CPUID leaf index.
    8980         </desc>
    8981       </param>
    8982       <param name="idxSub" type="unsigned long" dir="in">
    8983         <desc>
    8984           CPUID leaf sub-index (ECX).  Set to 0xffffffff (or 0) if not applicable.
    8985           The 0xffffffff value works like a wildcard.
    8986         </desc>
    8987       </param>
    8988     </method>
    8989 
    8990     <method name="removeAllCPUIDLeaves">
    8991       <desc>
    8992         Removes all the virtual CPU cpuid leaves
    8993       </desc>
    8994     </method>
    8995 
    8996     <method name="getHWVirtExProperty" const="yes">
    8997       <rest request="get" path="/vms/{vmid}/configuration/"/>
    8998       <desc>
    8999         Returns the value of the specified hardware virtualization boolean property.
    9000 
    9001         <result name="E_INVALIDARG">
    9002           Invalid property.
    9003         </result>
    9004 
    9005       </desc>
    9006       <param name="property" type="HWVirtExPropertyType" dir="in">
    9007         <desc>
    9008           Property type to query.
    9009         </desc>
    9010       </param>
    9011       <param name="value" type="boolean" dir="return">
    9012         <desc>
    9013           Property value.
    9014         </desc>
    9015       </param>
    9016     </method>
    9017 
    9018     <method name="setHWVirtExProperty">
    9019       <rest request="post" path="/vms/{vmid}/configuration/"/>
    9020       <desc>
    9021         Sets a new value for the specified hardware virtualization boolean property.
    9022 
    9023         <result name="E_INVALIDARG">
    9024           Invalid property.
    9025         </result>
    9026 
    9027       </desc>
    9028       <param name="property" type="HWVirtExPropertyType" dir="in">
    9029         <desc>
    9030           Property type to set.
    9031         </desc>
    9032       </param>
    9033       <param name="value" type="boolean" dir="in">
    9034         <desc>
    9035           New property value.
    9036         </desc>
    9037       </param>
    9038     </method>
    9039 
    90409212    <method name="setSettingsFilePath">
    90419213      <rest request="post" path="/vms/{vmid}/configuration/"/>
     
    1187212044
    1187312045  <interface
     12046    name="IHostX86" extends="$unknown"
     12047    uuid="50c97996-9cf8-417f-bd79-1e0471367cd3"
     12048    wsmap="managed"
     12049    rest="managed"
     12050    reservedMethods="6" reservedAttributes="12"
     12051    >
     12052
     12053    <desc>
     12054      The x86 specific interface for the physical host machine.
     12055    </desc>
     12056
     12057    <method name="getProcessorCPUIDLeaf">
     12058      <desc>
     12059        Returns the CPU cpuid information for the specified leaf.
     12060      </desc>
     12061      <param name="cpuId" type="unsigned long" dir="in">
     12062        <desc>
     12063          Identifier of the CPU. The CPU must be online.
     12064          <note>
     12065            The current implementation might not necessarily return the
     12066            description for this exact CPU.
     12067          </note>
     12068        </desc>
     12069      </param>
     12070      <param name="leaf" type="unsigned long" dir="in">
     12071        <desc>
     12072          CPUID leaf index (eax).
     12073        </desc>
     12074      </param>
     12075      <param name="subLeaf" type="unsigned long" dir="in">
     12076        <desc>
     12077          CPUID leaf sub index (ecx). This currently only applies to cache
     12078          information on Intel CPUs. Use 0 if retrieving values for
     12079          <link to="IPlatformX86::setCPUIDLeaf"/>.
     12080        </desc>
     12081      </param>
     12082      <param name="valEax" type="unsigned long" dir="out">
     12083        <desc>
     12084          CPUID leaf value for register eax.
     12085        </desc>
     12086      </param>
     12087      <param name="valEbx" type="unsigned long" dir="out">
     12088        <desc>
     12089          CPUID leaf value for register ebx.
     12090        </desc>
     12091      </param>
     12092      <param name="valEcx" type="unsigned long" dir="out">
     12093        <desc>
     12094          CPUID leaf value for register ecx.
     12095        </desc>
     12096      </param>
     12097      <param name="valEdx" type="unsigned long" dir="out">
     12098        <desc>
     12099          CPUID leaf value for register edx.
     12100        </desc>
     12101      </param>
     12102    </method>
     12103
     12104  </interface>
     12105
     12106  <interface
    1187412107    name="IHost" extends="$unknown"
    1187512108    uuid="e54f6256-97a7-4947-8a78-10c013ddf4b8"
     
    1189012123
    1189112124    </desc>
     12125
     12126    <attribute name="architecture" type="PlatformArchitecture" readonly="yes">
     12127      <desc>Platform architecture type.</desc>
     12128    </attribute>
     12129
     12130    <attribute name="x86" type="IHostX86" readonly="yes">
     12131      <desc>Associated object for x86 host specifics.</desc>
     12132    </attribute>
     12133
    1189212134    <attribute name="DVDDrives" type="IMedium" readonly="yes" safearray="yes">
    1189312135      <desc>List of DVD drives available on the host.</desc>
     
    1202512267          Model string. An empty string is returned if value is not known or
    1202612268          @a cpuId is invalid.
    12027         </desc>
    12028       </param>
    12029     </method>
    12030 
    12031     <method name="getProcessorCPUIDLeaf">
    12032       <desc>
    12033         Returns the CPU cpuid information for the specified leaf.
    12034       </desc>
    12035       <param name="cpuId" type="unsigned long" dir="in">
    12036         <desc>
    12037           Identifier of the CPU. The CPU most be online.
    12038           <note>
    12039             The current implementation might not necessarily return the
    12040             description for this exact CPU.
    12041           </note>
    12042         </desc>
    12043       </param>
    12044       <param name="leaf" type="unsigned long" dir="in">
    12045         <desc>
    12046           CPUID leaf index (eax).
    12047         </desc>
    12048       </param>
    12049       <param name="subLeaf" type="unsigned long" dir="in">
    12050         <desc>
    12051           CPUID leaf sub index (ecx). This currently only applies to cache
    12052           information on Intel CPUs. Use 0 if retrieving values for
    12053           <link to="IMachine::setCPUIDLeaf"/>.
    12054         </desc>
    12055       </param>
    12056       <param name="valEax" type="unsigned long" dir="out">
    12057         <desc>
    12058           CPUID leaf value for register eax.
    12059         </desc>
    12060       </param>
    12061       <param name="valEbx" type="unsigned long" dir="out">
    12062         <desc>
    12063           CPUID leaf value for register ebx.
    12064         </desc>
    12065       </param>
    12066       <param name="valEcx" type="unsigned long" dir="out">
    12067         <desc>
    12068           CPUID leaf value for register ecx.
    12069         </desc>
    12070       </param>
    12071       <param name="valEdx" type="unsigned long" dir="out">
    12072         <desc>
    12073           CPUID leaf value for register edx.
    1207412269        </desc>
    1207512270      </param>
     
    1242212617  </interface>
    1242312618
     12619  <interface
     12620    name="IPlatformProperties"
     12621    extends="$unknown"
     12622    uuid="fb682653-c51d-42d4-bc30-db7c3e8bf75d"
     12623    wsmap="managed"
     12624    rest="managed"
     12625    reservedMethods="4" reservedAttributes="16"
     12626    >
     12627    <desc>
     12628      Properties of a specific virtualization platform.
     12629    </desc>
     12630
     12631    <attribute name="rawModeSupported" type="boolean" readonly="yes">
     12632      <desc>
     12633        Indicates whether VirtualBox was built with raw-mode support.
     12634
     12635        When this reads as False, the <link to="HWVirtExPropertyType_Enabled"/>
     12636        setting will be ignored and assumed to be True.
     12637
     12638        <note>For guest platform properties, this attribute is being
     12639          ignored.</note>
     12640      </desc>
     12641    </attribute>
     12642
     12643    <attribute name="exclusiveHwVirt" type="boolean">
     12644      <desc>
     12645        Exclusive use of hardware virtualization by VirtualBox. When enabled,
     12646        VirtualBox assumes it can obtain full and exclusive access to the VT-x
     12647        or AMD-V feature of the host. To share hardware virtualization with
     12648        other hypervisors, this property must be disabled.
     12649
     12650        <note>For hosts running on macOS this is being ignored, as the kernel
     12651          mediates hardware access there.</note>
     12652        <note>For guest platform properties, this attribute is being
     12653          ignored.</note>
     12654      </desc>
     12655    </attribute>
     12656
     12657    <attribute name="serialPortCount" type="unsigned long" readonly="yes">
     12658      <desc>
     12659        Maximum number of serial ports associated with every
     12660        <link to="IMachine"/> instance.
     12661      </desc>
     12662    </attribute>
     12663
     12664    <attribute name="parallelPortCount" type="unsigned long" readonly="yes">
     12665      <desc>
     12666        Maximum number of parallel ports associated with every
     12667        <link to="IMachine"/> instance.
     12668      </desc>
     12669    </attribute>
     12670
     12671    <attribute name="maxBootPosition" type="unsigned long" readonly="yes">
     12672      <desc>
     12673        Maximum device position in the boot order. This value corresponds
     12674        to the total number of devices a machine can boot from, to make it
     12675        possible to include all possible devices to the boot list.
     12676        <see><link to="IMachine::setBootOrder"/></see>
     12677      </desc>
     12678    </attribute>
     12679
     12680    <attribute name="supportedParavirtProviders" type="ParavirtProvider" safearray="yes" readonly="yes">
     12681      <desc>
     12682        Returns an array of officially supported values for enum <link to="ParavirtProvider"/>,
     12683        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12684      </desc>
     12685    </attribute>
     12686
     12687    <attribute name="supportedFirmwareTypes" type="FirmwareType" safearray="yes" readonly="yes">
     12688      <desc>
     12689        Returns an array of officially supported values for enum <link to="FirmwareType"/>,
     12690        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12691      </desc>
     12692    </attribute>
     12693
     12694    <attribute name="supportedGraphicsControllerTypes" type="GraphicsControllerType" safearray="yes" readonly="yes">
     12695      <desc>
     12696        Returns an array of officially supported values for enum <link to="GraphicsControllerType"/>,
     12697        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12698      </desc>
     12699    </attribute>
     12700
     12701    <attribute name="supportedNetworkAdapterTypes" type="NetworkAdapterType" safearray="yes" readonly="yes">
     12702      <desc>
     12703        Returns an array of officially supported values for enum <link to="NetworkAdapterType"/>,
     12704        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12705      </desc>
     12706    </attribute>
     12707
     12708    <attribute name="supportedUartTypes" type="UartType" safearray="yes" readonly="yes">
     12709      <desc>
     12710        Returns an array of officially supported values for enum <link to="UartType"/>,
     12711        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12712      </desc>
     12713    </attribute>
     12714
     12715    <attribute name="supportedUSBControllerTypes" type="USBControllerType" safearray="yes" readonly="yes">
     12716      <desc>
     12717        Returns an array of officially supported values for enum <link to="USBControllerType"/>,
     12718        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12719      </desc>
     12720    </attribute>
     12721
     12722    <attribute name="supportedAudioControllerTypes" type="AudioControllerType" safearray="yes" readonly="yes">
     12723      <desc>
     12724        Returns an array of officially supported values for enum <link to="AudioControllerType"/>,
     12725        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12726      </desc>
     12727    </attribute>
     12728
     12729    <attribute name="supportedStorageBuses" type="StorageBus" safearray="yes" readonly="yes">
     12730      <desc>
     12731        Returns an array of officially supported values for enum <link to="StorageBus"/>,
     12732        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12733      </desc>
     12734    </attribute>
     12735
     12736    <attribute name="supportedStorageControllerTypes" type="StorageControllerType" safearray="yes" readonly="yes">
     12737      <desc>
     12738        Returns an array of officially supported values for enum <link to="StorageControllerType"/>,
     12739        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12740      </desc>
     12741    </attribute>
     12742
     12743    <attribute name="supportedChipsetTypes" type="ChipsetType" safearray="yes" readonly="yes">
     12744      <desc>
     12745        Returns an array of officially supported values for enum <link to="ChipsetType"/>,
     12746        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12747      </desc>
     12748    </attribute>
     12749
     12750    <attribute name="supportedIommuTypes" type="IommuType" safearray="yes" readonly="yes">
     12751      <desc>
     12752        Returns an array of officially supported values for enum <link to="IommuType"/>,
     12753        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12754      </desc>
     12755    </attribute>
     12756
     12757    <attribute name="supportedTpmTypes" type="TpmType" safearray="yes" readonly="yes">
     12758      <desc>
     12759        Returns an array of officially supported values for enum <link to="TpmType"/>,
     12760        in the sense of what is e.g. worth offering in the VirtualBox GUI.
     12761      </desc>
     12762    </attribute>
     12763
     12764    <method name="getMaxNetworkAdapters">
     12765      <desc>
     12766        Maximum total number of network adapters associated with every
     12767        <link to="IMachine"/> instance.
     12768      </desc>
     12769
     12770      <param name="chipset" type="ChipsetType" dir="in">
     12771        <desc>The chipset type to get the value for.</desc>
     12772      </param>
     12773
     12774
     12775      <param name="maxNetworkAdapters" type="unsigned long" dir="return">
     12776        <desc>The maximum total number of network adapters allowed.</desc>
     12777      </param>
     12778
     12779    </method>
     12780
     12781    <method name="getMaxNetworkAdaptersOfType">
     12782      <desc>
     12783        Maximum number of network adapters of a given attachment type,
     12784        associated with every <link to="IMachine"/> instance.
     12785      </desc>
     12786
     12787      <param name="chipset" type="ChipsetType" dir="in">
     12788        <desc>The chipset type to get the value for.</desc>
     12789      </param>
     12790
     12791      <param name="type" type="NetworkAttachmentType" dir="in">
     12792        <desc>Type of attachment.</desc>
     12793      </param>
     12794
     12795      <param name="maxNetworkAdapters" type="unsigned long" dir="return">
     12796        <desc>The maximum number of network adapters allowed for
     12797          particular chipset and attachment type.</desc>
     12798      </param>
     12799
     12800    </method>
     12801
     12802    <method name="getMaxDevicesPerPortForStorageBus">
     12803      <desc>Returns the maximum number of devices which can be attached to a port
     12804      for the given storage bus.</desc>
     12805
     12806      <param name="bus" type="StorageBus" dir="in">
     12807        <desc>The storage bus type to get the value for.</desc>
     12808      </param>
     12809
     12810      <param name="maxDevicesPerPort" type="unsigned long" dir="return">
     12811        <desc>The maximum number of devices which can be attached to the port for the given
     12812        storage bus.</desc>
     12813      </param>
     12814    </method>
     12815
     12816    <method name="getMinPortCountForStorageBus">
     12817      <desc>Returns the minimum number of ports the given storage bus supports.</desc>
     12818
     12819      <param name="bus" type="StorageBus" dir="in">
     12820        <desc>The storage bus type to get the value for.</desc>
     12821      </param>
     12822
     12823      <param name="minPortCount" type="unsigned long" dir="return">
     12824        <desc>The minimum number of ports for the given storage bus.</desc>
     12825      </param>
     12826    </method>
     12827
     12828    <method name="getMaxPortCountForStorageBus">
     12829      <desc>Returns the maximum number of ports the given storage bus supports.</desc>
     12830
     12831      <param name="bus" type="StorageBus" dir="in">
     12832        <desc>The storage bus type to get the value for.</desc>
     12833      </param>
     12834
     12835      <param name="maxPortCount" type="unsigned long" dir="return">
     12836        <desc>The maximum number of ports for the given storage bus.</desc>
     12837      </param>
     12838    </method>
     12839
     12840    <method name="getMaxInstancesOfStorageBus">
     12841      <desc>Returns the maximum number of storage bus instances which
     12842        can be configured for each VM. This corresponds to the number of
     12843        storage controllers one can have. Value may depend on chipset type
     12844        used.</desc>
     12845
     12846      <param name="chipset" type="ChipsetType" dir="in">
     12847        <desc>The chipset type to get the value for.</desc>
     12848      </param>
     12849
     12850      <param name="bus" type="StorageBus" dir="in">
     12851        <desc>The storage bus type to get the value for.</desc>
     12852      </param>
     12853
     12854      <param name="maxInstances" type="unsigned long" dir="return">
     12855        <desc>The maximum number of instances for the given storage bus.</desc>
     12856      </param>
     12857    </method>
     12858
     12859    <method name="getDeviceTypesForStorageBus">
     12860      <desc>Returns list of all the supported device types
     12861        (<link to="DeviceType"/>) for the given type of storage
     12862        bus.</desc>
     12863
     12864      <param name="bus" type="StorageBus" dir="in">
     12865        <desc>The storage bus type to get the value for.</desc>
     12866      </param>
     12867
     12868      <param name="deviceTypes" type="DeviceType" safearray="yes" dir="return">
     12869        <desc>The list of all supported device types for the given storage bus.</desc>
     12870      </param>
     12871    </method>
     12872
     12873    <method name="getStorageBusForStorageControllerType">
     12874      <desc>Returns the <link to="StorageBus"/> enum value
     12875        for a given storage controller type.</desc>
     12876
     12877      <param name="storageControllerType" type="StorageControllerType" dir="in">
     12878        <desc>The storage controller type to get the value for.</desc>
     12879      </param>
     12880
     12881      <param name="storageBus" type="StorageBus" dir="return">
     12882        <desc>The storage bus which is applicable.</desc>
     12883      </param>
     12884    </method>
     12885
     12886    <method name="getStorageControllerTypesForStorageBus">
     12887      <desc>Returns the possible <link to="StorageControllerType"/> enum values
     12888        for a given storage bus.</desc>
     12889
     12890      <param name="storageBus" type="StorageBus" dir="in">
     12891        <desc>The storage bus type to get the values for.</desc>
     12892      </param>
     12893
     12894      <param name="storageControllerType" type="StorageControllerType" safearray="yes" dir="return">
     12895        <desc>The enum values (sorted by what should be a sensible decreasing
     12896        importance of the type) which are valid.</desc>
     12897      </param>
     12898    </method>
     12899
     12900    <method name="getStorageControllerHotplugCapable">
     12901      <desc>Returns whether the given storage controller supports
     12902        hot-plugging devices.</desc>
     12903
     12904      <param name="controllerType" type="StorageControllerType" dir="in">
     12905        <desc>The storage controller to check the setting for.</desc>
     12906      </param>
     12907
     12908      <param name="hotplugCapable" type="boolean" dir="return">
     12909        <desc>Returned flag indicating whether the controller is hotplug capable</desc>
     12910      </param>
     12911    </method>
     12912
     12913    <method name="getMaxInstancesOfUSBControllerType">
     12914      <desc>Returns the maximum number of USB controller instances which
     12915        can be configured for each VM. This corresponds to the number of
     12916        USB controllers one can have. Value may depend on chipset type
     12917        used.</desc>
     12918
     12919      <param name="chipset" type="ChipsetType" dir="in">
     12920        <desc>The chipset type to get the value for.</desc>
     12921      </param>
     12922
     12923      <param name="type" type="USBControllerType" dir="in">
     12924        <desc>The USB controller type to get the value for.</desc>
     12925      </param>
     12926
     12927      <param name="maxInstances" type="unsigned long" dir="return">
     12928        <desc>The maximum number of instances for the given USB controller type.</desc>
     12929      </param>
     12930    </method>
     12931
     12932  </interface>
     12933
    1242412934  <!--
    1242512935  // ISystemProperties
     
    1244312953    name="ISystemProperties"
    1244412954    extends="$unknown"
    12445     uuid="aac6c7cb-a371-4c58-ab51-0616896b2f2c"
     12955    uuid="584dad7d-120f-40fa-91c2-fc520f60fdf2"
    1244612956    wsmap="managed"
    1244712957    rest="managed"
     
    1245712967    </desc>
    1245812968
     12969    <attribute name="platform" type="IPlatformProperties" readonly="yes">
     12970      <desc>Platform properties of the VirtualBox installation.</desc>
     12971    </attribute>
     12972
    1245912973    <attribute name="minGuestRAM" type="unsigned long" readonly="yes">
    1246012974      <desc>Minimum guest system memory in Megabytes.</desc>
     
    1248813002      <desc>Maximum size of a virtual disk image in bytes. Informational value,
    1248913003      does not reflect the limits of any virtual disk image format.</desc>
    12490     </attribute>
    12491 
    12492     <attribute name="serialPortCount" type="unsigned long" readonly="yes">
    12493       <desc>
    12494         Maximum number of serial ports associated with every
    12495         <link to="IMachine"/> instance.
    12496       </desc>
    12497     </attribute>
    12498 
    12499     <attribute name="parallelPortCount" type="unsigned long" readonly="yes">
    12500       <desc>
    12501         Maximum number of parallel ports associated with every
    12502         <link to="IMachine"/> instance.
    12503       </desc>
    12504     </attribute>
    12505 
    12506     <attribute name="maxBootPosition" type="unsigned long" readonly="yes">
    12507       <desc>
    12508         Maximum device position in the boot order. This value corresponds
    12509         to the total number of devices a machine can boot from, to make it
    12510         possible to include all possible devices to the boot list.
    12511         <see><link to="IMachine::setBootOrder"/></see>
    12512       </desc>
    12513     </attribute>
    12514 
    12515     <attribute name="rawModeSupported" type="boolean" readonly="yes">
    12516       <desc>
    12517         Indicates whether VirtualBox was built with raw-mode support.
    12518 
    12519         When this reads as False, the <link to="HWVirtExPropertyType_Enabled"/>
    12520         setting will be ignored and assumed to be True.
    12521       </desc>
    12522     </attribute>
    12523 
    12524     <attribute name="exclusiveHwVirt" type="boolean">
    12525       <desc>
    12526         Exclusive use of hardware virtualization by VirtualBox. When enabled,
    12527         VirtualBox assumes it can obtain full and exclusive access to the VT-x
    12528         or AMD-V feature of the host. To share hardware virtualization with
    12529         other hypervisors, this property must be disabled.
    12530 
    12531         <note>This is ignored on OS X, the kernel mediates hardware
    12532           access there.</note>
    12533       </desc>
    1253413004    </attribute>
    1253513005
     
    1279613266    </attribute>
    1279713267
    12798     <attribute name="supportedParavirtProviders" type="ParavirtProvider" safearray="yes" readonly="yes">
    12799       <desc>
    12800         Returns an array of officially supported values for enum <link to="ParavirtProvider"/>,
    12801         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12802       </desc>
    12803     </attribute>
    12804 
    1280513268    <attribute name="supportedClipboardModes" type="ClipboardMode" safearray="yes" readonly="yes">
    1280613269      <desc>
     
    1281713280    </attribute>
    1281813281
    12819     <attribute name="supportedFirmwareTypes" type="FirmwareType" safearray="yes" readonly="yes">
    12820       <desc>
    12821         Returns an array of officially supported values for enum <link to="FirmwareType"/>,
    12822         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12823       </desc>
    12824     </attribute>
    12825 
    1282613282    <attribute name="supportedPointingHIDTypes" type="PointingHIDType" safearray="yes" readonly="yes">
    1282713283      <desc>
     
    1290113357    </attribute>
    1290213358
    12903     <attribute name="supportedGraphicsControllerTypes" type="GraphicsControllerType" safearray="yes" readonly="yes">
    12904       <desc>
    12905         Returns an array of officially supported values for enum <link to="GraphicsControllerType"/>,
    12906         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12907       </desc>
    12908     </attribute>
    12909 
    1291013359    <attribute name="supportedCloneOptions" type="CloneOptions" safearray="yes" readonly="yes">
    1291113360      <desc>
     
    1293613385    </attribute>
    1293713386
    12938     <attribute name="supportedNetworkAdapterTypes" type="NetworkAdapterType" safearray="yes" readonly="yes">
    12939       <desc>
    12940         Returns an array of officially supported values for enum <link to="NetworkAdapterType"/>,
    12941         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12942       </desc>
    12943     </attribute>
    12944 
    1294513387    <attribute name="supportedPortModes" type="PortMode" safearray="yes" readonly="yes">
    1294613388      <desc>
     
    1295013392    </attribute>
    1295113393
    12952     <attribute name="supportedUartTypes" type="UartType" safearray="yes" readonly="yes">
    12953       <desc>
    12954         Returns an array of officially supported values for enum <link to="UartType"/>,
    12955         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12956       </desc>
    12957     </attribute>
    12958 
    12959     <attribute name="supportedUSBControllerTypes" type="USBControllerType" safearray="yes" readonly="yes">
    12960       <desc>
    12961         Returns an array of officially supported values for enum <link to="USBControllerType"/>,
    12962         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12963       </desc>
    12964     </attribute>
    12965 
    1296613394    <attribute name="supportedAudioDriverTypes" type="AudioDriverType" safearray="yes" readonly="yes">
    1296713395      <desc>
     
    1297113399    </attribute>
    1297213400
    12973     <attribute name="supportedAudioControllerTypes" type="AudioControllerType" safearray="yes" readonly="yes">
    12974       <desc>
    12975         Returns an array of officially supported values for enum <link to="AudioControllerType"/>,
    12976         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12977       </desc>
    12978     </attribute>
    12979 
    12980     <attribute name="supportedStorageBuses" type="StorageBus" safearray="yes" readonly="yes">
    12981       <desc>
    12982         Returns an array of officially supported values for enum <link to="StorageBus"/>,
    12983         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12984       </desc>
    12985     </attribute>
    12986 
    12987     <attribute name="supportedStorageControllerTypes" type="StorageControllerType" safearray="yes" readonly="yes">
    12988       <desc>
    12989         Returns an array of officially supported values for enum <link to="StorageControllerType"/>,
    12990         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12991       </desc>
    12992     </attribute>
    12993 
    12994     <attribute name="supportedChipsetTypes" type="ChipsetType" safearray="yes" readonly="yes">
    12995       <desc>
    12996         Returns an array of officially supported values for enum <link to="ChipsetType"/>,
    12997         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    12998       </desc>
    12999     </attribute>
    13000 
    13001     <attribute name="supportedIommuTypes" type="IommuType" safearray="yes" readonly="yes">
    13002       <desc>
    13003         Returns an array of officially supported values for enum <link to="IommuType"/>,
    13004         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    13005       </desc>
    13006     </attribute>
    13007 
    13008     <attribute name="supportedTpmTypes" type="TpmType" safearray="yes" readonly="yes">
    13009       <desc>
    13010         Returns an array of officially supported values for enum <link to="TpmType"/>,
    13011         in the sense of what is e.g. worth offering in the VirtualBox GUI.
    13012       </desc>
    13013     </attribute>
    13014 
    1301513401    <attribute name="languageId" type="wstring">
    1301613402      <desc>
     
    1301813404      </desc>
    1301913405    </attribute>
    13020 
    13021     <method name="getMaxNetworkAdapters">
    13022       <desc>
    13023         Maximum total number of network adapters associated with every
    13024         <link to="IMachine"/> instance.
    13025       </desc>
    13026 
    13027       <param name="chipset" type="ChipsetType" dir="in">
    13028         <desc>The chipset type to get the value for.</desc>
    13029       </param>
    13030 
    13031 
    13032       <param name="maxNetworkAdapters" type="unsigned long" dir="return">
    13033         <desc>The maximum total number of network adapters allowed.</desc>
    13034       </param>
    13035 
    13036     </method>
    13037 
    13038     <method name="getMaxNetworkAdaptersOfType">
    13039       <desc>
    13040         Maximum number of network adapters of a given attachment type,
    13041         associated with every <link to="IMachine"/> instance.
    13042       </desc>
    13043 
    13044       <param name="chipset" type="ChipsetType" dir="in">
    13045         <desc>The chipset type to get the value for.</desc>
    13046       </param>
    13047 
    13048       <param name="type" type="NetworkAttachmentType" dir="in">
    13049         <desc>Type of attachment.</desc>
    13050       </param>
    13051 
    13052       <param name="maxNetworkAdapters" type="unsigned long" dir="return">
    13053         <desc>The maximum number of network adapters allowed for
    13054           particular chipset and attachment type.</desc>
    13055       </param>
    13056 
    13057     </method>
    13058 
    13059 
    13060     <method name="getMaxDevicesPerPortForStorageBus">
    13061       <desc>Returns the maximum number of devices which can be attached to a port
    13062       for the given storage bus.</desc>
    13063 
    13064       <param name="bus" type="StorageBus" dir="in">
    13065         <desc>The storage bus type to get the value for.</desc>
    13066       </param>
    13067 
    13068       <param name="maxDevicesPerPort" type="unsigned long" dir="return">
    13069         <desc>The maximum number of devices which can be attached to the port for the given
    13070         storage bus.</desc>
    13071       </param>
    13072     </method>
    13073 
    13074     <method name="getMinPortCountForStorageBus">
    13075       <desc>Returns the minimum number of ports the given storage bus supports.</desc>
    13076 
    13077       <param name="bus" type="StorageBus" dir="in">
    13078         <desc>The storage bus type to get the value for.</desc>
    13079       </param>
    13080 
    13081       <param name="minPortCount" type="unsigned long" dir="return">
    13082         <desc>The minimum number of ports for the given storage bus.</desc>
    13083       </param>
    13084     </method>
    13085 
    13086     <method name="getMaxPortCountForStorageBus">
    13087       <desc>Returns the maximum number of ports the given storage bus supports.</desc>
    13088 
    13089       <param name="bus" type="StorageBus" dir="in">
    13090         <desc>The storage bus type to get the value for.</desc>
    13091       </param>
    13092 
    13093       <param name="maxPortCount" type="unsigned long" dir="return">
    13094         <desc>The maximum number of ports for the given storage bus.</desc>
    13095       </param>
    13096     </method>
    13097 
    13098     <method name="getMaxInstancesOfStorageBus">
    13099       <desc>Returns the maximum number of storage bus instances which
    13100         can be configured for each VM. This corresponds to the number of
    13101         storage controllers one can have. Value may depend on chipset type
    13102         used.</desc>
    13103 
    13104       <param name="chipset" type="ChipsetType" dir="in">
    13105         <desc>The chipset type to get the value for.</desc>
    13106       </param>
    13107 
    13108       <param name="bus" type="StorageBus" dir="in">
    13109         <desc>The storage bus type to get the value for.</desc>
    13110       </param>
    13111 
    13112       <param name="maxInstances" type="unsigned long" dir="return">
    13113         <desc>The maximum number of instances for the given storage bus.</desc>
    13114       </param>
    13115     </method>
    13116 
    13117     <method name="getDeviceTypesForStorageBus">
    13118       <desc>Returns list of all the supported device types
    13119         (<link to="DeviceType"/>) for the given type of storage
    13120         bus.</desc>
    13121 
    13122       <param name="bus" type="StorageBus" dir="in">
    13123         <desc>The storage bus type to get the value for.</desc>
    13124       </param>
    13125 
    13126       <param name="deviceTypes" type="DeviceType" safearray="yes" dir="return">
    13127         <desc>The list of all supported device types for the given storage bus.</desc>
    13128       </param>
    13129     </method>
    13130 
    13131     <method name="getStorageBusForStorageControllerType">
    13132       <desc>Returns the <link to="StorageBus"/> enum value
    13133         for a given storage controller type.</desc>
    13134 
    13135       <param name="storageControllerType" type="StorageControllerType" dir="in">
    13136         <desc>The storage controller type to get the value for.</desc>
    13137       </param>
    13138 
    13139       <param name="storageBus" type="StorageBus" dir="return">
    13140         <desc>The storage bus which is applicable.</desc>
    13141       </param>
    13142     </method>
    13143 
    13144     <method name="getStorageControllerTypesForStorageBus">
    13145       <desc>Returns the possible <link to="StorageControllerType"/> enum values
    13146         for a given storage bus.</desc>
    13147 
    13148       <param name="storageBus" type="StorageBus" dir="in">
    13149         <desc>The storage bus type to get the values for.</desc>
    13150       </param>
    13151 
    13152       <param name="storageControllerType" type="StorageControllerType" safearray="yes" dir="return">
    13153         <desc>The enum values (sorted by what should be a sensible decreasing
    13154         importance of the type) which are valid.</desc>
    13155       </param>
    13156     </method>
    1315713406
    1315813407    <method name="getDefaultIoCacheSettingForStorageController" dtracename="getDefaultStorageCtrlCacheSetting">
     
    1316613415      <param name="enabled" type="boolean" dir="return">
    1316713416        <desc>Returned flag indicating the default value</desc>
    13168       </param>
    13169     </method>
    13170 
    13171     <method name="getStorageControllerHotplugCapable">
    13172       <desc>Returns whether the given storage controller supports
    13173         hot-plugging devices.</desc>
    13174 
    13175       <param name="controllerType" type="StorageControllerType" dir="in">
    13176         <desc>The storage controller to check the setting for.</desc>
    13177       </param>
    13178 
    13179       <param name="hotplugCapable" type="boolean" dir="return">
    13180         <desc>Returned flag indicating whether the controller is hotplug capable</desc>
    13181       </param>
    13182     </method>
    13183 
    13184     <method name="getMaxInstancesOfUSBControllerType">
    13185       <desc>Returns the maximum number of USB controller instances which
    13186         can be configured for each VM. This corresponds to the number of
    13187         USB controllers one can have. Value may depend on chipset type
    13188         used.</desc>
    13189 
    13190       <param name="chipset" type="ChipsetType" dir="in">
    13191         <desc>The chipset type to get the value for.</desc>
    13192       </param>
    13193 
    13194       <param name="type" type="USBControllerType" dir="in">
    13195         <desc>The USB controller type to get the value for.</desc>
    13196       </param>
    13197 
    13198       <param name="maxInstances" type="unsigned long" dir="return">
    13199         <desc>The maximum number of instances for the given USB controller type.</desc>
    1320013417      </param>
    1320113418    </method>
     
    1323013447    >
    1323113448    <desc>
     13449      Specifies a guest OS type and its recommendations.
    1323213450    </desc>
    1323313451
     
    1325313471
    1325413472    <attribute name="recommendedIOAPIC" type="boolean" readonly="yes">
    13255       <desc>Returns @c true if I/O-APIC recommended for this OS type.</desc>
     13473      <desc>Returns @c true if I/O-APIC recommended for this OS type. Only applies to x86-based platforms.</desc>
    1325613474    </attribute>
    1325713475
    1325813476    <attribute name="recommendedVirtEx" type="boolean" readonly="yes">
    13259       <desc>Returns @c true if VT-x or AMD-V recommended for this OS type.</desc>
     13477      <desc>Returns @c true if VT-x or AMD-V recommended for this OS type. Only applies to x86-based platforms.</desc>
    1326013478    </attribute>
    1326113479
     
    1328913507
    1329013508    <attribute name="recommendedPAE" type="boolean" readonly="yes">
    13291       <desc>Returns @c true if using PAE is recommended for this OS type.</desc>
     13509      <desc>Returns @c true if using PAE is recommended for this OS type. Only applies to x86-based platforms.</desc>
    1329213510    </attribute>
    1329313511
     
    1331713535
    1331813536    <attribute name="recommendedHPET" type="boolean" readonly="yes">
    13319       <desc>Returns @c true if using HPET is recommended for this OS type.</desc>
     13537      <desc>Returns @c true if using HPET is recommended for this OS type. Only applies to x86-based platforms.</desc>
    1332013538    </attribute>
    1332113539
     
    1332513543
    1332613544    <attribute name="recommendedRTCUseUTC" type="boolean" readonly="yes">
    13327       <desc>Returns @c true if the RTC of this VM should be set to UTC</desc>
     13545      <desc>Returns @c true if the RTC of this VM should be set to UTC.</desc>
    1332813546    </attribute>
    1332913547
     
    1335613574    </attribute>
    1335713575
     13576    <!-- @todo r=bird: Rename this to some more generic term that can be applied to ARM? -->
    1335813577    <attribute name="recommendedTFReset" type="boolean" readonly="yes">
    1335913578      <desc>Returns @c true if using VCPU reset on triple fault is recommended for this OS type.</desc>
     
    1336113580
    1336213581    <attribute name="recommendedX2APIC" type="boolean" readonly="yes">
    13363       <desc>Returns @c true if X2APIC is recommended for this OS type.</desc>
     13582      <desc>Returns @c true if X2APIC is recommended for this OS type. Only applies to x86-based platforms.</desc>
    1336413583    </attribute>
    1336513584
     
    2204822267    </attribute>
    2204922268
    22050     <attribute name="IOBase" type="unsigned long">
    22051       <desc>Base I/O address of the serial port.</desc>
     22269    <attribute name="IOAddress" type="unsigned long">
     22270      <desc>Base I/O address of the serial port. For x86, this is an I/O port, for ARM this is an MMIO address.</desc>
    2205222271    </attribute>
    2205322272
     
    2213622355
    2213722356    <attribute name="IOBase" type="unsigned long">
    22138       <desc>Base I/O address of the parallel port.</desc>
     22357      <desc>Base I/O address of the parallel port. Only for X86-based platforms.</desc>
    2213922358    </attribute>
    2214022359
    2214122360    <attribute name="IRQ" type="unsigned long">
    22142       <desc>IRQ number of the parallel port.</desc>
     22361      <desc>IRQ number of the parallel port. Only for X86-based platforms.</desc>
    2214322362    </attribute>
    2214422363
     
    2217322392    </const>
    2217422393    <const name="HwVirt"            value="2">
    22175       <desc>Hardware assisted virtualization thru HM.</desc>
     22394      <desc>Hardware assisted virtualization thru HM. Only for x86-based hosts.</desc>
    2217622395    </const>
    2217722396    <const name="NativeApi"         value="3">
     
    2349723716  <enum
    2349823717    name="AudioControllerType"
    23499     uuid="7afd395c-42c3-444e-8788-3ce80292f36c"
     23718    uuid="6389dcc9-4e60-4983-9418-299e602efafc"
    2350023719    >
    2350123720    <desc>
     
    2350323722    </desc>
    2350423723
    23505     <const name="AC97"  value="0"/>
    23506     <const name="SB16"  value="1"/>
    23507     <const name="HDA"   value="2"/>
     23724    <const name="AC97"        value="0"/>
     23725    <const name="SB16"        value="1"/>
     23726    <const name="HDA"         value="2"/>
     23727    <const name="VirtioSound" value="3"/>
    2350823728  </enum>
    2350923729
     
    2500525225  <enum
    2500625226    name="ChipsetType"
    25007     uuid="8b4096a8-a7c3-4d3b-bbb1-05a0a51ec394"
    25008     >
    25009     <desc>
    25010       Type of emulated chipset (mostly southbridge).
     25227    uuid="733d5f16-1f47-4e25-b272-d7c138bc2e3d"
     25228    >
     25229    <desc>
     25230      Type of emulated chipset (think x86 southbridge or ARM SoC/board).
    2501125231    </desc>
    2501225232
     
    2501525235    </const>
    2501625236    <const name="PIIX3" value="1">
    25017       <desc>A PIIX3 (PCI IDE ISA Xcelerator) chipset.</desc>
     25237      <desc>x86: A PIIX3 (PCI IDE ISA Xcelerator) chipset.</desc>
    2501825238    </const>
    2501925239    <const name="ICH9"  value="2">
    25020       <desc>A ICH9 (I/O Controller Hub) chipset.</desc>
     25240      <desc>x86: A ICH9 (I/O Controller Hub) chipset.</desc>
     25241    </const>
     25242    <const name="ARMv8Virtual" value="3">
     25243      <desc>ARM: Virtual ARMv8 base platform (board).</desc>
    2502125244    </const>
    2502225245  </enum>
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette