mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-04-02 12:23:49 +00:00
ACPICA: Add header support for TPM2 table changes
ACPICA commit b922ecaf9053dae3b8933664e951ed1ee8f86f07 Update to new version of the TCG/ACPI spec. Does not include table compiler or disassembler support. Link: https://github.com/acpica/acpica/commit/b922ecaf Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
a86c856eb4
commit
bff7f90bbe
2 changed files with 36 additions and 5 deletions
|
@ -564,12 +564,12 @@ static int crb_acpi_add(struct acpi_device *device)
|
||||||
sm == ACPI_TPM2_COMMAND_BUFFER_WITH_START_METHOD)
|
sm == ACPI_TPM2_COMMAND_BUFFER_WITH_START_METHOD)
|
||||||
priv->flags |= CRB_FL_ACPI_START;
|
priv->flags |= CRB_FL_ACPI_START;
|
||||||
|
|
||||||
if (sm == ACPI_TPM2_COMMAND_BUFFER_WITH_SMC) {
|
if (sm == ACPI_TPM2_COMMAND_BUFFER_WITH_ARM_SMC) {
|
||||||
if (buf->header.length < (sizeof(*buf) + sizeof(*crb_smc))) {
|
if (buf->header.length < (sizeof(*buf) + sizeof(*crb_smc))) {
|
||||||
dev_err(dev,
|
dev_err(dev,
|
||||||
FW_BUG "TPM2 ACPI table has wrong size %u for start method type %d\n",
|
FW_BUG "TPM2 ACPI table has wrong size %u for start method type %d\n",
|
||||||
buf->header.length,
|
buf->header.length,
|
||||||
ACPI_TPM2_COMMAND_BUFFER_WITH_SMC);
|
ACPI_TPM2_COMMAND_BUFFER_WITH_ARM_SMC);
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
crb_smc = ACPI_ADD_PTR(struct tpm2_crb_smc, buf, sizeof(*buf));
|
crb_smc = ACPI_ADD_PTR(struct tpm2_crb_smc, buf, sizeof(*buf));
|
||||||
|
|
|
@ -1221,7 +1221,8 @@ enum acpi_spmi_interface_types {
|
||||||
* Version 2
|
* Version 2
|
||||||
*
|
*
|
||||||
* Conforms to "TCG ACPI Specification, Family 1.2 and 2.0",
|
* Conforms to "TCG ACPI Specification, Family 1.2 and 2.0",
|
||||||
* December 19, 2014
|
* Version 1.2, Revision 8
|
||||||
|
* February 27, 2017
|
||||||
*
|
*
|
||||||
* NOTE: There are two versions of the table with the same signature --
|
* NOTE: There are two versions of the table with the same signature --
|
||||||
* the client version and the server version. The common platform_class
|
* the client version and the server version. The common platform_class
|
||||||
|
@ -1284,7 +1285,8 @@ struct acpi_table_tcpa_server {
|
||||||
* Version 4
|
* Version 4
|
||||||
*
|
*
|
||||||
* Conforms to "TCG ACPI Specification, Family 1.2 and 2.0",
|
* Conforms to "TCG ACPI Specification, Family 1.2 and 2.0",
|
||||||
* December 19, 2014
|
* Version 1.2, Revision 8
|
||||||
|
* February 27, 2017
|
||||||
*
|
*
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
|
@ -1305,7 +1307,36 @@ struct acpi_table_tpm2 {
|
||||||
#define ACPI_TPM2_MEMORY_MAPPED 6
|
#define ACPI_TPM2_MEMORY_MAPPED 6
|
||||||
#define ACPI_TPM2_COMMAND_BUFFER 7
|
#define ACPI_TPM2_COMMAND_BUFFER 7
|
||||||
#define ACPI_TPM2_COMMAND_BUFFER_WITH_START_METHOD 8
|
#define ACPI_TPM2_COMMAND_BUFFER_WITH_START_METHOD 8
|
||||||
#define ACPI_TPM2_COMMAND_BUFFER_WITH_SMC 11
|
#define ACPI_TPM2_COMMAND_BUFFER_WITH_ARM_SMC 11 /* V1.2 Rev 8 */
|
||||||
|
|
||||||
|
/* Trailer appears after any start_method subtables */
|
||||||
|
|
||||||
|
struct acpi_tpm2_trailer {
|
||||||
|
u32 minimum_log_length; /* Minimum length for the event log area */
|
||||||
|
u64 log_address; /* Address of the event log area */
|
||||||
|
};
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Subtables (start_method-specific)
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* 11: Start Method for ARM SMC (V1.2 Rev 8) */
|
||||||
|
|
||||||
|
struct acpi_tpm2_arm_smc {
|
||||||
|
u32 global_interrupt;
|
||||||
|
u8 interrupt_flags;
|
||||||
|
u8 operation_flags;
|
||||||
|
u16 reserved;
|
||||||
|
u32 function_id;
|
||||||
|
};
|
||||||
|
|
||||||
|
/* Values for interrupt_flags above */
|
||||||
|
|
||||||
|
#define ACPI_TPM2_INTERRUPT_SUPPORT (1)
|
||||||
|
|
||||||
|
/* Values for operation_flags above */
|
||||||
|
|
||||||
|
#define ACPI_TPM2_IDLE_SUPPORT (1)
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
*
|
*
|
||||||
|
|
Loading…
Add table
Reference in a new issue