1d34bda71SBenoît Canet# -*- Mode: Python -*- 2f7160f32SAndrea Bolognani# vim: filetype=python 3d3a48372SMarc-André Lureau 4d3a48372SMarc-André Lureau## 5f5cf31c5SMarkus Armbruster# = Common data types 6d3a48372SMarc-André Lureau## 7d34bda71SBenoît Canet 8d34bda71SBenoît Canet## 92031c133SMarkus Armbruster# @IoOperationType: 102031c133SMarkus Armbruster# 112031c133SMarkus Armbruster# An enumeration of the I/O operation types 122031c133SMarkus Armbruster# 132031c133SMarkus Armbruster# @read: read operation 142031c133SMarkus Armbruster# 152031c133SMarkus Armbruster# @write: write operation 162031c133SMarkus Armbruster# 172031c133SMarkus Armbruster# Since: 2.1 182031c133SMarkus Armbruster## 192031c133SMarkus Armbruster{ 'enum': 'IoOperationType', 202031c133SMarkus Armbruster 'data': [ 'read', 'write' ] } 212031c133SMarkus Armbruster 222031c133SMarkus Armbruster## 235072f7b3SMarc-André Lureau# @OnOffAuto: 24d1048befSDon Slutz# 25d1048befSDon Slutz# An enumeration of three options: on, off, and auto 26d1048befSDon Slutz# 27d1048befSDon Slutz# @auto: QEMU selects the value between on and off 28d1048befSDon Slutz# 29d1048befSDon Slutz# @on: Enabled 30d1048befSDon Slutz# 31d1048befSDon Slutz# @off: Disabled 32d1048befSDon Slutz# 33d1048befSDon Slutz# Since: 2.2 34d1048befSDon Slutz## 35d1048befSDon Slutz{ 'enum': 'OnOffAuto', 36d1048befSDon Slutz 'data': [ 'auto', 'on', 'off' ] } 3732c18a2dSMatt Gingell 3832c18a2dSMatt Gingell## 395072f7b3SMarc-André Lureau# @OnOffSplit: 4032c18a2dSMatt Gingell# 4132c18a2dSMatt Gingell# An enumeration of three values: on, off, and split 4232c18a2dSMatt Gingell# 4332c18a2dSMatt Gingell# @on: Enabled 4432c18a2dSMatt Gingell# 4532c18a2dSMatt Gingell# @off: Disabled 4632c18a2dSMatt Gingell# 4732c18a2dSMatt Gingell# @split: Mixed 4832c18a2dSMatt Gingell# 4932c18a2dSMatt Gingell# Since: 2.6 5032c18a2dSMatt Gingell## 5132c18a2dSMatt Gingell{ 'enum': 'OnOffSplit', 5232c18a2dSMatt Gingell 'data': [ 'on', 'off', 'split' ] } 53a2ff5a48SMarkus Armbruster 54a2ff5a48SMarkus Armbruster## 5548685a8eSMarkus Armbruster# @StrOrNull: 5648685a8eSMarkus Armbruster# 5748685a8eSMarkus Armbruster# This is a string value or the explicit lack of a string (null 5848685a8eSMarkus Armbruster# pointer in C). Intended for cases when 'optional absent' already 5948685a8eSMarkus Armbruster# has a different meaning. 6048685a8eSMarkus Armbruster# 6148685a8eSMarkus Armbruster# @s: the string value 62a937b6aaSMarkus Armbruster# 6348685a8eSMarkus Armbruster# @n: no string value 6448685a8eSMarkus Armbruster# 6548685a8eSMarkus Armbruster# Since: 2.10 6648685a8eSMarkus Armbruster## 6748685a8eSMarkus Armbruster{ 'alternate': 'StrOrNull', 6848685a8eSMarkus Armbruster 'data': { 's': 'str', 6948685a8eSMarkus Armbruster 'n': 'null' } } 70c3bbbdbfSAlex Williamson 71c3bbbdbfSAlex Williamson## 72c3bbbdbfSAlex Williamson# @OffAutoPCIBAR: 73c3bbbdbfSAlex Williamson# 74c3bbbdbfSAlex Williamson# An enumeration of options for specifying a PCI BAR 75c3bbbdbfSAlex Williamson# 76c3bbbdbfSAlex Williamson# @off: The specified feature is disabled 77c3bbbdbfSAlex Williamson# 78c3bbbdbfSAlex Williamson# @auto: The PCI BAR for the feature is automatically selected 79c3bbbdbfSAlex Williamson# 80c3bbbdbfSAlex Williamson# @bar0: PCI BAR0 is used for the feature 81c3bbbdbfSAlex Williamson# 82c3bbbdbfSAlex Williamson# @bar1: PCI BAR1 is used for the feature 83c3bbbdbfSAlex Williamson# 84c3bbbdbfSAlex Williamson# @bar2: PCI BAR2 is used for the feature 85c3bbbdbfSAlex Williamson# 86c3bbbdbfSAlex Williamson# @bar3: PCI BAR3 is used for the feature 87c3bbbdbfSAlex Williamson# 88c3bbbdbfSAlex Williamson# @bar4: PCI BAR4 is used for the feature 89c3bbbdbfSAlex Williamson# 90c3bbbdbfSAlex Williamson# @bar5: PCI BAR5 is used for the feature 91c3bbbdbfSAlex Williamson# 92c3bbbdbfSAlex Williamson# Since: 2.12 93c3bbbdbfSAlex Williamson## 94c3bbbdbfSAlex Williamson{ 'enum': 'OffAutoPCIBAR', 95c3bbbdbfSAlex Williamson 'data': [ 'off', 'auto', 'bar0', 'bar1', 'bar2', 'bar3', 'bar4', 'bar5' ] } 969a801c7dSLaszlo Ersek 979a801c7dSLaszlo Ersek## 984695a2c5SAlex Williamson# @PCIELinkSpeed: 994695a2c5SAlex Williamson# 1004695a2c5SAlex Williamson# An enumeration of PCIe link speeds in units of GT/s 1014695a2c5SAlex Williamson# 1024695a2c5SAlex Williamson# @2_5: 2.5GT/s 1034695a2c5SAlex Williamson# 1044695a2c5SAlex Williamson# @5: 5.0GT/s 1054695a2c5SAlex Williamson# 1064695a2c5SAlex Williamson# @8: 8.0GT/s 1074695a2c5SAlex Williamson# 1084695a2c5SAlex Williamson# @16: 16.0GT/s 1094695a2c5SAlex Williamson# 1101bdef7a6SMichael S. Tsirkin# @32: 32.0GT/s (since 9.0) 111c08da86dSLukas Stockner# 1121bdef7a6SMichael S. Tsirkin# @64: 64.0GT/s (since 9.0) 113c08da86dSLukas Stockner# 1144695a2c5SAlex Williamson# Since: 4.0 1154695a2c5SAlex Williamson## 1164695a2c5SAlex Williamson{ 'enum': 'PCIELinkSpeed', 117c08da86dSLukas Stockner 'data': [ '2_5', '5', '8', '16', '32', '64' ] } 1184695a2c5SAlex Williamson 1194695a2c5SAlex Williamson## 1204695a2c5SAlex Williamson# @PCIELinkWidth: 1214695a2c5SAlex Williamson# 1224695a2c5SAlex Williamson# An enumeration of PCIe link width 1234695a2c5SAlex Williamson# 1244695a2c5SAlex Williamson# @1: x1 1254695a2c5SAlex Williamson# 1264695a2c5SAlex Williamson# @2: x2 1274695a2c5SAlex Williamson# 1284695a2c5SAlex Williamson# @4: x4 1294695a2c5SAlex Williamson# 1304695a2c5SAlex Williamson# @8: x8 1314695a2c5SAlex Williamson# 1324695a2c5SAlex Williamson# @12: x12 1334695a2c5SAlex Williamson# 1344695a2c5SAlex Williamson# @16: x16 1354695a2c5SAlex Williamson# 1364695a2c5SAlex Williamson# @32: x32 1374695a2c5SAlex Williamson# 1384695a2c5SAlex Williamson# Since: 4.0 1394695a2c5SAlex Williamson## 1404695a2c5SAlex Williamson{ 'enum': 'PCIELinkWidth', 1414695a2c5SAlex Williamson 'data': [ '1', '2', '4', '8', '12', '16', '32' ] } 142913d9063SKevin Wolf 143913d9063SKevin Wolf## 144913d9063SKevin Wolf# @HostMemPolicy: 145913d9063SKevin Wolf# 146913d9063SKevin Wolf# Host memory policy types 147913d9063SKevin Wolf# 148913d9063SKevin Wolf# @default: restore default policy, remove any nondefault policy 149913d9063SKevin Wolf# 150913d9063SKevin Wolf# @preferred: set the preferred host nodes for allocation 151913d9063SKevin Wolf# 152a937b6aaSMarkus Armbruster# @bind: a strict policy that restricts memory allocation to the host 153a937b6aaSMarkus Armbruster# nodes specified 154913d9063SKevin Wolf# 155a937b6aaSMarkus Armbruster# @interleave: memory allocations are interleaved across the set of 156a937b6aaSMarkus Armbruster# host nodes specified 157913d9063SKevin Wolf# 158913d9063SKevin Wolf# Since: 2.1 159913d9063SKevin Wolf## 160913d9063SKevin Wolf{ 'enum': 'HostMemPolicy', 161913d9063SKevin Wolf 'data': [ 'default', 'preferred', 'bind', 'interleave' ] } 1621156a675SKevin Wolf 1631156a675SKevin Wolf## 1641156a675SKevin Wolf# @NetFilterDirection: 1651156a675SKevin Wolf# 166a937b6aaSMarkus Armbruster# Indicates whether a netfilter is attached to a netdev's transmit 167a937b6aaSMarkus Armbruster# queue or receive queue or both. 1681156a675SKevin Wolf# 1691156a675SKevin Wolf# @all: the filter is attached both to the receive and the transmit 1701156a675SKevin Wolf# queue of the netdev (default). 1711156a675SKevin Wolf# 1721156a675SKevin Wolf# @rx: the filter is attached to the receive queue of the netdev, 1731156a675SKevin Wolf# where it will receive packets sent to the netdev. 1741156a675SKevin Wolf# 1751156a675SKevin Wolf# @tx: the filter is attached to the transmit queue of the netdev, 1761156a675SKevin Wolf# where it will receive packets sent by the netdev. 1771156a675SKevin Wolf# 1781156a675SKevin Wolf# Since: 2.5 1791156a675SKevin Wolf## 1801156a675SKevin Wolf{ 'enum': 'NetFilterDirection', 1811156a675SKevin Wolf 'data': [ 'all', 'rx', 'tx' ] } 18230e863e5SKevin Wolf 18330e863e5SKevin Wolf## 18430e863e5SKevin Wolf# @GrabToggleKeys: 18530e863e5SKevin Wolf# 186*ee43800dSMarkus Armbruster# Key combinations to toggle input-linux between host and guest. 187*ee43800dSMarkus Armbruster# 188*ee43800dSMarkus Armbruster# @ctrl-ctrl: left and right control key 189*ee43800dSMarkus Armbruster# 190*ee43800dSMarkus Armbruster# @alt-alt: left and right alt key 191*ee43800dSMarkus Armbruster# 192*ee43800dSMarkus Armbruster# @shift-shift: left and right shift key 193*ee43800dSMarkus Armbruster# 194*ee43800dSMarkus Armbruster# @meta-meta: left and right meta key 195*ee43800dSMarkus Armbruster# 196*ee43800dSMarkus Armbruster# @scrolllock: scroll lock key 197*ee43800dSMarkus Armbruster# 198*ee43800dSMarkus Armbruster# @ctrl-scrolllock: either control key and scroll lock key 19930e863e5SKevin Wolf# 20030e863e5SKevin Wolf# Since: 4.0 20130e863e5SKevin Wolf## 20230e863e5SKevin Wolf{ 'enum': 'GrabToggleKeys', 20330e863e5SKevin Wolf 'data': [ 'ctrl-ctrl', 'alt-alt', 'shift-shift','meta-meta', 'scrolllock', 20430e863e5SKevin Wolf 'ctrl-scrolllock' ] } 205f9429c67SDaniel P. Berrangé 206f9429c67SDaniel P. Berrangé## 207f9429c67SDaniel P. Berrangé# @HumanReadableText: 208f9429c67SDaniel P. Berrangé# 209f9429c67SDaniel P. Berrangé# @human-readable-text: Formatted output intended for humans. 210f9429c67SDaniel P. Berrangé# 211f9429c67SDaniel P. Berrangé# Since: 6.2 212f9429c67SDaniel P. Berrangé## 213f9429c67SDaniel P. Berrangé{ 'struct': 'HumanReadableText', 214f9429c67SDaniel P. Berrangé 'data': { 'human-readable-text': 'str' } } 215