Lines Matching +full:kvm +full:- +full:build

1 # -*- Mode: Python -*-
4 # SPDX-License-Identifier: GPL-2.0-or-later
7 # @rtc-reset-reinjection:
11 # for example QEMU guest agent's guest-set-time command.
19 # .. qmp-example::
21 # -> { "execute": "rtc-reset-reinjection" }
22 # <- { "return": {} }
24 { 'command': 'rtc-reset-reinjection' }
29 # An enumeration of SEV state information used during @query-sev.
33 # @launch-update: The guest is currently being launched; plaintext
36 # @launch-secret: The guest is currently being launched; ciphertext
41 # @send-update: The guest is currently being migrated out to another
44 # @receive-update: The guest is currently being migrated from another
50 'data': ['uninit', 'launch-update', 'launch-secret', 'running',
51 'send-update', 'receive-update' ] }
58 # @sev: The guest is a legacy SEV or SEV-ES guest.
60 # @sev-snp: The guest is an SEV-SNP guest.
65 'data': [ 'sev', 'sev-snp' ] }
70 # Information specific to legacy SEV/SEV-ES guests.
85 # Information specific to SEV-SNP guests.
87 # @snp-policy: SEV-SNP policy value
92 'data': { 'snp-policy': 'uint64' } }
101 # @api-major: SEV API major version
103 # @api-minor: SEV API minor version
105 # @build-id: SEV FW build id
109 # @sev-type: Type of SEV guest being run
115 'api-major': 'uint8',
116 'api-minor' : 'uint8',
117 'build-id' : 'uint8',
119 'sev-type' : 'SevGuestType' },
120 'discriminator': 'sev-type',
123 'sev-snp': 'SevSnpGuestInfo' } }
127 # @query-sev:
129 # Return information about SEV/SEV-ES/SEV-SNP.
139 # .. qmp-example::
141 # -> { "execute": "query-sev" }
142 # <- { "return": { "enabled": true, "api-major" : 0, "api-minor" : 0,
143 # "build-id" : 0, "policy" : 0, "state" : "running",
146 { 'command': 'query-sev', 'returns': 'SevInfo' }
160 # @query-sev-launch-measure:
162 # Query the SEV/SEV-ES guest launch information.
164 # This is only valid on x86 machines configured with KVM and the
165 # 'sev-guest' confidential virtualization object. The launch
166 # measurement for SEV-SNP guests is only available within the guest.
171 # - If the launch measurement is unavailable, either due to an
177 # .. qmp-example::
179 # -> { "execute": "query-sev-launch-measure" }
180 # <- { "return": { "data": "4l8LXeNlSPUDlXPJG5966/8%YZ" } }
182 { 'command': 'query-sev-launch-measure', 'returns': 'SevLaunchMeasureInfo' }
190 # @pdh: Platform Diffie-Hellman key (base64 encoded)
192 # @cert-chain: PDH certificate chain (base64 encoded)
194 # @cpu0-id: Unique ID of CPU0 (base64 encoded) (since 7.1)
196 # @cbitpos: C-bit location in page table entry
198 # @reduced-phys-bits: Number of physical address bit reduction when
205 'cert-chain': 'str',
206 'cpu0-id': 'str',
208 'reduced-phys-bits': 'int'} }
211 # @query-sev-capabilities:
215 # This is only supported on AMD X86 platforms with KVM enabled.
220 # - If SEV is not available on the platform, GenericError
224 # .. qmp-example::
226 # -> { "execute": "query-sev-capabilities" }
227 # <- { "return": { "pdh": "8CCDD8DDD", "cert-chain": "888CCCDDDEE",
228 # "cpu0-id": "2lvmGwo+...61iEinw==",
229 # "cbitpos": 47, "reduced-phys-bits": 1}}
231 { 'command': 'query-sev-capabilities', 'returns': 'SevCapability' }
234 # @sev-inject-launch-secret:
236 # This command injects a secret blob into memory of a SEV/SEV-ES
239 # This is only valid on x86 machines configured with KVM and the
240 # 'sev-guest' confidential virtualization object. SEV-SNP guests do
243 # @packet-header: the launch secret packet header encoded in base64
250 # - If launch secret injection is not possible, either due to
256 { 'command': 'sev-inject-launch-secret',
257 'data': { 'packet-header': 'str', 'secret': 'str', '*gpa': 'uint64' } }
273 # @query-sev-attestation-report:
277 # This is only valid on x86 machines configured with KVM and the
278 # 'sev-guest' confidential virtualization object. The attestation
279 # report for SEV-SNP guests is only available within the guest.
287 # - This will return an error if the attestation report is
294 # .. qmp-example::
296 # -> { "execute" : "query-sev-attestation-report",
298 # <- { "return" : { "data": "aaaaaaaabbbddddd"} }
300 { 'command': 'query-sev-attestation-report',
344 # @query-sgx:
352 # .. qmp-example::
354 # -> { "execute": "query-sgx" }
355 # <- { "return": { "sgx": true, "sgx1" : true, "sgx2" : true,
360 { 'command': 'query-sgx', 'returns': 'SgxInfo' }
363 # @query-sgx-capabilities:
371 # .. qmp-example::
373 # -> { "execute": "query-sgx-capabilities" }
374 # <- { "return": { "sgx": true, "sgx1" : true, "sgx2" : true,
379 { 'command': 'query-sgx-capabilities', 'returns': 'SgxInfo' }
396 # @ipi: The post is an inter-processor interrupt (IPI).
414 # @remote-domain: remote domain for interdomain ports
428 'remote-domain': 'str',
435 # @xen-event-list:
443 # .. qmp-example::
445 # -> { "execute": "xen-event-list" }
446 # <- { "return": [
451 # "remote-domain": "qemu",
460 # "remote-domain": "",
468 { 'command': 'xen-event-list',
472 # @xen-event-inject:
480 # .. qmp-example::
482 # -> { "execute": "xen-event-inject", "arguments": { "port": 1 } }
483 # <- { "return": { } }
485 { 'command': 'xen-event-inject',