|
|
Subscribe / Log in / New account

Add support for the TPM FF-A start method

From:  Stuart Yoder <stuart.yoder-AT-arm.com>
To:  linux-integrity-AT-vger.kernel.org, jarkko-AT-kernel.org, peterhuewe-AT-gmx.de, jgg-AT-ziepe.ca, sudeep.holla-AT-arm.com, rafael-AT-kernel.org, lenb-AT-kernel.org
Subject:  [PATCH 0/4] Add support for the TPM FF-A start method
Date:  Mon, 10 Feb 2025 17:22:23 -0600
Message-ID:  <20250210232227.97761-1-stuart.yoder@arm.com>
Cc:  linux-acpi-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org
Archive-link:  Article

These patches add support for the CRB FF-A start method defined
in the TCG ACPI specification v1.4 and the FF-A ABI defined
in the Arm TPM Service CRB over FF-A (DEN0138) specification. 
(https://developer.arm.com/documentation/den0138/latest/)

FF-A is a messaging framework for Arm-based systems and in the
context of the TPM driver is used to signal 'start' to a CRB-based
TPM service which is hosted in an FF-A secure partition running in
TrustZone.

The first patch adds an FF-A driver to handle the FF-A messaging when
communicating with a CRB-based TPM secure partition built on FF-A.
The driver is probed when the TPM secure partition is discovered by
the Linux FF-A infrastructure.

The second patch consolidates the check for idle support in the CRB
driver to one place.

The third patch defines the new ACPI start method enumeration for
CRB over FF-A.

The fourth patch adds support for the FF-A ACPI start method to
the TPM crb driver.

Stuart Yoder (4):
  tpm_crb: implement driver compliant to CRB over FF-A
  tpm_crb: refactor check for idle support into TPM into inline function
  ACPICA: add start method for Arm FF-A
  tpm_crb: add support for the Arm FF-A start method

 drivers/char/tpm/Kconfig   |   9 ++
 drivers/char/tpm/Makefile  |   1 +
 drivers/char/tpm/ffa_crb.c | 310 +++++++++++++++++++++++++++++++++++++
 drivers/char/tpm/ffa_crb.h |  30 ++++
 drivers/char/tpm/tpm_crb.c |  81 +++++++++-
 include/acpi/actbl3.h      |   1 +
 6 files changed, 426 insertions(+), 6 deletions(-)
 create mode 100644 drivers/char/tpm/ffa_crb.c
 create mode 100644 drivers/char/tpm/ffa_crb.h

-- 
2.34.1




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds