245
248
'*backing-filename-format': 'str', '*snapshots': ['SnapshotInfo'] } }
253
# Information about a QEMU image file check
255
# @filename: name of the image file checked
257
# @format: format of the image file checked
259
# @check-errors: number of unexpected errors occurred during check
261
# @image-end-offset: #optional offset (in bytes) where the image ends, this
262
# field is present if the driver for the image format
265
# @corruptions: #optional number of corruptions found during the check if any
267
# @leaks: #optional number of leaks found during the check if any
269
# @corruptions-fixed: #optional number of corruptions fixed during the check
272
# @leaks-fixed: #optional number of leaks fixed during the check if any
274
# @total-clusters: #optional total number of clusters, this field is present
275
# if the driver for the image format supports it
277
# @allocated-clusters: #optional total number of allocated clusters, this
278
# field is present if the driver for the image format
281
# @fragmented-clusters: #optional total number of fragmented clusters, this
282
# field is present if the driver for the image format
285
# @compressed-clusters: #optional total number of compressed clusters, this
286
# field is present if the driver for the image format
293
{ 'type': 'ImageCheck',
294
'data': {'filename': 'str', 'format': 'str', 'check-errors': 'int',
295
'*image-end-offset': 'int', '*corruptions': 'int', '*leaks': 'int',
296
'*corruptions-fixed': 'int', '*leaks-fixed': 'int',
297
'*total-clusters': 'int', '*allocated-clusters': 'int',
298
'*fragmented-clusters': 'int', '*compressed-clusters': 'int' } }
250
303
# Information about VCPU run state
2939
3020
{ 'enum': 'TargetType',
2940
3021
'data': [ 'alpha', 'arm', 'cris', 'i386', 'lm32', 'm68k', 'microblazeel',
2941
'microblaze', 'mips64el', 'mips64', 'mipsel', 'mips', 'or32',
2942
'ppc64', 'ppcemb', 'ppc', 's390x', 'sh4eb', 'sh4', 'sparc64',
2943
'sparc', 'unicore32', 'x86_64', 'xtensaeb', 'xtensa' ] }
3022
'microblaze', 'mips64el', 'mips64', 'mipsel', 'mips', 'moxie',
3023
'or32', 'ppc64', 'ppcemb', 'ppc', 's390x', 'sh4eb', 'sh4',
3024
'sparc64', 'sparc', 'unicore32', 'x86_64', 'xtensaeb', 'xtensa' ] }
3129
3210
'*telnet' : 'bool' } }
3215
# Configuration info for datagram socket chardevs.
3217
# @remote: remote address
3218
# @local: #optional local address
3222
{ 'type': 'ChardevUdp', 'data': { 'remote' : 'SocketAddress',
3223
'*local' : 'SocketAddress' } }
3228
# Configuration info for mux chardevs.
3230
# @chardev: name of the base chardev.
3234
{ 'type': 'ChardevMux', 'data': { 'chardev' : 'str' } }
3239
# Configuration info for stdio chardevs.
3241
# @signal: #optional Allow signals (such as SIGINT triggered by ^C)
3242
# be delivered to qemu. Default: true in -nographic mode,
3247
{ 'type': 'ChardevStdio', 'data': { '*signal' : 'bool' } }
3250
# @ChardevSpiceChannel:
3252
# Configuration info for spice vm channel chardevs.
3254
# @type: kind of channel (for example vdagent).
3258
{ 'type': 'ChardevSpiceChannel', 'data': { 'type' : 'str' } }
3261
# @ChardevSpicePort:
3263
# Configuration info for spice port chardevs.
3265
# @fqdn: name of the channel (see docs/spice-port-fqdn.txt)
3269
{ 'type': 'ChardevSpicePort', 'data': { 'fqdn' : 'str' } }
3274
# Configuration info for virtual console chardevs.
3276
# @width: console width, in pixels
3277
# @height: console height, in pixels
3278
# @cols: console width, in chars
3279
# @rows: console height, in chars
3283
{ 'type': 'ChardevVC', 'data': { '*width' : 'int',
3291
# Configuration info for memory chardevs
3293
# @size: #optional Ringbuffer size, must be power of two, default is 65536
3297
{ 'type': 'ChardevRingbuf', 'data': { '*size' : 'int' } }
3132
3300
# @ChardevBackend:
3134
3302
# Configuration info for the new chardev backend.
3186
3365
{ 'command': 'chardev-remove', 'data': {'id': 'str'} }
3370
# An enumeration of TPM models
3372
# @tpm-tis: TPM TIS model
3376
{ 'enum': 'TpmModel', 'data': [ 'tpm-tis' ] }
3379
# @query-tpm-models:
3381
# Return a list of supported TPM models
3383
# Returns: a list of TpmModel
3387
{ 'command': 'query-tpm-models', 'returns': ['TpmModel'] }
3392
# An enumeration of TPM types
3394
# @passthrough: TPM passthrough type
3398
{ 'enum': 'TpmType', 'data': [ 'passthrough' ] }
3403
# Return a list of supported TPM types
3405
# Returns: a list of TpmType
3409
{ 'command': 'query-tpm-types', 'returns': ['TpmType'] }
3412
# @TPMPassthroughOptions:
3414
# Information about the TPM passthrough type
3416
# @path: #optional string describing the path used for accessing the TPM device
3418
# @cancel-path: #optional string showing the TPM's sysfs cancel file
3419
# for cancellation of TPM commands while they are executing
3423
{ 'type': 'TPMPassthroughOptions', 'data': { '*path' : 'str',
3424
'*cancel-path' : 'str'} }
3429
# A union referencing different TPM backend types' configuration options
3431
# @passthrough: The configuration options for the TPM passthrough type
3435
{ 'union': 'TpmTypeOptions',
3436
'data': { 'passthrough' : 'TPMPassthroughOptions' } }
3441
# Information about the TPM
3443
# @id: The Id of the TPM
3445
# @model: The TPM frontend model
3447
# @options: The TPM (backend) type configuration options
3451
{ 'type': 'TPMInfo',
3452
'data': {'id': 'str',
3453
'model': 'TpmModel',
3454
'options': 'TpmTypeOptions' } }
3459
# Return information about the TPM device
3461
# Returns: @TPMInfo on success
3465
{ 'command': 'query-tpm', 'returns': ['TPMInfo'] }
3470
# Specify an ACPI table on the command line to load.
3472
# At most one of @file and @data can be specified. The list of files specified
3473
# by any one of them is loaded and concatenated in order. If both are omitted,
3476
# Other fields / optargs can be used to override fields of the generic ACPI
3477
# table header; refer to the ACPI specification 5.0, section 5.2.6 System
3478
# Description Table Header. If a header field is not overridden, then the
3479
# corresponding value from the concatenated blob is used (in case of @file), or
3480
# it is filled in with a hard-coded value (in case of @data).
3482
# String fields are copied into the matching ACPI member from lowest address
3483
# upwards, and silently truncated / NUL-padded to length.
3485
# @sig: #optional table signature / identifier (4 bytes)
3487
# @rev: #optional table revision number (dependent on signature, 1 byte)
3489
# @oem_id: #optional OEM identifier (6 bytes)
3491
# @oem_table_id: #optional OEM table identifier (8 bytes)
3493
# @oem_rev: #optional OEM-supplied revision number (4 bytes)
3495
# @asl_compiler_id: #optional identifier of the utility that created the table
3498
# @asl_compiler_rev: #optional revision number of the utility that created the
3501
# @file: #optional colon (:) separated list of pathnames to load and
3502
# concatenate as table data. The resultant binary blob is expected to
3503
# have an ACPI table header. At least one file is required. This field
3506
# @data: #optional colon (:) separated list of pathnames to load and
3507
# concatenate as table data. The resultant binary blob must not have an
3508
# ACPI table header. At least one file is required. This field excludes
3513
{ 'type': 'AcpiTableOptions',
3518
'*oem_table_id': 'str',
3519
'*oem_rev': 'uint32',
3520
'*asl_compiler_id': 'str',
3521
'*asl_compiler_rev': 'uint32',
3526
# @CommandLineParameterType:
3528
# Possible types for an option parameter.
3530
# @string: accepts a character string
3532
# @boolean: accepts "on" or "off"
3534
# @number: accepts a number
3536
# @size: accepts a number followed by an optional suffix (K)ilo,
3537
# (M)ega, (G)iga, (T)era
3541
{ 'enum': 'CommandLineParameterType',
3542
'data': ['string', 'boolean', 'number', 'size'] }
3545
# @CommandLineParameterInfo:
3547
# Details about a single parameter of a command line option.
3549
# @name: parameter name
3551
# @type: parameter @CommandLineParameterType
3553
# @help: #optional human readable text string, not suitable for parsing.
3557
{ 'type': 'CommandLineParameterInfo',
3558
'data': { 'name': 'str',
3559
'type': 'CommandLineParameterType',
3563
# @CommandLineOptionInfo:
3565
# Details about a command line option, including its list of parameter details
3567
# @option: option name
3569
# @parameters: an array of @CommandLineParameterInfo
3573
{ 'type': 'CommandLineOptionInfo',
3574
'data': { 'option': 'str', 'parameters': ['CommandLineParameterInfo'] } }
3577
# @query-command-line-options:
3579
# Query command line option schema.
3581
# @option: #optional option name
3583
# Returns: list of @CommandLineOptionInfo for all options (or for the given
3584
# @option). Returns an error if the given @option doesn't exist.
3588
{'command': 'query-command-line-options', 'data': { '*option': 'str' },
3589
'returns': ['CommandLineOptionInfo'] }
3594
# A X86 32-bit register
3598
{ 'enum': 'X86CPURegister32',
3599
'data': [ 'EAX', 'EBX', 'ECX', 'EDX', 'ESP', 'EBP', 'ESI', 'EDI' ] }
3602
# @X86CPUFeatureWordInfo
3604
# Information about a X86 CPU feature word
3606
# @cpuid-input-eax: Input EAX value for CPUID instruction for that feature word
3608
# @cpuid-input-ecx: #optional Input ECX value for CPUID instruction for that
3611
# @cpuid-register: Output register containing the feature bits
3613
# @features: value of output register, containing the feature bits
3617
{ 'type': 'X86CPUFeatureWordInfo',
3618
'data': { 'cpuid-input-eax': 'int',
3619
'*cpuid-input-ecx': 'int',
3620
'cpuid-register': 'X86CPURegister32',
3621
'features': 'int' } }