Mention branches and keyring.
[releases.git] / bindings / tpm / ibm,vtpm.yaml
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 <nayna@linux.ibm.com>
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     };