qapi-schema: Collect TPM stuff in qapi/tpm.json
Sadly, we don't have a TPM maintainer, not even a MAINTAINERS entry. Create one, and mark it orphaned. Signed-off-by: Markus Armbruster <armbru@redhat.com> Message-Id: <1503602048-12268-12-git-send-email-armbru@redhat.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
parent
fa988e39bf
commit
3859b6cf67
@ -1486,6 +1486,14 @@ F: scripts/tracetool/
|
|||||||
F: docs/tracing.txt
|
F: docs/tracing.txt
|
||||||
T: git git://github.com/stefanha/qemu.git tracing
|
T: git git://github.com/stefanha/qemu.git tracing
|
||||||
|
|
||||||
|
TPM
|
||||||
|
S: Orphan
|
||||||
|
F: tpm.c
|
||||||
|
F: hw/tpm/*
|
||||||
|
F: include/hw/acpi/tpm.h
|
||||||
|
F: include/sysemu/tpm*
|
||||||
|
F: qapi/tpm.json
|
||||||
|
|
||||||
Checkpatch
|
Checkpatch
|
||||||
S: Odd Fixes
|
S: Odd Fixes
|
||||||
F: scripts/checkpatch.pl
|
F: scripts/checkpatch.pl
|
||||||
|
1
Makefile
1
Makefile
@ -418,6 +418,7 @@ qapi-modules = $(SRC_PATH)/qapi-schema.json $(SRC_PATH)/qapi/common.json \
|
|||||||
$(SRC_PATH)/qapi/rocker.json \
|
$(SRC_PATH)/qapi/rocker.json \
|
||||||
$(SRC_PATH)/qapi/run-state.json \
|
$(SRC_PATH)/qapi/run-state.json \
|
||||||
$(SRC_PATH)/qapi/sockets.json \
|
$(SRC_PATH)/qapi/sockets.json \
|
||||||
|
$(SRC_PATH)/qapi/tpm.json \
|
||||||
$(SRC_PATH)/qapi/trace.json \
|
$(SRC_PATH)/qapi/trace.json \
|
||||||
$(SRC_PATH)/qapi/transaction.json \
|
$(SRC_PATH)/qapi/transaction.json \
|
||||||
$(SRC_PATH)/qapi/ui.json
|
$(SRC_PATH)/qapi/ui.json
|
||||||
|
132
qapi-schema.json
132
qapi-schema.json
@ -86,6 +86,7 @@
|
|||||||
{ 'include': 'qapi/char.json' }
|
{ 'include': 'qapi/char.json' }
|
||||||
{ 'include': 'qapi/net.json' }
|
{ 'include': 'qapi/net.json' }
|
||||||
{ 'include': 'qapi/rocker.json' }
|
{ 'include': 'qapi/rocker.json' }
|
||||||
|
{ 'include': 'qapi/tpm.json' }
|
||||||
{ 'include': 'qapi/ui.json' }
|
{ 'include': 'qapi/ui.json' }
|
||||||
{ 'include': 'qapi/migration.json' }
|
{ 'include': 'qapi/migration.json' }
|
||||||
{ 'include': 'qapi/transaction.json' }
|
{ 'include': 'qapi/transaction.json' }
|
||||||
@ -2212,137 +2213,6 @@
|
|||||||
##
|
##
|
||||||
{ 'command': 'query-target', 'returns': 'TargetInfo' }
|
{ 'command': 'query-target', 'returns': 'TargetInfo' }
|
||||||
|
|
||||||
##
|
|
||||||
# @TpmModel:
|
|
||||||
#
|
|
||||||
# An enumeration of TPM models
|
|
||||||
#
|
|
||||||
# @tpm-tis: TPM TIS model
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
##
|
|
||||||
{ 'enum': 'TpmModel', 'data': [ 'tpm-tis' ] }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @query-tpm-models:
|
|
||||||
#
|
|
||||||
# Return a list of supported TPM models
|
|
||||||
#
|
|
||||||
# Returns: a list of TpmModel
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
#
|
|
||||||
# Example:
|
|
||||||
#
|
|
||||||
# -> { "execute": "query-tpm-models" }
|
|
||||||
# <- { "return": [ "tpm-tis" ] }
|
|
||||||
#
|
|
||||||
##
|
|
||||||
{ 'command': 'query-tpm-models', 'returns': ['TpmModel'] }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @TpmType:
|
|
||||||
#
|
|
||||||
# An enumeration of TPM types
|
|
||||||
#
|
|
||||||
# @passthrough: TPM passthrough type
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
##
|
|
||||||
{ 'enum': 'TpmType', 'data': [ 'passthrough' ] }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @query-tpm-types:
|
|
||||||
#
|
|
||||||
# Return a list of supported TPM types
|
|
||||||
#
|
|
||||||
# Returns: a list of TpmType
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
#
|
|
||||||
# Example:
|
|
||||||
#
|
|
||||||
# -> { "execute": "query-tpm-types" }
|
|
||||||
# <- { "return": [ "passthrough" ] }
|
|
||||||
#
|
|
||||||
##
|
|
||||||
{ 'command': 'query-tpm-types', 'returns': ['TpmType'] }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @TPMPassthroughOptions:
|
|
||||||
#
|
|
||||||
# Information about the TPM passthrough type
|
|
||||||
#
|
|
||||||
# @path: string describing the path used for accessing the TPM device
|
|
||||||
#
|
|
||||||
# @cancel-path: string showing the TPM's sysfs cancel file
|
|
||||||
# for cancellation of TPM commands while they are executing
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
##
|
|
||||||
{ 'struct': 'TPMPassthroughOptions', 'data': { '*path' : 'str',
|
|
||||||
'*cancel-path' : 'str'} }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @TpmTypeOptions:
|
|
||||||
#
|
|
||||||
# A union referencing different TPM backend types' configuration options
|
|
||||||
#
|
|
||||||
# @type: 'passthrough' The configuration options for the TPM passthrough type
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
##
|
|
||||||
{ 'union': 'TpmTypeOptions',
|
|
||||||
'data': { 'passthrough' : 'TPMPassthroughOptions' } }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @TPMInfo:
|
|
||||||
#
|
|
||||||
# Information about the TPM
|
|
||||||
#
|
|
||||||
# @id: The Id of the TPM
|
|
||||||
#
|
|
||||||
# @model: The TPM frontend model
|
|
||||||
#
|
|
||||||
# @options: The TPM (backend) type configuration options
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
##
|
|
||||||
{ 'struct': 'TPMInfo',
|
|
||||||
'data': {'id': 'str',
|
|
||||||
'model': 'TpmModel',
|
|
||||||
'options': 'TpmTypeOptions' } }
|
|
||||||
|
|
||||||
##
|
|
||||||
# @query-tpm:
|
|
||||||
#
|
|
||||||
# Return information about the TPM device
|
|
||||||
#
|
|
||||||
# Returns: @TPMInfo on success
|
|
||||||
#
|
|
||||||
# Since: 1.5
|
|
||||||
#
|
|
||||||
# Example:
|
|
||||||
#
|
|
||||||
# -> { "execute": "query-tpm" }
|
|
||||||
# <- { "return":
|
|
||||||
# [
|
|
||||||
# { "model": "tpm-tis",
|
|
||||||
# "options":
|
|
||||||
# { "type": "passthrough",
|
|
||||||
# "data":
|
|
||||||
# { "cancel-path": "/sys/class/misc/tpm0/device/cancel",
|
|
||||||
# "path": "/dev/tpm0"
|
|
||||||
# }
|
|
||||||
# },
|
|
||||||
# "id": "tpm0"
|
|
||||||
# }
|
|
||||||
# ]
|
|
||||||
# }
|
|
||||||
#
|
|
||||||
##
|
|
||||||
{ 'command': 'query-tpm', 'returns': ['TPMInfo'] }
|
|
||||||
|
|
||||||
##
|
##
|
||||||
# @AcpiTableOptions:
|
# @AcpiTableOptions:
|
||||||
#
|
#
|
||||||
|
137
qapi/tpm.json
Normal file
137
qapi/tpm.json
Normal file
@ -0,0 +1,137 @@
|
|||||||
|
# -*- Mode: Python -*-
|
||||||
|
#
|
||||||
|
|
||||||
|
##
|
||||||
|
# = TPM (trusted platform module) devices
|
||||||
|
##
|
||||||
|
|
||||||
|
##
|
||||||
|
# @TpmModel:
|
||||||
|
#
|
||||||
|
# An enumeration of TPM models
|
||||||
|
#
|
||||||
|
# @tpm-tis: TPM TIS model
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
##
|
||||||
|
{ 'enum': 'TpmModel', 'data': [ 'tpm-tis' ] }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @query-tpm-models:
|
||||||
|
#
|
||||||
|
# Return a list of supported TPM models
|
||||||
|
#
|
||||||
|
# Returns: a list of TpmModel
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
#
|
||||||
|
# Example:
|
||||||
|
#
|
||||||
|
# -> { "execute": "query-tpm-models" }
|
||||||
|
# <- { "return": [ "tpm-tis" ] }
|
||||||
|
#
|
||||||
|
##
|
||||||
|
{ 'command': 'query-tpm-models', 'returns': ['TpmModel'] }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @TpmType:
|
||||||
|
#
|
||||||
|
# An enumeration of TPM types
|
||||||
|
#
|
||||||
|
# @passthrough: TPM passthrough type
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
##
|
||||||
|
{ 'enum': 'TpmType', 'data': [ 'passthrough' ] }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @query-tpm-types:
|
||||||
|
#
|
||||||
|
# Return a list of supported TPM types
|
||||||
|
#
|
||||||
|
# Returns: a list of TpmType
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
#
|
||||||
|
# Example:
|
||||||
|
#
|
||||||
|
# -> { "execute": "query-tpm-types" }
|
||||||
|
# <- { "return": [ "passthrough" ] }
|
||||||
|
#
|
||||||
|
##
|
||||||
|
{ 'command': 'query-tpm-types', 'returns': ['TpmType'] }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @TPMPassthroughOptions:
|
||||||
|
#
|
||||||
|
# Information about the TPM passthrough type
|
||||||
|
#
|
||||||
|
# @path: string describing the path used for accessing the TPM device
|
||||||
|
#
|
||||||
|
# @cancel-path: string showing the TPM's sysfs cancel file
|
||||||
|
# for cancellation of TPM commands while they are executing
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
##
|
||||||
|
{ 'struct': 'TPMPassthroughOptions', 'data': { '*path' : 'str',
|
||||||
|
'*cancel-path' : 'str'} }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @TpmTypeOptions:
|
||||||
|
#
|
||||||
|
# A union referencing different TPM backend types' configuration options
|
||||||
|
#
|
||||||
|
# @type: 'passthrough' The configuration options for the TPM passthrough type
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
##
|
||||||
|
{ 'union': 'TpmTypeOptions',
|
||||||
|
'data': { 'passthrough' : 'TPMPassthroughOptions' } }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @TPMInfo:
|
||||||
|
#
|
||||||
|
# Information about the TPM
|
||||||
|
#
|
||||||
|
# @id: The Id of the TPM
|
||||||
|
#
|
||||||
|
# @model: The TPM frontend model
|
||||||
|
#
|
||||||
|
# @options: The TPM (backend) type configuration options
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
##
|
||||||
|
{ 'struct': 'TPMInfo',
|
||||||
|
'data': {'id': 'str',
|
||||||
|
'model': 'TpmModel',
|
||||||
|
'options': 'TpmTypeOptions' } }
|
||||||
|
|
||||||
|
##
|
||||||
|
# @query-tpm:
|
||||||
|
#
|
||||||
|
# Return information about the TPM device
|
||||||
|
#
|
||||||
|
# Returns: @TPMInfo on success
|
||||||
|
#
|
||||||
|
# Since: 1.5
|
||||||
|
#
|
||||||
|
# Example:
|
||||||
|
#
|
||||||
|
# -> { "execute": "query-tpm" }
|
||||||
|
# <- { "return":
|
||||||
|
# [
|
||||||
|
# { "model": "tpm-tis",
|
||||||
|
# "options":
|
||||||
|
# { "type": "passthrough",
|
||||||
|
# "data":
|
||||||
|
# { "cancel-path": "/sys/class/misc/tpm0/device/cancel",
|
||||||
|
# "path": "/dev/tpm0"
|
||||||
|
# }
|
||||||
|
# },
|
||||||
|
# "id": "tpm0"
|
||||||
|
# }
|
||||||
|
# ]
|
||||||
|
# }
|
||||||
|
#
|
||||||
|
##
|
||||||
|
{ 'command': 'query-tpm', 'returns': ['TPMInfo'] }
|
Loading…
Reference in New Issue
Block a user