Merge remote-tracking branch 'remotes/kraxel/tags/microvm-20200617-pull-request'...
[qemu.git] / qapi / common.json
blob7b9cbcd97b4b517e5ecb77c1793b25e2485556f2
1 # -*- Mode: Python -*-
3 ##
4 # = Common data types
5 ##
7 ##
8 # @IoOperationType:
10 # An enumeration of the I/O operation types
12 # @read: read operation
14 # @write: write operation
16 # Since: 2.1
18 { 'enum': 'IoOperationType',
19   'data': [ 'read', 'write' ] }
22 # @OnOffAuto:
24 # An enumeration of three options: on, off, and auto
26 # @auto: QEMU selects the value between on and off
28 # @on: Enabled
30 # @off: Disabled
32 # Since: 2.2
34 { 'enum': 'OnOffAuto',
35   'data': [ 'auto', 'on', 'off' ] }
38 # @OnOffSplit:
40 # An enumeration of three values: on, off, and split
42 # @on: Enabled
44 # @off: Disabled
46 # @split: Mixed
48 # Since: 2.6
50 { 'enum': 'OnOffSplit',
51   'data': [ 'on', 'off', 'split' ] }
54 # @String:
56 # A fat type wrapping 'str', to be embedded in lists.
58 # Since: 1.2
60 { 'struct': 'String',
61   'data': {
62     'str': 'str' } }
65 # @StrOrNull:
67 # This is a string value or the explicit lack of a string (null
68 # pointer in C).  Intended for cases when 'optional absent' already
69 # has a different meaning.
71 # @s: the string value
72 # @n: no string value
74 # Since: 2.10
76 { 'alternate': 'StrOrNull',
77   'data': { 's': 'str',
78             'n': 'null' } }
81 # @OffAutoPCIBAR:
83 # An enumeration of options for specifying a PCI BAR
85 # @off: The specified feature is disabled
87 # @auto: The PCI BAR for the feature is automatically selected
89 # @bar0: PCI BAR0 is used for the feature
91 # @bar1: PCI BAR1 is used for the feature
93 # @bar2: PCI BAR2 is used for the feature
95 # @bar3: PCI BAR3 is used for the feature
97 # @bar4: PCI BAR4 is used for the feature
99 # @bar5: PCI BAR5 is used for the feature
101 # Since: 2.12
103 { 'enum': 'OffAutoPCIBAR',
104   'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] }
107 # @PCIELinkSpeed:
109 # An enumeration of PCIe link speeds in units of GT/s
111 # @2_5: 2.5GT/s
113 # @5: 5.0GT/s
115 # @8: 8.0GT/s
117 # @16: 16.0GT/s
119 # Since: 4.0
121 { 'enum': 'PCIELinkSpeed',
122   'data': [ '2_5', '5', '8', '16' ] }
125 # @PCIELinkWidth:
127 # An enumeration of PCIe link width
129 # @1: x1
131 # @2: x2
133 # @4: x4
135 # @8: x8
137 # @12: x12
139 # @16: x16
141 # @32: x32
143 # Since: 4.0
145 { 'enum': 'PCIELinkWidth',
146   'data': [ '1', '2', '4', '8', '12', '16', '32' ] }