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
78 { 'alternate': 'StrOrNull',
85 # An enumeration of options for specifying a PCI BAR
87 # @off: The specified feature is disabled
89 # @auto: The PCI BAR for the feature is automatically selected
91 # @bar0: PCI BAR0 is used for the feature
93 # @bar1: PCI BAR1 is used for the feature
95 # @bar2: PCI BAR2 is used for the feature
97 # @bar3: PCI BAR3 is used for the feature
99 # @bar4: PCI BAR4 is used for the feature
101 # @bar5: PCI BAR5 is used for the feature
105 { 'enum': 'OffAutoPCIBAR',
106 'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }
111 # An enumeration of PCIe link speeds in units of GT/s
123 { 'enum': 'PCIELinkSpeed',
124 'data': [ '2_5', '5', '8', '16' ] }
129 # An enumeration of PCIe link width
147 { 'enum': 'PCIELinkWidth',
148 'data': [ '1', '2', '4', '8', '12', '16', '32' ] }
153 # Host memory policy types
155 # @default: restore default policy, remove any nondefault policy
157 # @preferred: set the preferred host nodes for allocation
159 # @bind: a strict policy that restricts memory allocation to the host
162 # @interleave: memory allocations are interleaved across the set of
163 # host nodes specified
167 { 'enum': 'HostMemPolicy',
168 'data': [ 'default', 'preferred', 'bind', 'interleave' ] }
171 # @NetFilterDirection:
173 # Indicates whether a netfilter is attached to a netdev's transmit
174 # queue or receive queue or both.
176 # @all: the filter is attached both to the receive and the transmit
177 # queue of the netdev (default).
179 # @rx: the filter is attached to the receive queue of the netdev,
180 # where it will receive packets sent to the netdev.
182 # @tx: the filter is attached to the transmit queue of the netdev,
183 # where it will receive packets sent by the netdev.
187 { 'enum': 'NetFilterDirection',
188 'data': [ 'all', 'rx', 'tx' ] }
193 # 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.
208 { 'struct': 'HumanReadableText',
209 'data': { 'human-readable-text': 'str' } }