misc/pca955*: Move models under hw/gpio
[qemu/kevin.git] / qapi / common.json
blob7558ce5430d5cbccd11c03ba8296ea0618bc64c0
1 # -*- Mode: Python -*-
2 # vim: filetype=python
4 ##
5 # = Common data types
6 ##
8 ##
9 # @IoOperationType:
11 # An enumeration of the I/O operation types
13 # @read: read operation
15 # @write: write operation
17 # Since: 2.1
19 { 'enum': 'IoOperationType',
20   'data': [ 'read', 'write' ] }
23 # @OnOffAuto:
25 # An enumeration of three options: on, off, and auto
27 # @auto: QEMU selects the value between on and off
29 # @on: Enabled
31 # @off: Disabled
33 # Since: 2.2
35 { 'enum': 'OnOffAuto',
36   'data': [ 'auto', 'on', 'off' ] }
39 # @OnOffSplit:
41 # An enumeration of three values: on, off, and split
43 # @on: Enabled
45 # @off: Disabled
47 # @split: Mixed
49 # Since: 2.6
51 { 'enum': 'OnOffSplit',
52   'data': [ 'on', 'off', 'split' ] }
55 # @StrOrNull:
57 # This is a string value or the explicit lack of a string (null
58 # pointer in C).  Intended for cases when 'optional absent' already
59 # has a different meaning.
61 # @s: the string value
63 # @n: no string value
65 # Since: 2.10
67 { 'alternate': 'StrOrNull',
68   'data': { 's': 'str',
69             'n': 'null' } }
72 # @OffAutoPCIBAR:
74 # An enumeration of options for specifying a PCI BAR
76 # @off: The specified feature is disabled
78 # @auto: The PCI BAR for the feature is automatically selected
80 # @bar0: PCI BAR0 is used for the feature
82 # @bar1: PCI BAR1 is used for the feature
84 # @bar2: PCI BAR2 is used for the feature
86 # @bar3: PCI BAR3 is used for the feature
88 # @bar4: PCI BAR4 is used for the feature
90 # @bar5: PCI BAR5 is used for the feature
92 # Since: 2.12
94 { 'enum': 'OffAutoPCIBAR',
95   'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }
98 # @PCIELinkSpeed:
100 # An enumeration of PCIe link speeds in units of GT/s
102 # @2_5: 2.5GT/s
104 # @5: 5.0GT/s
106 # @8: 8.0GT/s
108 # @16: 16.0GT/s
110 # @32: 32.0GT/s (since 9.0)
112 # @64: 64.0GT/s (since 9.0)
114 # Since: 4.0
116 { 'enum': 'PCIELinkSpeed',
117   'data': [ '2_5', '5', '8', '16', '32', '64' ] }
120 # @PCIELinkWidth:
122 # An enumeration of PCIe link width
124 # @1: x1
126 # @2: x2
128 # @4: x4
130 # @8: x8
132 # @12: x12
134 # @16: x16
136 # @32: x32
138 # Since: 4.0
140 { 'enum': 'PCIELinkWidth',
141   'data': [ '1', '2', '4', '8', '12', '16', '32' ] }
144 # @HostMemPolicy:
146 # Host memory policy types
148 # @default: restore default policy, remove any nondefault policy
150 # @preferred: set the preferred host nodes for allocation
152 # @bind: a strict policy that restricts memory allocation to the host
153 #     nodes specified
155 # @interleave: memory allocations are interleaved across the set of
156 #     host nodes specified
158 # Since: 2.1
160 { 'enum': 'HostMemPolicy',
161   'data': [ 'default', 'preferred', 'bind', 'interleave' ] }
164 # @NetFilterDirection:
166 # Indicates whether a netfilter is attached to a netdev's transmit
167 # queue or receive queue or both.
169 # @all: the filter is attached both to the receive and the transmit
170 #     queue of the netdev (default).
172 # @rx: the filter is attached to the receive queue of the netdev,
173 #     where it will receive packets sent to the netdev.
175 # @tx: the filter is attached to the transmit queue of the netdev,
176 #     where it will receive packets sent by the netdev.
178 # Since: 2.5
180 { 'enum': 'NetFilterDirection',
181   'data': [ 'all', 'rx', 'tx' ] }
184 # @GrabToggleKeys:
186 # Keys to toggle input-linux between host and guest.
188 # Since: 4.0
190 { 'enum': 'GrabToggleKeys',
191   'data': [ 'ctrl-ctrl', 'alt-alt', 'shift-shift','meta-meta', 'scrolllock',
192             'ctrl-scrolllock' ] }
195 # @HumanReadableText:
197 # @human-readable-text: Formatted output intended for humans.
199 # Since: 6.2
201 { 'struct': 'HumanReadableText',
202   'data': { 'human-readable-text': 'str' } }