xref: /openbmc/qemu/qapi/pragma.json (revision 4edb196e)
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        'CpuS390Entitlement',
56        'CpuS390Polarization',
57        'CpuS390State',
58        'CxlCorErrorType',
59        'DisplayProtocol',
60        'DriveBackupWrapper',
61        'DummyBlockCoreForceArrays',
62        'DummyForceArrays',
63        'DummyVirtioForceArrays',
64        'GrabToggleKeys',
65        'GuestPanicInformationHyperV',
66        'HotKeyMod',
67        'ImageInfoSpecific',
68        'ImageInfoSpecificKind',
69        'InputAxis',
70        'InputButton',
71        'InputMultiTouchEvent',
72        'InputMultiTouchType',
73        'IscsiHeaderDigest',
74        'IscsiTransport',
75        'JSONType',
76        'KeyValue',
77        'KeyValueKind',
78        'MemoryDeviceInfo',
79        'MemoryDeviceInfoKind',
80        'MigrateSetParameters',
81        'MigrationAddress',
82        'NetClientDriver',
83        'NumaOptions',
84        'ObjectType',
85        'PciMemoryRegion',
86        'QCryptoAkCipherKeyType',
87        'QCryptoAkCipherOptions',
88        'QCryptodevBackendServiceType',
89        'QKeyCode',
90        'Qcow2OverlapCheckFlags',
91        'RbdAuthMode',
92        'RbdEncryptionCreateOptions',
93        'RbdImageEncryptionFormat',
94        'SocketAddressLegacy',
95        'SshHostKeyCheck',
96        'StatsFilter',
97        'StatsValue',
98        'String',
99        'StringWrapper',
100        'SysEmuTarget',
101        'ThrottleGroupProperties',
102        'TransactionAction',
103        'VncPrimaryAuth',
104        'VncVencryptSubAuth',
105        'X86CPURegister32',
106        'XDbgBlockGraph',
107        'YankInstance',
108        'YankInstanceType',
109        'blockdev-reopen',
110        'query-cpu-model-baseline',
111        'query-cpu-model-comparison',
112        'query-cpu-model-expansion',
113        'query-rocker',
114        'query-rocker-ports',
115        'query-stats-schemas',
116        'watchdog-set-action' ],
117    # Externally visible types whose member names may use uppercase
118    'member-name-exceptions': [     # visible in:
119        'ACPISlotType',             # query-acpi-ospm-status
120        'AcpiTableOptions',         # -acpitable
121        'BlkdebugEvent',            # blockdev-add, -blockdev
122        'BlkdebugSetStateOptions',  # blockdev-add, -blockdev
123        'BlockDeviceInfo',          # query-block
124        'BlockDeviceStats',         # query-blockstats
125        'BlockDeviceTimedStats',    # query-blockstats
126        'BlockIOThrottle',          # block_set_io_throttle
127        'BlockInfo',                # query-block
128        'BlockdevAioOptions',       # blockdev-add, -blockdev
129        'BlockdevDriver',           # blockdev-add, query-blockstats, ...
130        'BlockdevVmdkAdapterType',  # blockdev-create (to match VMDK spec)
131        'BlockdevVmdkSubformat',    # blockdev-create (to match VMDK spec)
132        'ColoCompareProperties',    # object_add, -object
133        'FilterMirrorProperties',   # object_add, -object
134        'FilterRedirectorProperties', # object_add, -object
135        'FilterRewriterProperties', # object_add, -object
136        'InputLinuxProperties',     # object_add, -object
137        'NetdevTapOptions',         # netdev_add, query-netdev, -netdev
138        'ObjectType',               # object-add, -object
139        'PCIELinkSpeed',            # internal only
140        'PciBusInfo',               # query-pci
141        'PciDeviceInfo',            # query-pci
142        'PciMemoryRegion',          # query-pci
143        'QKeyCode',                 # send-key, input-sent-event
144        'QapiErrorClass',           # QMP error replies
145        'SshHostKeyCheckMode',      # blockdev-add, -blockdev
146        'SysEmuTarget',             # query-cpu-fast, query-target
147        'UuidInfo',                 # query-uuid
148        'VncClientInfo',            # query-vnc, query-vnc-servers, ...
149        'X86CPURegister32'          # qom-get of x86 CPU properties
150                                    # feature-words, filtered-features
151    ] } }
152