blob: fdb81968f03d6684cd24cb2b75a9bb6ab704c03d [file] [log] [blame]
Tom Rini93743d22024-04-01 09:08:13 -04001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/tpm/microsoft,ftpm.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Microsoft firmware-based Trusted Platform Module (fTPM)
8
9maintainers:
10 - Thirupathaiah Annapureddy <thiruan@microsoft.com>
11 - Sasha Levin <sashal@kernel.org>
12
13description: |
14 Commodity CPU architectures, such as ARM and Intel CPUs, have started to
15 offer trusted computing features in their CPUs aimed at displacing dedicated
16 trusted hardware. Unfortunately, these CPU architectures raise serious
17 challenges to building trusted systems because they omit providing secure
18 resources outside the CPU perimeter.
19
20 Microsoft's firmware-based TPM 2.0 (fTPM) leverages ARM TrustZone to overcome
21 these challenges and provide software with security guarantees similar to
22 those of dedicated trusted hardware.
23
24 https://www.microsoft.com/en-us/research/publication/ftpm-software-implementation-tpm-chip/
25 https://github.com/Microsoft/ms-tpm-20-ref/tree/main/Samples/ARM32-FirmwareTPM
26
27properties:
28 compatible:
29 const: microsoft,ftpm
30
31required:
32 - compatible
33 - linux,sml-base
34 - linux,sml-size
35
36allOf:
37 - $ref: tpm-common.yaml#
38
39unevaluatedProperties: false
40
41examples:
42 - |
43 tpm {
44 compatible = "microsoft,ftpm";
45 linux,sml-base = <0x0 0xc0000000>;
46 linux,sml-size = <0x10000>;
47 };