json: Fix streamer not to ignore trailing unterminated structures
[qemu/ar7.git] / qapi / common.json
blobc367adc4b663a9afcee8f4d040b968074156bd54
1 # -*- Mode: Python -*-
3 ##
4 # = Common data types
5 ##
7 ##
8 # @QapiErrorClass:
10 # QEMU error classes
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
15 # @CommandNotFound: the requested command has not been found
17 # @DeviceNotActive: a device has failed to be become active
19 # @DeviceNotFound: the requested device has not been found
21 # @KVMMissingCap: the requested operation can't be fulfilled because a
22 #                 required KVM capability is missing
24 # Since: 1.2
26 { 'enum': 'QapiErrorClass',
27   # Keep this in sync with ErrorClass in error.h
28   'data': [ 'GenericError', 'CommandNotFound',
29             'DeviceNotActive', 'DeviceNotFound', 'KVMMissingCap' ] }
32 # @IoOperationType:
34 # An enumeration of the I/O operation types
36 # @read: read operation
38 # @write: write operation
40 # Since: 2.1
42 { 'enum': 'IoOperationType',
43   'data': [ 'read', 'write' ] }
46 # @OnOffAuto:
48 # An enumeration of three options: on, off, and auto
50 # @auto: QEMU selects the value between on and off
52 # @on: Enabled
54 # @off: Disabled
56 # Since: 2.2
58 { 'enum': 'OnOffAuto',
59   'data': [ 'auto', 'on', 'off' ] }
62 # @OnOffSplit:
64 # An enumeration of three values: on, off, and split
66 # @on: Enabled
68 # @off: Disabled
70 # @split: Mixed
72 # Since: 2.6
74 { 'enum': 'OnOffSplit',
75   'data': [ 'on', 'off', 'split' ] }
78 # @String:
80 # A fat type wrapping 'str', to be embedded in lists.
82 # Since: 1.2
84 { 'struct': 'String',
85   'data': {
86     'str': 'str' } }
89 # @StrOrNull:
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.
95 # @s: the string value
96 # @n: no string value
98 # Since: 2.10
100 { 'alternate': 'StrOrNull',
101   'data': { 's': 'str',
102             'n': 'null' } }
105 # @OffAutoPCIBAR:
107 # An enumeration of options for specifying a PCI BAR
109 # @off: The specified feature is disabled
111 # @auto: The PCI BAR for the feature is automatically selected
113 # @bar0: PCI BAR0 is used for the feature
115 # @bar1: PCI BAR1 is used for the feature
117 # @bar2: PCI BAR2 is used for the feature
119 # @bar3: PCI BAR3 is used for the feature
121 # @bar4: PCI BAR4 is used for the feature
123 # @bar5: PCI BAR5 is used for the feature
125 # Since: 2.12
127 { 'enum': 'OffAutoPCIBAR',
128   'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }
131 # @SysEmuTarget:
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.
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".
143 # Since: 3.0
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' ] }