On Tue, 21 Nov 2023 10:48:41 +0100, Lukas Wunner wrote:
> A significant number of Trusted Platform Modules conform to the "TIS"
> specification published by the Trusted Computing Group ("TCG PC Client
> Specific TPM Interface Specification").  These chips typically use an
> SPI, I²C or LPC bus as transport (via MMIO in the latter case).  Some
> of them even support multiple of those buses (selectable through a
> config strap) or the same chip is available in multiple SKUs, each with
> a different bus interface.
> 
> The devicetree bindings for these TPMs have not been converted to DT
> schema yet and are spread out across 3 generic files and 3 chip-specific
> files.  A few TPM compatible strings were added to trivial-devices.yaml
> even though additional properties are documented in the plaintext
> bindings.
> 
> Consolidate the devicetree bindings into 3 files, one per bus.
> 
> Move common properties to a separate tpm-common.yaml.
> 
> Document compatible strings which are supported by the TPM TIS driver
> but were neglected to be added to the devicetree bindings.
> 
> Document the memory-region property recently introduced by commit
> 1e2714bb83fc ("tpm: Add reserved memory event log").
> 
> Signed-off-by: Lukas Wunner <[email protected]>
> ---
>  .../bindings/security/tpm/google,cr50.txt     |  19 ----
>  .../bindings/security/tpm/st33zp24-i2c.txt    |  34 ------
>  .../bindings/security/tpm/st33zp24-spi.txt    |  32 ------
>  .../bindings/security/tpm/tpm-i2c.txt         |  26 -----
>  .../bindings/security/tpm/tpm_tis_mmio.txt    |  25 ----
>  .../bindings/security/tpm/tpm_tis_spi.txt     |  23 ----
>  .../bindings/tpm/tcg,tpm-tis-i2c.yaml         | 107 ++++++++++++++++++
>  .../bindings/tpm/tcg,tpm-tis-mmio.yaml        |  50 ++++++++
>  .../bindings/tpm/tcg,tpm_tis-spi.yaml         |  88 ++++++++++++++
>  .../devicetree/bindings/tpm/tpm-common.yaml   |  56 +++++++++
>  .../devicetree/bindings/trivial-devices.yaml  |  16 ---
>  11 files changed, 301 insertions(+), 175 deletions(-)
>  delete mode 100644 
> Documentation/devicetree/bindings/security/tpm/google,cr50.txt
>  delete mode 100644 
> Documentation/devicetree/bindings/security/tpm/st33zp24-i2c.txt
>  delete mode 100644 
> Documentation/devicetree/bindings/security/tpm/st33zp24-spi.txt
>  delete mode 100644 Documentation/devicetree/bindings/security/tpm/tpm-i2c.txt
>  delete mode 100644 
> Documentation/devicetree/bindings/security/tpm/tpm_tis_mmio.txt
>  delete mode 100644 
> Documentation/devicetree/bindings/security/tpm/tpm_tis_spi.txt
>  create mode 100644 Documentation/devicetree/bindings/tpm/tcg,tpm-tis-i2c.yaml
>  create mode 100644 
> Documentation/devicetree/bindings/tpm/tcg,tpm-tis-mmio.yaml
>  create mode 100644 Documentation/devicetree/bindings/tpm/tcg,tpm_tis-spi.yaml
>  create mode 100644 Documentation/devicetree/bindings/tpm/tpm-common.yaml
> 

My bot found errors running 'make DT_CHECKER_FLAGS=-m dt_binding_check'
on your patch (DT_CHECKER_FLAGS is new in v5.13):

yamllint warnings/errors:

dtschema/dtc warnings/errors:
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tpm-common.yaml:
 properties:oneOf: [{'memory-region': {'description': 'reserved memory 
allocated for firmware event log', 'maxItems': 1}}, {'allOf': 
[{'linux,sml-base': {'description': 'base address of reserved memory allocated 
for firmware event log', '$ref': 
'/schemas/types.yaml#/definitions/uint32-array', 'minItems': 2, 'maxItems': 
2}}, {'linux,sml-size': {'description': 'size of reserved memory allocated for 
firmware event log', '$ref': '/schemas/types.yaml#/definitions/uint32'}}]}] is 
not of type 'object', 'boolean'
        from schema $id: http://json-schema.org/draft-07/schema#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tpm-common.yaml:
 properties: 'oneOf' should not be valid under {'$ref': 
'#/definitions/json-schema-prop-names'}
        hint: A json-schema keyword was found instead of a DT property name.
        from schema $id: http://devicetree.org/meta-schemas/keywords.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tpm-common.yaml:
 properties:oneOf: [{'memory-region': {'description': 'reserved memory 
allocated for firmware event log', 'maxItems': 1}}, {'allOf': 
[{'linux,sml-base': {'description': 'base address of reserved memory allocated 
for firmware event log', '$ref': 
'/schemas/types.yaml#/definitions/uint32-array', 'minItems': 2, 'maxItems': 
2}}, {'linux,sml-size': {'description': 'size of reserved memory allocated for 
firmware event log', '$ref': '/schemas/types.yaml#/definitions/uint32'}}]}] is 
not of type 'object', 'boolean'
        from schema $id: http://devicetree.org/meta-schemas/keywords.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tpm-common.yaml:
 powered-while-suspended: missing type definition
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tcg,tpm_tis-spi.example.dtb:
 tpm@0: compatible:1: 'tcg,tpm-tis-i2c' was expected
        from schema $id: http://devicetree.org/schemas/tpm/tcg,tpm-tis-i2c.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tcg,tpm_tis-spi.example.dtb:
 tpm@0: Unevaluated properties are not allowed ('compatible', 
'spi-max-frequency' were unexpected)
        from schema $id: http://devicetree.org/schemas/tpm/tcg,tpm-tis-i2c.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tcg,tpm_tis-spi.example.dtb:
 tpm@0: Unevaluated properties are not allowed ('lpcpd-gpios' was unexpected)
        from schema $id: http://devicetree.org/schemas/tpm/tcg,tpm_tis-spi.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tcg,tpm-tis-i2c.example.dtb:
 tpm@57: Unevaluated properties are not allowed ('linux,sml-base', 
'linux,sml-size' were unexpected)
        from schema $id: http://devicetree.org/schemas/tpm/tcg,tpm-tis-i2c.yaml#
/builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/tpm/tcg,tpm-tis-i2c.example.dtb:
 tpm@13: Unevaluated properties are not allowed ('lpcpd-gpios' was unexpected)
        from schema $id: http://devicetree.org/schemas/tpm/tcg,tpm-tis-i2c.yaml#

doc reference errors (make refcheckdocs):

See 
https://patchwork.ozlabs.org/project/devicetree-bindings/patch/e83a43a67c96b4f2614f029666209cb408da8678.1700555862.git.lu...@wunner.de

The base for the series is generally the latest rc1. A different dependency
should be noted in *this* patch.

If you already ran 'make dt_binding_check' and didn't see the above
error(s), then make sure 'yamllint' is installed and dt-schema is up to
date:

pip3 install dtschema --upgrade

Please check and re-submit after running the above command yourself. Note
that DT_SCHEMA_FILES can be set to your schema file to speed up checking
your schema. However, it must be unset to test all examples with your schema.


Reply via email to