xref: /openbmc/qemu/qapi/pragma.json (revision e701cd77)
1# -*- Mode: Python -*-
2# vim: filetype=python
3
4{ 'pragma': { 'doc-required': true } }
5
6# Entries in these lists are allowed to violate the QAPI rules (for
7# historical reasons); think twice before you add to them!
8{ 'pragma': {
9    # Command names containing '_'
10    'command-name-exceptions': [
11        'add_client',
12        'block_resize',
13        'block_set_io_throttle',
14        'client_migrate_info',
15        'device_add',
16        'device_del',
17        'expire_password',
18        'migrate_cancel',
19        'netdev_add',
20        'netdev_del',
21        'qmp_capabilities',
22        'set_link',
23        'set_password',
24        'system_powerdown',
25        'system_reset',
26        'system_wakeup' ],
27    # Commands allowed to return a non-dictionary
28    'command-returns-exceptions': [
29        'human-monitor-command',
30        'qom-get',
31        'query-tpm-models',
32        'query-tpm-types',
33        'ringbuf-read' ],
34    # Types, commands, and events with undocumented members / arguments:
35    'documentation-exceptions': [
36        'AbortWrapper',
37        'AudiodevDriver',
38        'BlkdebugEvent',
39        'BlockDirtyBitmapAddWrapper',
40        'BlockDirtyBitmapMergeWrapper',
41        'BlockDirtyBitmapWrapper',
42        'BlockExportOptions',
43        'BlockStatsSpecific',
44        'BlockdevBackupWrapper',
45        'BlockdevDriver',
46        'BlockdevQcow2Encryption',
47        'BlockdevQcow2EncryptionFormat',
48        'BlockdevQcowEncryption',
49        'BlockdevSnapshotInternalWrapper',
50        'BlockdevSnapshotSyncWrapper',
51        'BlockdevSnapshotWrapper',
52        'BlockdevVmdkAdapterType',
53        'ChardevBackend',
54        'ChardevBackendKind',
55        'ChardevCommonWrapper',
56        'ChardevDBusWrapper',
57        'ChardevFileWrapper',
58        'ChardevHostdevWrapper',
59        'ChardevMuxWrapper',
60        'ChardevQemuVDAgentWrapper',
61        'ChardevRingbufWrapper',
62        'ChardevSocketWrapper',
63        'ChardevSpiceChannelWrapper',
64        'ChardevSpicePortWrapper',
65        'ChardevStdioWrapper',
66        'ChardevUdpWrapper',
67        'ChardevVCWrapper',
68        'CpuS390Entitlement',
69        'CpuS390Polarization',
70        'CpuS390State',
71        'CxlCorErrorType',
72        'DisplayProtocol',
73        'DriveBackupWrapper',
74        'DummyBlockCoreForceArrays',
75        'DummyForceArrays',
76        'DummyVirtioForceArrays',
77        'DumpGuestMemoryCapability',
78        'GrabToggleKeys',
79        'GuestPanicInformationHyperV',
80        'HotKeyMod',
81        'HvBalloonDeviceInfoWrapper',
82        'ImageInfoSpecific',
83        'ImageInfoSpecificFileWrapper',
84        'ImageInfoSpecificKind',
85        'ImageInfoSpecificLUKSWrapper',
86        'ImageInfoSpecificQCow2Wrapper',
87        'ImageInfoSpecificRbdWrapper',
88        'ImageInfoSpecificVmdkWrapper',
89        'InetSocketAddressWrapper',
90        'InputAxis',
91        'InputBtnEventWrapper',
92        'InputButton',
93        'InputKeyEventWrapper',
94        'InputMoveEventWrapper',
95        'InputMultiTouchEvent',
96        'InputMultiTouchEventWrapper',
97        'InputMultiTouchType',
98        'IntWrapper',
99        'IscsiHeaderDigest',
100        'IscsiTransport',
101        'JSONType',
102        'KeyValue',
103        'KeyValueKind',
104        'MemoryDeviceInfo',
105        'MemoryDeviceInfoKind',
106        'MigrateSetParameters',
107        'MigrationAddress',
108        'NetClientDriver',
109        'NumaOptions',
110        'ObjectType',
111        'PCDIMMDeviceInfoWrapper',
112        'PciMemoryRegion',
113        'QCryptoAkCipherKeyType',
114        'QCryptoAkCipherOptions',
115        'QCryptodevBackendServiceType',
116        'QKeyCode',
117        'QKeyCodeWrapper',
118        'Qcow2OverlapCheckFlags',
119        'RbdAuthMode',
120        'RbdEncryptionCreateOptions',
121        'RbdImageEncryptionFormat',
122        'SgxEPCDeviceInfoWrapper',
123        'SocketAddressLegacy',
124        'SshHostKeyCheck',
125        'StatsFilter',
126        'StatsValue',
127        'String',
128        'StringWrapper',
129        'SysEmuTarget',
130        'TPMEmulatorOptionsWrapper',
131        'TPMPassthroughOptionsWrapper',
132        'ThrottleGroupProperties',
133        'TransactionAction',
134        'UnixSocketAddressWrapper',
135        'VirtioMEMDeviceInfoWrapper',
136        'VirtioPMEMDeviceInfoWrapper',
137        'VncPrimaryAuth',
138        'VncVencryptSubAuth',
139        'VsockSocketAddressWrapper',
140        'X86CPURegister32',
141        'XDbgBlockGraph',
142        'YankInstance',
143        'YankInstanceType',
144        'blockdev-reopen',
145        'query-cpu-model-baseline',
146        'query-cpu-model-comparison',
147        'query-cpu-model-expansion',
148        'query-rocker',
149        'query-rocker-ports',
150        'query-stats-schemas',
151        'watchdog-set-action' ],
152    # Externally visible types whose member names may use uppercase
153    'member-name-exceptions': [     # visible in:
154        'ACPISlotType',             # query-acpi-ospm-status
155        'AcpiTableOptions',         # -acpitable
156        'BlkdebugEvent',            # blockdev-add, -blockdev
157        'BlkdebugSetStateOptions',  # blockdev-add, -blockdev
158        'BlockDeviceInfo',          # query-block
159        'BlockDeviceStats',         # query-blockstats
160        'BlockDeviceTimedStats',    # query-blockstats
161        'BlockIOThrottle',          # block_set_io_throttle
162        'BlockInfo',                # query-block
163        'BlockdevAioOptions',       # blockdev-add, -blockdev
164        'BlockdevDriver',           # blockdev-add, query-blockstats, ...
165        'BlockdevVmdkAdapterType',  # blockdev-create (to match VMDK spec)
166        'BlockdevVmdkSubformat',    # blockdev-create (to match VMDK spec)
167        'ColoCompareProperties',    # object_add, -object
168        'FilterMirrorProperties',   # object_add, -object
169        'FilterRedirectorProperties', # object_add, -object
170        'FilterRewriterProperties', # object_add, -object
171        'InputLinuxProperties',     # object_add, -object
172        'NetdevTapOptions',         # netdev_add, query-netdev, -netdev
173        'ObjectType',               # object-add, -object
174        'PCIELinkSpeed',            # internal only
175        'PciBusInfo',               # query-pci
176        'PciDeviceInfo',            # query-pci
177        'PciMemoryRegion',          # query-pci
178        'QKeyCode',                 # send-key, input-sent-event
179        'QapiErrorClass',           # QMP error replies
180        'SshHostKeyCheckMode',      # blockdev-add, -blockdev
181        'SysEmuTarget',             # query-cpu-fast, query-target
182        'UuidInfo',                 # query-uuid
183        'VncClientInfo',            # query-vnc, query-vnc-servers, ...
184        'X86CPURegister32'          # qom-get of x86 CPU properties
185                                    # feature-words, filtered-features
186    ] } }
187