Documentation / devicetree / bindings / tpm / tpm-common.yaml


Based on kernel version 6.8. Page generated on 2024-03-11 21:26 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/tpm/tpm-common.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Trusted Platform Module common properties

maintainers:
  - Lukas Wunner <lukas@wunner.de>

properties:
  $nodename:
    pattern: '^tpm(@[0-9a-f]+)?$'

  interrupts:
    description: indicates command completion
    maxItems: 1

  label:
    description: human readable string describing the device, e.g. "tpm"

  linux,sml-base:
    description:
      base address of reserved memory allocated for firmware event log
    $ref: /schemas/types.yaml#/definitions/uint64

  linux,sml-size:
    description:
      size of reserved memory allocated for firmware event log
    $ref: /schemas/types.yaml#/definitions/uint32

  memory-region:
    description: reserved memory allocated for firmware event log
    maxItems: 1

  powered-while-suspended:
    description:
      present when the TPM is left powered on between suspend and resume
      (makes the suspend/resume callbacks do nothing)
    type: boolean

  resets:
    description: Reset controller to reset the TPM
    maxItems: 1

  reset-gpios:
    description: Output GPIO pin to reset the TPM
    maxItems: 1
 
# must always have both linux,sml-base and linux,sml-size
dependentRequired:
  linux,sml-base: ['linux,sml-size']
  linux,sml-size: ['linux,sml-base']
 
# must only have either memory-region or linux,sml-base
# as well as either resets or reset-gpios
dependentSchemas:
  memory-region:
    properties:
      linux,sml-base: false
  linux,sml-base:
    properties:
      memory-region: false
  resets:
    properties:
      reset-gpios: false
  reset-gpios:
    properties:
      resets: false

allOf:
  - if:
      properties:
        compatible:
          contains:
            pattern: '^st,st33zp24'
    then:
      properties:
        lpcpd-gpios:
          description:
            Output GPIO pin used for ST33ZP24 power management of D1/D2 state.
            If set, power must be present when the platform is going into
            sleep/hibernate mode.
          maxItems: 1

additionalProperties: true