Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

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
18b3670d79ae ("tpm: ibmvtpm: Add support for TPM2").

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Reviewed-by: Rob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/5c41e045dfe7cc3f27dd41c08c62ed8c4a90d8a4.1702806810.git.lukas@wunner.de
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Lukas Wunner and committed by
Rob Herring
cd6366c0 d3b8b085

+104 -41
-41
Documentation/devicetree/bindings/security/tpm/ibmvtpm.txt
··· 1 - * Device Tree Bindings for IBM Virtual Trusted Platform Module(vtpm) 2 - 3 - Required properties: 4 - 5 - - compatible : property name that conveys the platform architecture 6 - identifiers, as 'IBM,vtpm' 7 - - device_type : specifies type of virtual device 8 - - interrupts : property specifying the interrupt source number and 9 - sense code associated with this virtual I/O Adapters 10 - - ibm,my-drc-index : integer index for the connector between the device 11 - and its parent - present only if Dynamic 12 - Reconfiguration(DR) Connector is enabled 13 - - ibm,#dma-address-cells: specifies the number of cells that are used to 14 - encode the physical address field of dma-window 15 - properties 16 - - ibm,#dma-size-cells : specifies the number of cells that are used to 17 - encode the size field of dma-window properties 18 - - ibm,my-dma-window : specifies DMA window associated with this virtual 19 - IOA 20 - - ibm,loc-code : specifies the unique and persistent location code 21 - associated with this virtual I/O Adapters 22 - - linux,sml-base : 64-bit base address of the reserved memory allocated 23 - for the firmware event log 24 - - linux,sml-size : size of the memory allocated for the firmware event log 25 - 26 - Example (IBM Virtual Trusted Platform Module) 27 - --------------------------------------------- 28 - 29 - vtpm@30000003 { 30 - ibm,#dma-size-cells = <0x2>; 31 - compatible = "IBM,vtpm"; 32 - device_type = "IBM,vtpm"; 33 - ibm,my-drc-index = <0x30000003>; 34 - ibm,#dma-address-cells = <0x2>; 35 - linux,sml-base = <0xc60e 0x0>; 36 - interrupts = <0xa0003 0x0>; 37 - ibm,my-dma-window = <0x10000003 0x0 0x0 0x0 0x10000000>; 38 - ibm,loc-code = "U8286.41A.10082DV-V3-C3"; 39 - reg = <0x30000003>; 40 - linux,sml-size = <0xbce10200>; 41 - };
+104
Documentation/devicetree/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 + };