Documentation/devicetree/bindings/tpm/microsoft,ftpm.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/tpm/microsoft,ftpm.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/tpm/microsoft,ftpm.yaml
Extension
.yaml
Size
1420 bytes
Lines
48
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/tpm/microsoft,ftpm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Microsoft firmware-based Trusted Platform Module (fTPM)

maintainers:
  - Thirupathaiah Annapureddy <thiruan@microsoft.com>
  - Sasha Levin <sashal@kernel.org>

description: |
  Commodity CPU architectures, such as ARM and Intel CPUs, have started to
  offer trusted computing features in their CPUs aimed at displacing dedicated
  trusted hardware.  Unfortunately, these CPU architectures raise serious
  challenges to building trusted systems because they omit providing secure
  resources outside the CPU perimeter.

  Microsoft's firmware-based TPM 2.0 (fTPM) leverages ARM TrustZone to overcome
  these challenges and provide software with security guarantees similar to
  those of dedicated trusted hardware.

  https://www.microsoft.com/en-us/research/publication/ftpm-software-implementation-tpm-chip/
  https://github.com/Microsoft/ms-tpm-20-ref/tree/main/Samples/ARM32-FirmwareTPM

properties:
  compatible:
    const: microsoft,ftpm

required:
  - compatible
  - linux,sml-base
  - linux,sml-size

allOf:
  - $ref: tpm-common.yaml#

unevaluatedProperties: false

examples:
  - |
    tpm {
        compatible = "microsoft,ftpm";
        linux,sml-base = <0x0 0xc0000000>;
        linux,sml-size = <0x10000>;
    };

Annotation

Implementation Notes