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