]> git.proxmox.com Git - mirror_qemu.git/blame - qapi/common.json
Merge remote-tracking branch 'remotes/armbru/tags/pull-error-2018-08-27-v2' into...
[mirror_qemu.git] / qapi / common.json
CommitLineData
d34bda71 1# -*- Mode: Python -*-
d3a48372
MAL
2
3##
f5cf31c5 4# = Common data types
d3a48372 5##
d34bda71
BC
6
7##
5072f7b3 8# @QapiErrorClass:
d34bda71
BC
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#
d34bda71
BC
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##
f22a28b8
EB
26{ 'enum': 'QapiErrorClass',
27 # Keep this in sync with ErrorClass in error.h
c01c214b 28 'data': [ 'GenericError', 'CommandNotFound',
d34bda71
BC
29 'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
30
2031c133
MA
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
d1048bef 45##
5072f7b3 46# @OnOffAuto:
d1048bef
DS
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' ] }
32c18a2d
MG
60
61##
5072f7b3 62# @OnOffSplit:
32c18a2d
MG
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' ] }
a2ff5a48
MA
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' } }
48685a8e
MA
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' } }
c3bbbdbf
AW
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' ] }
9a801c7d
LE
129
130##
131# @SysEmuTarget:
132#
133# The comprehensive enumeration of QEMU system emulation ("softmmu")
134# targets. Run "./configure --help" in the project root directory, and
135# look for the *-softmmu targets near the "--target-list" option. The
136# individual target constants are not documented here, for the time
137# being.
138#
139# Notes: The resulting QMP strings can be appended to the "qemu-system-"
140# prefix to produce the corresponding QEMU executable name. This
141# is true even for "qemu-system-x86_64".
142#
51f63ec7 143# Since: 3.0
9a801c7d
LE
144##
145{ 'enum' : 'SysEmuTarget',
146 'data' : [ 'aarch64', 'alpha', 'arm', 'cris', 'hppa', 'i386', 'lm32',
147 'm68k', 'microblaze', 'microblazeel', 'mips', 'mips64',
148 'mips64el', 'mipsel', 'moxie', 'nios2', 'or1k', 'ppc',
149 'ppc64', 'ppcemb', 'riscv32', 'riscv64', 's390x', 'sh4',
150 'sh4eb', 'sparc', 'sparc64', 'tricore', 'unicore32',
151 'x86_64', 'xtensa', 'xtensaeb' ] }