qemu/qapi/common.json
<<
>>
Prefs
   1# -*- Mode: Python -*-
   2
   3##
   4# = Common data types
   5##
   6
   7##
   8# @QapiErrorClass:
   9#
  10# QEMU error classes
  11#
  12# @GenericError: this is used for errors that don't require a specific error
  13#                class. This should be the default case for most errors
  14#
  15# @CommandNotFound: the requested command has not been found
  16#
  17# @DeviceNotActive: a device has failed to be become active
  18#
  19# @DeviceNotFound: the requested device has not been found
  20#
  21# @KVMMissingCap: the requested operation can't be fulfilled because a
  22#                 required KVM capability is missing
  23#
  24# Since: 1.2
  25##
  26{ 'enum': 'QapiErrorClass',
  27  # Keep this in sync with ErrorClass in error.h
  28  'data': [ 'GenericError', 'CommandNotFound',
  29            'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
  30
  31##
  32# @IoOperationType:
  33#
  34# An enumeration of the I/O operation types
  35#
  36# @read: read operation
  37#
  38# @write: write operation
  39#
  40# Since: 2.1
  41##
  42{ 'enum': 'IoOperationType',
  43  'data': [ 'read', 'write' ] }
  44
  45##
  46# @OnOffAuto:
  47#
  48# An enumeration of three options: on, off, and auto
  49#
  50# @auto: QEMU selects the value between on and off
  51#
  52# @on: Enabled
  53#
  54# @off: Disabled
  55#
  56# Since: 2.2
  57##
  58{ 'enum': 'OnOffAuto',
  59  'data': [ 'auto', 'on', 'off' ] }
  60
  61##
  62# @OnOffSplit:
  63#
  64# An enumeration of three values: on, off, and split
  65#
  66# @on: Enabled
  67#
  68# @off: Disabled
  69#
  70# @split: Mixed
  71#
  72# Since: 2.6
  73##
  74{ 'enum': 'OnOffSplit',
  75  'data': [ 'on', 'off', 'split' ] }
  76
  77##
  78# @String:
  79#
  80# A fat type wrapping 'str', to be embedded in lists.
  81#
  82# Since: 1.2
  83##
  84{ 'struct': 'String',
  85  'data': {
  86    'str': 'str' } }
  87
  88##
  89# @StrOrNull:
  90#
  91# This is a string value or the explicit lack of a string (null
  92# pointer in C).  Intended for cases when 'optional absent' already
  93# has a different meaning.
  94#
  95# @s: the string value
  96# @n: no string value
  97#
  98# Since: 2.10
  99##
 100{ 'alternate': 'StrOrNull',
 101  'data': { 's': 'str',
 102            'n': 'null' } }
 103
 104##
 105# @OffAutoPCIBAR:
 106#
 107# An enumeration of options for specifying a PCI BAR
 108#
 109# @off: The specified feature is disabled
 110#
 111# @auto: The PCI BAR for the feature is automatically selected
 112#
 113# @bar0: PCI BAR0 is used for the feature
 114#
 115# @bar1: PCI BAR1 is used for the feature
 116#
 117# @bar2: PCI BAR2 is used for the feature
 118#
 119# @bar3: PCI BAR3 is used for the feature
 120#
 121# @bar4: PCI BAR4 is used for the feature
 122#
 123# @bar5: PCI BAR5 is used for the feature
 124#
 125# Since: 2.12
 126##
 127{ 'enum': 'OffAutoPCIBAR',
 128  'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }
 129
 130##
 131# @PCIELinkSpeed:
 132#
 133# An enumeration of PCIe link speeds in units of GT/s
 134#
 135# @2_5: 2.5GT/s
 136#
 137# @5: 5.0GT/s
 138#
 139# @8: 8.0GT/s
 140#
 141# @16: 16.0GT/s
 142#
 143# Since: 4.0
 144##
 145{ 'enum': 'PCIELinkSpeed',
 146  'data': [ '2_5', '5', '8', '16' ] }
 147
 148##
 149# @PCIELinkWidth:
 150#
 151# An enumeration of PCIe link width
 152#
 153# @1: x1
 154#
 155# @2: x2
 156#
 157# @4: x4
 158#
 159# @8: x8
 160#
 161# @12: x12
 162#
 163# @16: x16
 164#
 165# @32: x32
 166#
 167# Since: 4.0
 168##
 169{ 'enum': 'PCIELinkWidth',
 170  'data': [ '1', '2', '4', '8', '12', '16', '32' ] }
 171
 172##
 173# @SysEmuTarget:
 174#
 175# The comprehensive enumeration of QEMU system emulation ("softmmu")
 176# targets. Run "./configure --help" in the project root directory, and
 177# look for the *-softmmu targets near the "--target-list" option. The
 178# individual target constants are not documented here, for the time
 179# being.
 180#
 181# Notes: The resulting QMP strings can be appended to the "qemu-system-"
 182#        prefix to produce the corresponding QEMU executable name. This
 183#        is true even for "qemu-system-x86_64".
 184#
 185# ppcemb: dropped in 3.1
 186#
 187# Since: 3.0
 188##
 189{ 'enum' : 'SysEmuTarget',
 190  'data' : [ 'aarch64', 'alpha', 'arm', 'cris', 'hppa', 'i386', 'lm32',
 191             'm68k', 'microblaze', 'microblazeel', 'mips', 'mips64',
 192             'mips64el', 'mipsel', 'moxie', 'nios2', 'or1k', 'ppc',
 193             'ppc64', 'riscv32', 'riscv64', 's390x', 'sh4',
 194             'sh4eb', 'sparc', 'sparc64', 'tricore', 'unicore32',
 195             'x86_64', 'xtensa', 'xtensaeb' ] }
 196