summaryrefslogblamecommitdiffstats
path: root/qapi/common.json
blob: c367adc4b663a9afcee8f4d040b968074156bd54 (plain) (tree)
1
2
3
4
5
6
7
8
                      

  
                     
  

  
                  







                                                                            








                                                                      

                                                
                                              


                                                                    













                                           
             












                                                    

  
              












                                                    










                                                     















                                                                   

























                                                                             













                                                                        
            







                                                                       
# -*- Mode: Python -*-

##
# = Common data types
##

##
# @QapiErrorClass:
#
# QEMU error classes
#
# @GenericError: this is used for errors that don't require a specific error
#                class. This should be the default case for most errors
#
# @CommandNotFound: the requested command has not been found
#
# @DeviceNotActive: a device has failed to be become active
#
# @DeviceNotFound: the requested device has not been found
#
# @KVMMissingCap: the requested operation can't be fulfilled because a
#                 required KVM capability is missing
#
# Since: 1.2
##
{ 'enum': 'QapiErrorClass',
  # Keep this in sync with ErrorClass in error.h
  'data': [ 'GenericError', 'CommandNotFound',
            'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }

##
# @IoOperationType:
#
# An enumeration of the I/O operation types
#
# @read: read operation
#
# @write: write operation
#
# Since: 2.1
##
{ 'enum': 'IoOperationType',
  'data': [ 'read', 'write' ] }

##
# @OnOffAuto:
#
# An enumeration of three options: on, off, and auto
#
# @auto: QEMU selects the value between on and off
#
# @on: Enabled
#
# @off: Disabled
#
# Since: 2.2
##
{ 'enum': 'OnOffAuto',
  'data': [ 'auto', 'on', 'off' ] }

##
# @OnOffSplit:
#
# An enumeration of three values: on, off, and split
#
# @on: Enabled
#
# @off: Disabled
#
# @split: Mixed
#
# Since: 2.6
##
{ 'enum': 'OnOffSplit',
  'data': [ 'on', 'off', 'split' ] }

##
# @String:
#
# A fat type wrapping 'str', to be embedded in lists.
#
# Since: 1.2
##
{ 'struct': 'String',
  'data': {
    'str': 'str' } }

##
# @StrOrNull:
#
# This is a string value or the explicit lack of a string (null
# pointer in C).  Intended for cases when 'optional absent' already
# has a different meaning.
#
# @s: the string value
# @n: no string value
#
# Since: 2.10
##
{ 'alternate': 'StrOrNull',
  'data': { 's': 'str',
            'n': 'null' } }

##
# @OffAutoPCIBAR:
#
# An enumeration of options for specifying a PCI BAR
#
# @off: The specified feature is disabled
#
# @auto: The PCI BAR for the feature is automatically selected
#
# @bar0: PCI BAR0 is used for the feature
#
# @bar1: PCI BAR1 is used for the feature
#
# @bar2: PCI BAR2 is used for the feature
#
# @bar3: PCI BAR3 is used for the feature
#
# @bar4: PCI BAR4 is used for the feature
#
# @bar5: PCI BAR5 is used for the feature
#
# Since: 2.12
##
{ 'enum': 'OffAutoPCIBAR',
  'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }

##
# @SysEmuTarget:
#
# The comprehensive enumeration of QEMU system emulation ("softmmu")
# targets. Run "./configure --help" in the project root directory, and
# look for the *-softmmu targets near the "--target-list" option. The
# individual target constants are not documented here, for the time
# being.
#
# Notes: The resulting QMP strings can be appended to the "qemu-system-"
#        prefix to produce the corresponding QEMU executable name. This
#        is true even for "qemu-system-x86_64".
#
# Since: 3.0
##
{ 'enum' : 'SysEmuTarget',
  'data' : [ 'aarch64', 'alpha', 'arm', 'cris', 'hppa', 'i386', 'lm32',
             'm68k', 'microblaze', 'microblazeel', 'mips', 'mips64',
             'mips64el', 'mipsel', 'moxie', 'nios2', 'or1k', 'ppc',
             'ppc64', 'ppcemb', 'riscv32', 'riscv64', 's390x', 'sh4',
             'sh4eb', 'sparc', 'sparc64', 'tricore', 'unicore32',
             'x86_64', 'xtensa', 'xtensaeb' ] }