Skip to content

Commit cd6366c

Browse files
l1krobherring
authored andcommitted
dt-bindings: tpm: Convert IBM vTPM bindings to DT schema
Convert the devicetree bindings for the IBM Virtual Trusted Platform Module to DT schema. Drop properties which are already documented in tpm-common.yaml. Document the "IBM,vtpm20" compatible string introduced by commit 18b3670 ("tpm: ibmvtpm: Add support for TPM2"). Signed-off-by: Lukas Wunner <[email protected]> Reviewed-by: Rob Herring <[email protected]> Link: https://lore.kernel.org/r/5c41e045dfe7cc3f27dd41c08c62ed8c4a90d8a4.1702806810.git.lukas@wunner.de Signed-off-by: Rob Herring <[email protected]>
1 parent d3b8b08 commit cd6366c

File tree

2 files changed

+104
-41
lines changed

2 files changed

+104
-41
lines changed

Documentation/devicetree/bindings/security/tpm/ibmvtpm.txt

Lines changed: 0 additions & 41 deletions
This file was deleted.
Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/tpm/ibm,vtpm.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: IBM Virtual Trusted Platform Module (vTPM)
8+
9+
maintainers:
10+
- Nayna Jain <[email protected]>
11+
12+
description: |
13+
Virtual TPM is used on IBM POWER7+ and POWER8 systems running POWERVM.
14+
It is supported through the adjunct partition with firmware release 740
15+
or higher. With vTPM support, each lpar is able to have its own vTPM
16+
without the physical TPM hardware. The TPM functionality is provided by
17+
communicating with the vTPM adjunct partition through Hypervisor calls
18+
(Hcalls) and Command/Response Queue (CRQ) commands.
19+
20+
properties:
21+
compatible:
22+
enum:
23+
- IBM,vtpm
24+
- IBM,vtpm20
25+
26+
device_type:
27+
description:
28+
type of virtual device
29+
enum:
30+
- IBM,vtpm
31+
- IBM,vtpm20
32+
33+
reg:
34+
maxItems: 1
35+
36+
'ibm,#dma-address-cells':
37+
description:
38+
number of cells that are used to encode the physical address field of
39+
dma-window properties
40+
$ref: /schemas/types.yaml#/definitions/uint32-array
41+
42+
'ibm,#dma-size-cells':
43+
description:
44+
number of cells that are used to encode the size field of
45+
dma-window properties
46+
$ref: /schemas/types.yaml#/definitions/uint32-array
47+
48+
ibm,my-dma-window:
49+
description:
50+
DMA window associated with this virtual I/O Adapter
51+
$ref: /schemas/types.yaml#/definitions/uint32-array
52+
minItems: 5
53+
maxItems: 5
54+
55+
ibm,my-drc-index:
56+
description:
57+
integer index for the connector between the device and its parent;
58+
present only if Dynamic Reconfiguration (DR) Connector is enabled
59+
$ref: /schemas/types.yaml#/definitions/uint32
60+
61+
ibm,loc-code:
62+
description:
63+
unique and persistent location code associated with this virtual
64+
I/O Adapter
65+
$ref: /schemas/types.yaml#/definitions/string
66+
67+
required:
68+
- compatible
69+
- device_type
70+
- reg
71+
- interrupts
72+
- ibm,#dma-address-cells
73+
- ibm,#dma-size-cells
74+
- ibm,my-dma-window
75+
- ibm,my-drc-index
76+
- ibm,loc-code
77+
- linux,sml-base
78+
- linux,sml-size
79+
80+
allOf:
81+
- $ref: tpm-common.yaml#
82+
83+
unevaluatedProperties: false
84+
85+
examples:
86+
- |
87+
soc {
88+
#address-cells = <1>;
89+
#size-cells = <0>;
90+
91+
tpm@30000003 {
92+
compatible = "IBM,vtpm";
93+
device_type = "IBM,vtpm";
94+
reg = <0x30000003>;
95+
interrupts = <0xa0003 0x0>;
96+
ibm,#dma-address-cells = <0x2>;
97+
ibm,#dma-size-cells = <0x2>;
98+
ibm,my-dma-window = <0x10000003 0x0 0x0 0x0 0x10000000>;
99+
ibm,my-drc-index = <0x30000003>;
100+
ibm,loc-code = "U8286.41A.10082DV-V3-C3";
101+
linux,sml-base = <0xc60e 0x0>;
102+
linux,sml-size = <0xbce10200>;
103+
};
104+
};

0 commit comments

Comments
 (0)