11 # An enumeration of the I/O operation types
13 # @read: read operation
15 # @write: write operation
19 { 'enum': 'IoOperationType',
20 'data': [ 'read', 'write' ] }
25 # An enumeration of three options: on, off, and auto
27 # @auto: QEMU selects the value between on and off
35 { 'enum': 'OnOffAuto',
36 'data': [ 'auto', 'on', 'off' ] }
41 # An enumeration of three values: on, off, and split
51 { 'enum': 'OnOffSplit',
52 'data': [ 'on', 'off', 'split' ] }
57 # A fat type wrapping 'str', to be embedded in lists.
68 # This is a string value or the explicit lack of a string (null
69 # pointer in C). Intended for cases when 'optional absent' already
70 # has a different meaning.
72 # @s: the string value
77 { 'alternate': 'StrOrNull',
84 # An enumeration of options for specifying a PCI BAR
86 # @off: The specified feature is disabled
88 # @auto: The PCI BAR for the feature is automatically selected
90 # @bar0: PCI BAR0 is used for the feature
92 # @bar1: PCI BAR1 is used for the feature
94 # @bar2: PCI BAR2 is used for the feature
96 # @bar3: PCI BAR3 is used for the feature
98 # @bar4: PCI BAR4 is used for the feature
100 # @bar5: PCI BAR5 is used for the feature
104 { 'enum': 'OffAutoPCIBAR',
105 'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }
110 # An enumeration of PCIe link speeds in units of GT/s
122 { 'enum': 'PCIELinkSpeed',
123 'data': [ '2_5', '5', '8', '16' ] }
128 # An enumeration of PCIe link width
146 { 'enum': 'PCIELinkWidth',
147 'data': [ '1', '2', '4', '8', '12', '16', '32' ] }
152 # Host memory policy types
154 # @default: restore default policy, remove any nondefault policy
156 # @preferred: set the preferred host nodes for allocation
158 # @bind: a strict policy that restricts memory allocation to the
159 # host nodes specified
161 # @interleave: memory allocations are interleaved across the set
162 # of host nodes specified
166 { 'enum': 'HostMemPolicy',
167 'data': [ 'default', 'preferred', 'bind', 'interleave' ] }
170 # @NetFilterDirection:
172 # Indicates whether a netfilter is attached to a netdev's transmit queue or
173 # receive queue or both.
175 # @all: the filter is attached both to the receive and the transmit
176 # queue of the netdev (default).
178 # @rx: the filter is attached to the receive queue of the netdev,
179 # where it will receive packets sent to the netdev.
181 # @tx: the filter is attached to the transmit queue of the netdev,
182 # where it will receive packets sent by the netdev.
186 { 'enum': 'NetFilterDirection',
187 'data': [ 'all', 'rx', 'tx' ] }
192 # Keys to toggle input-linux between host and guest.
197 { 'enum': 'GrabToggleKeys',
198 'data': [ 'ctrl-ctrl', 'alt-alt', 'shift-shift','meta-meta', 'scrolllock',
199 'ctrl-scrolllock' ] }
202 # @HumanReadableText:
204 # @human-readable-text: Formatted output intended for humans.
209 { 'struct': 'HumanReadableText',
210 'data': { 'human-readable-text': 'str' } }